blob: 61e8867afe1aef940d02445d8959ed0a5c76d8bb [file] [log] [blame]
#![allow(non_snake_case, non_camel_case_types, non_upper_case_globals, clashing_extern_declarations, clippy::all)]
#[cfg(feature = "Storage_AccessCache")]
pub mod AccessCache;
#[cfg(feature = "Storage_BulkAccess")]
pub mod BulkAccess;
#[cfg(feature = "Storage_Compression")]
pub mod Compression;
#[cfg(feature = "Storage_FileProperties")]
pub mod FileProperties;
#[cfg(feature = "Storage_Pickers")]
pub mod Pickers;
#[cfg(feature = "Storage_Provider")]
pub mod Provider;
#[cfg(feature = "Storage_Search")]
pub mod Search;
#[cfg(feature = "Storage_Streams")]
pub mod Streams;
#[link(name = "windows")]
extern "system" {}
pub type AppDataPaths = *mut ::core::ffi::c_void;
pub type ApplicationData = *mut ::core::ffi::c_void;
pub type ApplicationDataCompositeValue = *mut ::core::ffi::c_void;
pub type ApplicationDataContainer = *mut ::core::ffi::c_void;
pub type ApplicationDataContainerSettings = *mut ::core::ffi::c_void;
#[repr(transparent)]
pub struct ApplicationDataCreateDisposition(pub i32);
impl ApplicationDataCreateDisposition {
pub const Always: Self = Self(0i32);
pub const Existing: Self = Self(1i32);
}
impl ::core::marker::Copy for ApplicationDataCreateDisposition {}
impl ::core::clone::Clone for ApplicationDataCreateDisposition {
fn clone(&self) -> Self {
*self
}
}
#[repr(transparent)]
pub struct ApplicationDataLocality(pub i32);
impl ApplicationDataLocality {
pub const Local: Self = Self(0i32);
pub const Roaming: Self = Self(1i32);
pub const Temporary: Self = Self(2i32);
pub const LocalCache: Self = Self(3i32);
pub const SharedLocal: Self = Self(4i32);
}
impl ::core::marker::Copy for ApplicationDataLocality {}
impl ::core::clone::Clone for ApplicationDataLocality {
fn clone(&self) -> Self {
*self
}
}
pub type ApplicationDataSetVersionHandler = *mut ::core::ffi::c_void;
#[repr(transparent)]
pub struct CreationCollisionOption(pub i32);
impl CreationCollisionOption {
pub const GenerateUniqueName: Self = Self(0i32);
pub const ReplaceExisting: Self = Self(1i32);
pub const FailIfExists: Self = Self(2i32);
pub const OpenIfExists: Self = Self(3i32);
}
impl ::core::marker::Copy for CreationCollisionOption {}
impl ::core::clone::Clone for CreationCollisionOption {
fn clone(&self) -> Self {
*self
}
}
#[repr(transparent)]
pub struct FileAccessMode(pub i32);
impl FileAccessMode {
pub const Read: Self = Self(0i32);
pub const ReadWrite: Self = Self(1i32);
}
impl ::core::marker::Copy for FileAccessMode {}
impl ::core::clone::Clone for FileAccessMode {
fn clone(&self) -> Self {
*self
}
}
#[repr(transparent)]
pub struct FileAttributes(pub u32);
impl FileAttributes {
pub const Normal: Self = Self(0u32);
pub const ReadOnly: Self = Self(1u32);
pub const Directory: Self = Self(16u32);
pub const Archive: Self = Self(32u32);
pub const Temporary: Self = Self(256u32);
pub const LocallyIncomplete: Self = Self(512u32);
}
impl ::core::marker::Copy for FileAttributes {}
impl ::core::clone::Clone for FileAttributes {
fn clone(&self) -> Self {
*self
}
}
pub type IStorageFile = *mut ::core::ffi::c_void;
pub type IStorageFile2 = *mut ::core::ffi::c_void;
pub type IStorageFilePropertiesWithAvailability = *mut ::core::ffi::c_void;
pub type IStorageFolder = *mut ::core::ffi::c_void;
pub type IStorageFolder2 = *mut ::core::ffi::c_void;
pub type IStorageItem = *mut ::core::ffi::c_void;
pub type IStorageItem2 = *mut ::core::ffi::c_void;
pub type IStorageItemProperties = *mut ::core::ffi::c_void;
pub type IStorageItemProperties2 = *mut ::core::ffi::c_void;
pub type IStorageItemPropertiesWithProvider = *mut ::core::ffi::c_void;
pub type IStreamedFileDataRequest = *mut ::core::ffi::c_void;
#[repr(transparent)]
pub struct KnownFolderId(pub i32);
impl KnownFolderId {
pub const AppCaptures: Self = Self(0i32);
pub const CameraRoll: Self = Self(1i32);
pub const DocumentsLibrary: Self = Self(2i32);
pub const HomeGroup: Self = Self(3i32);
pub const MediaServerDevices: Self = Self(4i32);
pub const MusicLibrary: Self = Self(5i32);
pub const Objects3D: Self = Self(6i32);
pub const PicturesLibrary: Self = Self(7i32);
pub const Playlists: Self = Self(8i32);
pub const RecordedCalls: Self = Self(9i32);
pub const RemovableDevices: Self = Self(10i32);
pub const SavedPictures: Self = Self(11i32);
pub const Screenshots: Self = Self(12i32);
pub const VideosLibrary: Self = Self(13i32);
pub const AllAppMods: Self = Self(14i32);
pub const CurrentAppMods: Self = Self(15i32);
pub const DownloadsFolder: Self = Self(16i32);
}
impl ::core::marker::Copy for KnownFolderId {}
impl ::core::clone::Clone for KnownFolderId {
fn clone(&self) -> Self {
*self
}
}
#[repr(transparent)]
pub struct KnownFoldersAccessStatus(pub i32);
impl KnownFoldersAccessStatus {
pub const DeniedBySystem: Self = Self(0i32);
pub const NotDeclaredByApp: Self = Self(1i32);
pub const DeniedByUser: Self = Self(2i32);
pub const UserPromptRequired: Self = Self(3i32);
pub const Allowed: Self = Self(4i32);
pub const AllowedPerAppFolder: Self = Self(5i32);
}
impl ::core::marker::Copy for KnownFoldersAccessStatus {}
impl ::core::clone::Clone for KnownFoldersAccessStatus {
fn clone(&self) -> Self {
*self
}
}
#[repr(transparent)]
pub struct KnownLibraryId(pub i32);
impl KnownLibraryId {
pub const Music: Self = Self(0i32);
pub const Pictures: Self = Self(1i32);
pub const Videos: Self = Self(2i32);
pub const Documents: Self = Self(3i32);
}
impl ::core::marker::Copy for KnownLibraryId {}
impl ::core::clone::Clone for KnownLibraryId {
fn clone(&self) -> Self {
*self
}
}
#[repr(transparent)]
pub struct NameCollisionOption(pub i32);
impl NameCollisionOption {
pub const GenerateUniqueName: Self = Self(0i32);
pub const ReplaceExisting: Self = Self(1i32);
pub const FailIfExists: Self = Self(2i32);
}
impl ::core::marker::Copy for NameCollisionOption {}
impl ::core::clone::Clone for NameCollisionOption {
fn clone(&self) -> Self {
*self
}
}
pub type SetVersionDeferral = *mut ::core::ffi::c_void;
pub type SetVersionRequest = *mut ::core::ffi::c_void;
#[repr(transparent)]
pub struct StorageDeleteOption(pub i32);
impl StorageDeleteOption {
pub const Default: Self = Self(0i32);
pub const PermanentDelete: Self = Self(1i32);
}
impl ::core::marker::Copy for StorageDeleteOption {}
impl ::core::clone::Clone for StorageDeleteOption {
fn clone(&self) -> Self {
*self
}
}
pub type StorageFile = *mut ::core::ffi::c_void;
pub type StorageFolder = *mut ::core::ffi::c_void;
#[repr(transparent)]
pub struct StorageItemTypes(pub u32);
impl StorageItemTypes {
pub const None: Self = Self(0u32);
pub const File: Self = Self(1u32);
pub const Folder: Self = Self(2u32);
}
impl ::core::marker::Copy for StorageItemTypes {}
impl ::core::clone::Clone for StorageItemTypes {
fn clone(&self) -> Self {
*self
}
}
pub type StorageLibrary = *mut ::core::ffi::c_void;
pub type StorageLibraryChange = *mut ::core::ffi::c_void;
pub type StorageLibraryChangeReader = *mut ::core::ffi::c_void;
pub type StorageLibraryChangeTracker = *mut ::core::ffi::c_void;
pub type StorageLibraryChangeTrackerOptions = *mut ::core::ffi::c_void;
#[repr(transparent)]
pub struct StorageLibraryChangeType(pub i32);
impl StorageLibraryChangeType {
pub const Created: Self = Self(0i32);
pub const Deleted: Self = Self(1i32);
pub const MovedOrRenamed: Self = Self(2i32);
pub const ContentsChanged: Self = Self(3i32);
pub const MovedOutOfLibrary: Self = Self(4i32);
pub const MovedIntoLibrary: Self = Self(5i32);
pub const ContentsReplaced: Self = Self(6i32);
pub const IndexingStatusChanged: Self = Self(7i32);
pub const EncryptionChanged: Self = Self(8i32);
pub const ChangeTrackingLost: Self = Self(9i32);
}
impl ::core::marker::Copy for StorageLibraryChangeType {}
impl ::core::clone::Clone for StorageLibraryChangeType {
fn clone(&self) -> Self {
*self
}
}
pub type StorageLibraryLastChangeId = *mut ::core::ffi::c_void;
#[repr(transparent)]
pub struct StorageOpenOptions(pub u32);
impl StorageOpenOptions {
pub const None: Self = Self(0u32);
pub const AllowOnlyReaders: Self = Self(1u32);
pub const AllowReadersAndWriters: Self = Self(2u32);
}
impl ::core::marker::Copy for StorageOpenOptions {}
impl ::core::clone::Clone for StorageOpenOptions {
fn clone(&self) -> Self {
*self
}
}
pub type StorageProvider = *mut ::core::ffi::c_void;
pub type StorageStreamTransaction = *mut ::core::ffi::c_void;
pub type StreamedFileDataRequest = *mut ::core::ffi::c_void;
pub type StreamedFileDataRequestedHandler = *mut ::core::ffi::c_void;
#[repr(transparent)]
pub struct StreamedFileFailureMode(pub i32);
impl StreamedFileFailureMode {
pub const Failed: Self = Self(0i32);
pub const CurrentlyUnavailable: Self = Self(1i32);
pub const Incomplete: Self = Self(2i32);
}
impl ::core::marker::Copy for StreamedFileFailureMode {}
impl ::core::clone::Clone for StreamedFileFailureMode {
fn clone(&self) -> Self {
*self
}
}
pub type SystemAudioProperties = *mut ::core::ffi::c_void;
pub type SystemDataPaths = *mut ::core::ffi::c_void;
pub type SystemGPSProperties = *mut ::core::ffi::c_void;
pub type SystemImageProperties = *mut ::core::ffi::c_void;
pub type SystemMediaProperties = *mut ::core::ffi::c_void;
pub type SystemMusicProperties = *mut ::core::ffi::c_void;
pub type SystemPhotoProperties = *mut ::core::ffi::c_void;
pub type SystemVideoProperties = *mut ::core::ffi::c_void;
pub type UserDataPaths = *mut ::core::ffi::c_void;