# WARNING: Please don't edit this file. It was generated by Python/WinRT v1.0.0-beta.10

import enum

import winsdk.system

_ns_module = winsdk.system._import_ns_module("Windows.Storage")

try:
    import winsdk.windows.foundation
except ImportError:
    pass

try:
    import winsdk.windows.foundation.collections
except ImportError:
    pass

try:
    import winsdk.windows.storage.fileproperties
except ImportError:
    pass

try:
    import winsdk.windows.storage.provider
except ImportError:
    pass

try:
    import winsdk.windows.storage.search
except ImportError:
    pass

try:
    import winsdk.windows.storage.streams
except ImportError:
    pass

try:
    import winsdk.windows.system
except ImportError:
    pass

class ApplicationDataCreateDisposition(enum.IntEnum):
    ALWAYS = 0
    EXISTING = 1

class ApplicationDataLocality(enum.IntEnum):
    LOCAL = 0
    ROAMING = 1
    TEMPORARY = 2
    LOCAL_CACHE = 3
    SHARED_LOCAL = 4

class CreationCollisionOption(enum.IntEnum):
    GENERATE_UNIQUE_NAME = 0
    REPLACE_EXISTING = 1
    FAIL_IF_EXISTS = 2
    OPEN_IF_EXISTS = 3

class FileAccessMode(enum.IntEnum):
    READ = 0
    READ_WRITE = 1

class FileAttributes(enum.IntFlag):
    NORMAL = 0
    READ_ONLY = 0x1
    DIRECTORY = 0x10
    ARCHIVE = 0x20
    TEMPORARY = 0x100
    LOCALLY_INCOMPLETE = 0x200

class KnownFolderId(enum.IntEnum):
    APP_CAPTURES = 0
    CAMERA_ROLL = 1
    DOCUMENTS_LIBRARY = 2
    HOME_GROUP = 3
    MEDIA_SERVER_DEVICES = 4
    MUSIC_LIBRARY = 5
    OBJECTS3_D = 6
    PICTURES_LIBRARY = 7
    PLAYLISTS = 8
    RECORDED_CALLS = 9
    REMOVABLE_DEVICES = 10
    SAVED_PICTURES = 11
    SCREENSHOTS = 12
    VIDEOS_LIBRARY = 13
    ALL_APP_MODS = 14
    CURRENT_APP_MODS = 15
    DOWNLOADS_FOLDER = 16

class KnownFoldersAccessStatus(enum.IntEnum):
    DENIED_BY_SYSTEM = 0
    NOT_DECLARED_BY_APP = 1
    DENIED_BY_USER = 2
    USER_PROMPT_REQUIRED = 3
    ALLOWED = 4
    ALLOWED_PER_APP_FOLDER = 5

class KnownLibraryId(enum.IntEnum):
    MUSIC = 0
    PICTURES = 1
    VIDEOS = 2
    DOCUMENTS = 3

class NameCollisionOption(enum.IntEnum):
    GENERATE_UNIQUE_NAME = 0
    REPLACE_EXISTING = 1
    FAIL_IF_EXISTS = 2

class StorageDeleteOption(enum.IntEnum):
    DEFAULT = 0
    PERMANENT_DELETE = 1

class StorageItemTypes(enum.IntFlag):
    NONE = 0
    FILE = 0x1
    FOLDER = 0x2

class StorageLibraryChangeType(enum.IntEnum):
    CREATED = 0
    DELETED = 1
    MOVED_OR_RENAMED = 2
    CONTENTS_CHANGED = 3
    MOVED_OUT_OF_LIBRARY = 4
    MOVED_INTO_LIBRARY = 5
    CONTENTS_REPLACED = 6
    INDEXING_STATUS_CHANGED = 7
    ENCRYPTION_CHANGED = 8
    CHANGE_TRACKING_LOST = 9

class StorageOpenOptions(enum.IntFlag):
    NONE = 0
    ALLOW_ONLY_READERS = 0x1
    ALLOW_READERS_AND_WRITERS = 0x2

class StreamedFileFailureMode(enum.IntEnum):
    FAILED = 0
    CURRENTLY_UNAVAILABLE = 1
    INCOMPLETE = 2

_ns_module._register_ApplicationDataCreateDisposition(ApplicationDataCreateDisposition)
_ns_module._register_ApplicationDataLocality(ApplicationDataLocality)
_ns_module._register_CreationCollisionOption(CreationCollisionOption)
_ns_module._register_FileAccessMode(FileAccessMode)
_ns_module._register_FileAttributes(FileAttributes)
_ns_module._register_KnownFolderId(KnownFolderId)
_ns_module._register_KnownFoldersAccessStatus(KnownFoldersAccessStatus)
_ns_module._register_KnownLibraryId(KnownLibraryId)
_ns_module._register_NameCollisionOption(NameCollisionOption)
_ns_module._register_StorageDeleteOption(StorageDeleteOption)
_ns_module._register_StorageItemTypes(StorageItemTypes)
_ns_module._register_StorageLibraryChangeType(StorageLibraryChangeType)
_ns_module._register_StorageOpenOptions(StorageOpenOptions)
_ns_module._register_StreamedFileFailureMode(StreamedFileFailureMode)

AppDataPaths = _ns_module.AppDataPaths
ApplicationData = _ns_module.ApplicationData
ApplicationDataCompositeValue = _ns_module.ApplicationDataCompositeValue
winsdk.system._mixin_mutable_mapping(ApplicationDataCompositeValue)
ApplicationDataContainer = _ns_module.ApplicationDataContainer
ApplicationDataContainerSettings = _ns_module.ApplicationDataContainerSettings
winsdk.system._mixin_mutable_mapping(ApplicationDataContainerSettings)
CachedFileManager = _ns_module.CachedFileManager
DownloadsFolder = _ns_module.DownloadsFolder
FileIO = _ns_module.FileIO
KnownFolders = _ns_module.KnownFolders
PathIO = _ns_module.PathIO
SetVersionDeferral = _ns_module.SetVersionDeferral
SetVersionRequest = _ns_module.SetVersionRequest
StorageFile = _ns_module.StorageFile
StorageFolder = _ns_module.StorageFolder
StorageLibrary = _ns_module.StorageLibrary
StorageLibraryChange = _ns_module.StorageLibraryChange
StorageLibraryChangeReader = _ns_module.StorageLibraryChangeReader
StorageLibraryChangeTracker = _ns_module.StorageLibraryChangeTracker
StorageLibraryChangeTrackerOptions = _ns_module.StorageLibraryChangeTrackerOptions
StorageLibraryLastChangeId = _ns_module.StorageLibraryLastChangeId
StorageProvider = _ns_module.StorageProvider
StorageStreamTransaction = _ns_module.StorageStreamTransaction
StreamedFileDataRequest = _ns_module.StreamedFileDataRequest
SystemAudioProperties = _ns_module.SystemAudioProperties
SystemDataPaths = _ns_module.SystemDataPaths
SystemGPSProperties = _ns_module.SystemGPSProperties
SystemImageProperties = _ns_module.SystemImageProperties
SystemMediaProperties = _ns_module.SystemMediaProperties
SystemMusicProperties = _ns_module.SystemMusicProperties
SystemPhotoProperties = _ns_module.SystemPhotoProperties
SystemProperties = _ns_module.SystemProperties
SystemVideoProperties = _ns_module.SystemVideoProperties
UserDataPaths = _ns_module.UserDataPaths
IStorageFile = _ns_module.IStorageFile
IStorageFile2 = _ns_module.IStorageFile2
IStorageFilePropertiesWithAvailability = _ns_module.IStorageFilePropertiesWithAvailability
IStorageFolder = _ns_module.IStorageFolder
IStorageFolder2 = _ns_module.IStorageFolder2
IStorageItem = _ns_module.IStorageItem
IStorageItem2 = _ns_module.IStorageItem2
IStorageItemProperties = _ns_module.IStorageItemProperties
IStorageItemProperties2 = _ns_module.IStorageItemProperties2
IStorageItemPropertiesWithProvider = _ns_module.IStorageItemPropertiesWithProvider
IStreamedFileDataRequest = _ns_module.IStreamedFileDataRequest
