# WARNING: Please don't edit this file. It was generated by Python/WinRT v3.0.0

import datetime
import sys
import types
import typing
import uuid as _uuid
from builtins import property as _property
from abc import abstractmethod

import winrt._winrt
import winrt.system
import winrt.windows.foundation as windows_foundation
import winrt.windows.foundation.collections as windows_foundation_collections
import winrt.windows.storage.fileproperties as windows_storage_fileproperties
import winrt.windows.storage.provider as windows_storage_provider
import winrt.windows.storage.search as windows_storage_search
import winrt.windows.storage.streams as windows_storage_streams
import winrt.windows.system as windows_system

from winrt.windows.storage import ApplicationDataCreateDisposition, ApplicationDataLocality, CreationCollisionOption, FileAccessMode, FileAttributes, KnownFolderId, KnownFoldersAccessStatus, KnownLibraryId, NameCollisionOption, StorageDeleteOption, StorageItemTypes, StorageLibraryChangeType, StorageOpenOptions, StreamedFileFailureMode
from winrt.windows.storage import ApplicationDataSetVersionHandler, StreamedFileDataRequestedHandler

Self = typing.TypeVar('Self')

@typing.final
class AppDataPaths_Static(winrt._winrt.IInspectable_Static):
    # Windows.Storage.AppDataPaths Windows.Storage.AppDataPaths::GetDefault()
    def get_default(cls) -> AppDataPaths: ...
    # Windows.Storage.AppDataPaths Windows.Storage.AppDataPaths::GetForUser(Windows.System.User)
    def get_for_user(cls, user: windows_system.User, /) -> AppDataPaths: ...

@typing.final
class AppDataPaths(winrt.system.Object, metaclass=AppDataPaths_Static):
    # System.String Windows.Storage.AppDataPaths::get_Cookies()
    @_property
    def cookies(self) -> str: ...
    # System.String Windows.Storage.AppDataPaths::get_Desktop()
    @_property
    def desktop(self) -> str: ...
    # System.String Windows.Storage.AppDataPaths::get_Documents()
    @_property
    def documents(self) -> str: ...
    # System.String Windows.Storage.AppDataPaths::get_Favorites()
    @_property
    def favorites(self) -> str: ...
    # System.String Windows.Storage.AppDataPaths::get_History()
    @_property
    def history(self) -> str: ...
    # System.String Windows.Storage.AppDataPaths::get_InternetCache()
    @_property
    def internet_cache(self) -> str: ...
    # System.String Windows.Storage.AppDataPaths::get_LocalAppData()
    @_property
    def local_app_data(self) -> str: ...
    # System.String Windows.Storage.AppDataPaths::get_ProgramData()
    @_property
    def program_data(self) -> str: ...
    # System.String Windows.Storage.AppDataPaths::get_RoamingAppData()
    @_property
    def roaming_app_data(self) -> str: ...

@typing.final
class ApplicationData_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.ApplicationData> Windows.Storage.ApplicationData::GetForUserAsync(Windows.System.User)
    def get_for_user_async(cls, user: windows_system.User, /) -> windows_foundation.IAsyncOperation[ApplicationData]: ...
    # Windows.Storage.ApplicationData Windows.Storage.ApplicationData::get_Current()
    @_property
    def current(cls) -> ApplicationData: ...

@typing.final
class ApplicationData(winrt.system.Object, windows_foundation.IClosable, metaclass=ApplicationData_Static):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.ApplicationData::ClearAsync()
    def clear_all_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.ApplicationData::ClearAsync(Windows.Storage.ApplicationDataLocality)
    def clear_async(self, locality: ApplicationDataLocality, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.ApplicationData::ClearPublisherCacheFolderAsync(System.String)
    def clear_publisher_cache_folder_async(self, folder_name: str, /) -> windows_foundation.IAsyncAction: ...
    # System.Void Windows.Storage.ApplicationData::Close()
    def close(self) -> None: ...
    # Windows.Storage.StorageFolder Windows.Storage.ApplicationData::GetPublisherCacheFolder(System.String)
    def get_publisher_cache_folder(self, folder_name: str, /) -> StorageFolder: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.ApplicationData::SetVersionAsync(System.UInt32,Windows.Storage.ApplicationDataSetVersionHandler)
    def set_version_async(self, desired_version: winrt.system.UInt32, handler: ApplicationDataSetVersionHandler, /) -> windows_foundation.IAsyncAction: ...
    # System.Void Windows.Storage.ApplicationData::SignalDataChanged()
    def signal_data_changed(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Storage.ApplicationData::add_DataChanged(Windows.Foundation.TypedEventHandler`2<Windows.Storage.ApplicationData,System.Object>)
    def add_data_changed(self, handler: windows_foundation.TypedEventHandler[ApplicationData, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Storage.ApplicationData::remove_DataChanged(Windows.Foundation.EventRegistrationToken)
    def remove_data_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Storage.StorageFolder Windows.Storage.ApplicationData::get_LocalFolder()
    @_property
    def local_folder(self) -> StorageFolder: ...
    # Windows.Storage.ApplicationDataContainer Windows.Storage.ApplicationData::get_LocalSettings()
    @_property
    def local_settings(self) -> ApplicationDataContainer: ...
    # Windows.Storage.StorageFolder Windows.Storage.ApplicationData::get_RoamingFolder()
    @_property
    def roaming_folder(self) -> StorageFolder: ...
    # Windows.Storage.ApplicationDataContainer Windows.Storage.ApplicationData::get_RoamingSettings()
    @_property
    def roaming_settings(self) -> ApplicationDataContainer: ...
    # System.UInt64 Windows.Storage.ApplicationData::get_RoamingStorageQuota()
    @_property
    def roaming_storage_quota(self) -> winrt.system.UInt64: ...
    # Windows.Storage.StorageFolder Windows.Storage.ApplicationData::get_TemporaryFolder()
    @_property
    def temporary_folder(self) -> StorageFolder: ...
    # System.UInt32 Windows.Storage.ApplicationData::get_Version()
    @_property
    def version(self) -> winrt.system.UInt32: ...
    # Windows.Storage.StorageFolder Windows.Storage.ApplicationData::get_LocalCacheFolder()
    @_property
    def local_cache_folder(self) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.ApplicationData::get_SharedLocalFolder()
    @_property
    def shared_local_folder(self) -> StorageFolder: ...

@typing.final
class ApplicationDataCompositeValue(winrt.system.Object, windows_foundation_collections.IPropertySet, windows_foundation_collections.IObservableMap[str, winrt.system.Object], winrt._winrt.MutableMapping[str, winrt.system.Object]):
    def __len__(self) -> int: ...
    def __iter__(self) -> typing.Iterator[str]: ...
    def __contains__(self, key: object) -> bool: ...
    def __getitem__(self, key: str) -> winrt.system.Object: ...
    def __setitem__(self, key: str, value: winrt.system.Object) -> None: ...
    def __delitem__(self, key: str) -> None: ...
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # System.Void Windows.Storage.ApplicationDataCompositeValue::Clear()
    def clear(self) -> None: ...
    # Windows.Foundation.Collections.IIterator`1<Windows.Foundation.Collections.IKeyValuePair`2<System.String,System.Object>> Windows.Storage.ApplicationDataCompositeValue::First()
    def first(self) -> windows_foundation_collections.IIterator[windows_foundation_collections.IKeyValuePair[str, winrt.system.Object]]: ...
    # Windows.Foundation.Collections.IMapView`2<System.String,System.Object> Windows.Storage.ApplicationDataCompositeValue::GetView()
    def get_view(self) -> typing.Mapping[str, winrt.system.Object]: ...
    # System.Boolean Windows.Storage.ApplicationDataCompositeValue::HasKey(System.String)
    def has_key(self, key: str, /) -> bool: ...
    # System.Boolean Windows.Storage.ApplicationDataCompositeValue::Insert(System.String,System.Object)
    def insert(self, key: str, value: winrt.system.Object, /) -> bool: ...
    # System.Object Windows.Storage.ApplicationDataCompositeValue::Lookup(System.String)
    def lookup(self, key: str, /) -> winrt.system.Object: ...
    # System.Void Windows.Storage.ApplicationDataCompositeValue::Remove(System.String)
    def remove(self, key: str, /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Storage.ApplicationDataCompositeValue::add_MapChanged(Windows.Foundation.Collections.MapChangedEventHandler`2<System.String,System.Object>)
    def add_map_changed(self, vhnd: windows_foundation_collections.MapChangedEventHandler[str, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Storage.ApplicationDataCompositeValue::remove_MapChanged(Windows.Foundation.EventRegistrationToken)
    def remove_map_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.UInt32 Windows.Storage.ApplicationDataCompositeValue::get_Size()
    @_property
    def size(self) -> winrt.system.UInt32: ...

@typing.final
class ApplicationDataContainer(winrt.system.Object, windows_foundation.IClosable):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    # System.Void Windows.Storage.ApplicationDataContainer::Close()
    def close(self) -> None: ...
    # Windows.Storage.ApplicationDataContainer Windows.Storage.ApplicationDataContainer::CreateContainer(System.String,Windows.Storage.ApplicationDataCreateDisposition)
    def create_container(self, name: str, disposition: ApplicationDataCreateDisposition, /) -> ApplicationDataContainer: ...
    # System.Void Windows.Storage.ApplicationDataContainer::DeleteContainer(System.String)
    def delete_container(self, name: str, /) -> None: ...
    # Windows.Foundation.Collections.IMapView`2<System.String,Windows.Storage.ApplicationDataContainer> Windows.Storage.ApplicationDataContainer::get_Containers()
    @_property
    def containers(self) -> typing.Mapping[str, ApplicationDataContainer]: ...
    # Windows.Storage.ApplicationDataLocality Windows.Storage.ApplicationDataContainer::get_Locality()
    @_property
    def locality(self) -> ApplicationDataLocality: ...
    # System.String Windows.Storage.ApplicationDataContainer::get_Name()
    @_property
    def name(self) -> str: ...
    # Windows.Foundation.Collections.IPropertySet Windows.Storage.ApplicationDataContainer::get_Values()
    @_property
    def values(self) -> windows_foundation_collections.IPropertySet: ...

@typing.final
class ApplicationDataContainerSettings(winrt.system.Object, windows_foundation_collections.IPropertySet, windows_foundation_collections.IObservableMap[str, winrt.system.Object], winrt._winrt.MutableMapping[str, winrt.system.Object]):
    def __len__(self) -> int: ...
    def __iter__(self) -> typing.Iterator[str]: ...
    def __contains__(self, key: object) -> bool: ...
    def __getitem__(self, key: str) -> winrt.system.Object: ...
    def __setitem__(self, key: str, value: winrt.system.Object) -> None: ...
    def __delitem__(self, key: str) -> None: ...
    # System.Void Windows.Storage.ApplicationDataContainerSettings::Clear()
    def clear(self) -> None: ...
    # Windows.Foundation.Collections.IIterator`1<Windows.Foundation.Collections.IKeyValuePair`2<System.String,System.Object>> Windows.Storage.ApplicationDataContainerSettings::First()
    def first(self) -> windows_foundation_collections.IIterator[windows_foundation_collections.IKeyValuePair[str, winrt.system.Object]]: ...
    # Windows.Foundation.Collections.IMapView`2<System.String,System.Object> Windows.Storage.ApplicationDataContainerSettings::GetView()
    def get_view(self) -> typing.Mapping[str, winrt.system.Object]: ...
    # System.Boolean Windows.Storage.ApplicationDataContainerSettings::HasKey(System.String)
    def has_key(self, key: str, /) -> bool: ...
    # System.Boolean Windows.Storage.ApplicationDataContainerSettings::Insert(System.String,System.Object)
    def insert(self, key: str, value: winrt.system.Object, /) -> bool: ...
    # System.Object Windows.Storage.ApplicationDataContainerSettings::Lookup(System.String)
    def lookup(self, key: str, /) -> winrt.system.Object: ...
    # System.Void Windows.Storage.ApplicationDataContainerSettings::Remove(System.String)
    def remove(self, key: str, /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Storage.ApplicationDataContainerSettings::add_MapChanged(Windows.Foundation.Collections.MapChangedEventHandler`2<System.String,System.Object>)
    def add_map_changed(self, vhnd: windows_foundation_collections.MapChangedEventHandler[str, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Storage.ApplicationDataContainerSettings::remove_MapChanged(Windows.Foundation.EventRegistrationToken)
    def remove_map_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.UInt32 Windows.Storage.ApplicationDataContainerSettings::get_Size()
    @_property
    def size(self) -> winrt.system.UInt32: ...

@typing.final
class CachedFileManager_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Provider.FileUpdateStatus> Windows.Storage.CachedFileManager::CompleteUpdatesAsync(Windows.Storage.IStorageFile)
    def complete_updates_async(cls, file: IStorageFile, /) -> windows_foundation.IAsyncOperation[windows_storage_provider.FileUpdateStatus]: ...
    # System.Void Windows.Storage.CachedFileManager::DeferUpdates(Windows.Storage.IStorageFile)
    def defer_updates(cls, file: IStorageFile, /) -> None: ...

@typing.final
class CachedFileManager(winrt.system.Object, metaclass=CachedFileManager_Static):
    pass

@typing.final
class DownloadsFolder_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.DownloadsFolder::CreateFileAsync(System.String)
    def create_file_async(cls, desired_name: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.DownloadsFolder::CreateFileForUserAsync(Windows.System.User,System.String)
    def create_file_for_user_async(cls, user: windows_system.User, desired_name: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.DownloadsFolder::CreateFileForUserAsync(Windows.System.User,System.String,Windows.Storage.CreationCollisionOption)
    def create_file_for_user_with_collision_option_async(cls, user: windows_system.User, desired_name: str, option: CreationCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.DownloadsFolder::CreateFileAsync(System.String,Windows.Storage.CreationCollisionOption)
    def create_file_with_collision_option_async(cls, desired_name: str, option: CreationCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.DownloadsFolder::CreateFolderAsync(System.String)
    def create_folder_async(cls, desired_name: str, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.DownloadsFolder::CreateFolderForUserAsync(Windows.System.User,System.String)
    def create_folder_for_user_async(cls, user: windows_system.User, desired_name: str, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.DownloadsFolder::CreateFolderForUserAsync(Windows.System.User,System.String,Windows.Storage.CreationCollisionOption)
    def create_folder_for_user_with_collision_option_async(cls, user: windows_system.User, desired_name: str, option: CreationCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.DownloadsFolder::CreateFolderAsync(System.String,Windows.Storage.CreationCollisionOption)
    def create_folder_with_collision_option_async(cls, desired_name: str, option: CreationCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...

@typing.final
class DownloadsFolder(winrt.system.Object, metaclass=DownloadsFolder_Static):
    pass

@typing.final
class FileIO_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::AppendLinesAsync(Windows.Storage.IStorageFile,Windows.Foundation.Collections.IIterable`1<System.String>)
    def append_lines_async(cls, file: IStorageFile, lines: typing.Iterable[str], /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::AppendLinesAsync(Windows.Storage.IStorageFile,Windows.Foundation.Collections.IIterable`1<System.String>,Windows.Storage.Streams.UnicodeEncoding)
    def append_lines_with_encoding_async(cls, file: IStorageFile, lines: typing.Iterable[str], encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::AppendTextAsync(Windows.Storage.IStorageFile,System.String)
    def append_text_async(cls, file: IStorageFile, contents: str, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::AppendTextAsync(Windows.Storage.IStorageFile,System.String,Windows.Storage.Streams.UnicodeEncoding)
    def append_text_with_encoding_async(cls, file: IStorageFile, contents: str, encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IBuffer> Windows.Storage.FileIO::ReadBufferAsync(Windows.Storage.IStorageFile)
    def read_buffer_async(cls, file: IStorageFile, /) -> windows_foundation.IAsyncOperation[windows_storage_streams.IBuffer]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVector`1<System.String>> Windows.Storage.FileIO::ReadLinesAsync(Windows.Storage.IStorageFile)
    def read_lines_async(cls, file: IStorageFile, /) -> windows_foundation.IAsyncOperation[typing.MutableSequence[str]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVector`1<System.String>> Windows.Storage.FileIO::ReadLinesAsync(Windows.Storage.IStorageFile,Windows.Storage.Streams.UnicodeEncoding)
    def read_lines_with_encoding_async(cls, file: IStorageFile, encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncOperation[typing.MutableSequence[str]]: ...
    # Windows.Foundation.IAsyncOperation`1<System.String> Windows.Storage.FileIO::ReadTextAsync(Windows.Storage.IStorageFile)
    def read_text_async(cls, file: IStorageFile, /) -> windows_foundation.IAsyncOperation[str]: ...
    # Windows.Foundation.IAsyncOperation`1<System.String> Windows.Storage.FileIO::ReadTextAsync(Windows.Storage.IStorageFile,Windows.Storage.Streams.UnicodeEncoding)
    def read_text_with_encoding_async(cls, file: IStorageFile, encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncOperation[str]: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::WriteBufferAsync(Windows.Storage.IStorageFile,Windows.Storage.Streams.IBuffer)
    def write_buffer_async(cls, file: IStorageFile, buffer: windows_storage_streams.IBuffer, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::WriteBytesAsync(Windows.Storage.IStorageFile,System.Byte[])
    def write_bytes_async(cls, file: IStorageFile, buffer: typing.Union[winrt.system.Array[winrt.system.UInt8], winrt.system.ReadableBuffer], /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::WriteLinesAsync(Windows.Storage.IStorageFile,Windows.Foundation.Collections.IIterable`1<System.String>)
    def write_lines_async(cls, file: IStorageFile, lines: typing.Iterable[str], /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::WriteLinesAsync(Windows.Storage.IStorageFile,Windows.Foundation.Collections.IIterable`1<System.String>,Windows.Storage.Streams.UnicodeEncoding)
    def write_lines_with_encoding_async(cls, file: IStorageFile, lines: typing.Iterable[str], encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::WriteTextAsync(Windows.Storage.IStorageFile,System.String)
    def write_text_async(cls, file: IStorageFile, contents: str, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.FileIO::WriteTextAsync(Windows.Storage.IStorageFile,System.String,Windows.Storage.Streams.UnicodeEncoding)
    def write_text_with_encoding_async(cls, file: IStorageFile, contents: str, encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncAction: ...

@typing.final
class FileIO(winrt.system.Object, metaclass=FileIO_Static):
    pass

@typing.final
class KnownFolders_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.KnownFolders::GetFolderAsync(Windows.Storage.KnownFolderId)
    def get_folder_async(cls, folder_id: KnownFolderId, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.KnownFolders::GetFolderForUserAsync(Windows.System.User,Windows.Storage.KnownFolderId)
    def get_folder_for_user_async(cls, user: windows_system.User, folder_id: KnownFolderId, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.KnownFoldersAccessStatus> Windows.Storage.KnownFolders::RequestAccessAsync(Windows.Storage.KnownFolderId)
    def request_access_async(cls, folder_id: KnownFolderId, /) -> windows_foundation.IAsyncOperation[KnownFoldersAccessStatus]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.KnownFoldersAccessStatus> Windows.Storage.KnownFolders::RequestAccessForUserAsync(Windows.System.User,Windows.Storage.KnownFolderId)
    def request_access_for_user_async(cls, user: windows_system.User, folder_id: KnownFolderId, /) -> windows_foundation.IAsyncOperation[KnownFoldersAccessStatus]: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_CameraRoll()
    @_property
    def camera_roll(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_Playlists()
    @_property
    def playlists(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_SavedPictures()
    @_property
    def saved_pictures(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_DocumentsLibrary()
    @_property
    def documents_library(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_HomeGroup()
    @_property
    def home_group(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_MediaServerDevices()
    @_property
    def media_server_devices(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_MusicLibrary()
    @_property
    def music_library(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_PicturesLibrary()
    @_property
    def pictures_library(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_RemovableDevices()
    @_property
    def removable_devices(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_VideosLibrary()
    @_property
    def videos_library(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_AppCaptures()
    @_property
    def app_captures(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_Objects3D()
    @_property
    def objects_3d(cls) -> StorageFolder: ...
    # Windows.Storage.StorageFolder Windows.Storage.KnownFolders::get_RecordedCalls()
    @_property
    def recorded_calls(cls) -> StorageFolder: ...

@typing.final
class KnownFolders(winrt.system.Object, metaclass=KnownFolders_Static):
    pass

@typing.final
class PathIO_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::AppendLinesAsync(System.String,Windows.Foundation.Collections.IIterable`1<System.String>)
    def append_lines_async(cls, absolute_path: str, lines: typing.Iterable[str], /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::AppendLinesAsync(System.String,Windows.Foundation.Collections.IIterable`1<System.String>,Windows.Storage.Streams.UnicodeEncoding)
    def append_lines_with_encoding_async(cls, absolute_path: str, lines: typing.Iterable[str], encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::AppendTextAsync(System.String,System.String)
    def append_text_async(cls, absolute_path: str, contents: str, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::AppendTextAsync(System.String,System.String,Windows.Storage.Streams.UnicodeEncoding)
    def append_text_with_encoding_async(cls, absolute_path: str, contents: str, encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IBuffer> Windows.Storage.PathIO::ReadBufferAsync(System.String)
    def read_buffer_async(cls, absolute_path: str, /) -> windows_foundation.IAsyncOperation[windows_storage_streams.IBuffer]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVector`1<System.String>> Windows.Storage.PathIO::ReadLinesAsync(System.String)
    def read_lines_async(cls, absolute_path: str, /) -> windows_foundation.IAsyncOperation[typing.MutableSequence[str]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVector`1<System.String>> Windows.Storage.PathIO::ReadLinesAsync(System.String,Windows.Storage.Streams.UnicodeEncoding)
    def read_lines_with_encoding_async(cls, absolute_path: str, encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncOperation[typing.MutableSequence[str]]: ...
    # Windows.Foundation.IAsyncOperation`1<System.String> Windows.Storage.PathIO::ReadTextAsync(System.String)
    def read_text_async(cls, absolute_path: str, /) -> windows_foundation.IAsyncOperation[str]: ...
    # Windows.Foundation.IAsyncOperation`1<System.String> Windows.Storage.PathIO::ReadTextAsync(System.String,Windows.Storage.Streams.UnicodeEncoding)
    def read_text_with_encoding_async(cls, absolute_path: str, encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncOperation[str]: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::WriteBufferAsync(System.String,Windows.Storage.Streams.IBuffer)
    def write_buffer_async(cls, absolute_path: str, buffer: windows_storage_streams.IBuffer, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::WriteBytesAsync(System.String,System.Byte[])
    def write_bytes_async(cls, absolute_path: str, buffer: typing.Union[winrt.system.Array[winrt.system.UInt8], winrt.system.ReadableBuffer], /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::WriteLinesAsync(System.String,Windows.Foundation.Collections.IIterable`1<System.String>)
    def write_lines_async(cls, absolute_path: str, lines: typing.Iterable[str], /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::WriteLinesAsync(System.String,Windows.Foundation.Collections.IIterable`1<System.String>,Windows.Storage.Streams.UnicodeEncoding)
    def write_lines_with_encoding_async(cls, absolute_path: str, lines: typing.Iterable[str], encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::WriteTextAsync(System.String,System.String)
    def write_text_async(cls, absolute_path: str, contents: str, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.PathIO::WriteTextAsync(System.String,System.String,Windows.Storage.Streams.UnicodeEncoding)
    def write_text_with_encoding_async(cls, absolute_path: str, contents: str, encoding: windows_storage_streams.UnicodeEncoding, /) -> windows_foundation.IAsyncAction: ...

@typing.final
class PathIO(winrt.system.Object, metaclass=PathIO_Static):
    pass

@typing.final
class SetVersionDeferral(winrt.system.Object):
    # System.Void Windows.Storage.SetVersionDeferral::Complete()
    def complete(self) -> None: ...

@typing.final
class SetVersionRequest(winrt.system.Object):
    # Windows.Storage.SetVersionDeferral Windows.Storage.SetVersionRequest::GetDeferral()
    def get_deferral(self) -> SetVersionDeferral: ...
    # System.UInt32 Windows.Storage.SetVersionRequest::get_CurrentVersion()
    @_property
    def current_version(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Storage.SetVersionRequest::get_DesiredVersion()
    @_property
    def desired_version(self) -> winrt.system.UInt32: ...

@typing.final
class StorageFile_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::CreateStreamedFileAsync(System.String,Windows.Storage.StreamedFileDataRequestedHandler,Windows.Storage.Streams.IRandomAccessStreamReference)
    def create_streamed_file_async(cls, display_name_with_extension: str, data_requested: StreamedFileDataRequestedHandler, thumbnail: windows_storage_streams.IRandomAccessStreamReference, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::CreateStreamedFileFromUriAsync(System.String,Windows.Foundation.Uri,Windows.Storage.Streams.IRandomAccessStreamReference)
    def create_streamed_file_from_uri_async(cls, display_name_with_extension: str, uri: windows_foundation.Uri, thumbnail: windows_storage_streams.IRandomAccessStreamReference, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::GetFileFromApplicationUriAsync(Windows.Foundation.Uri)
    def get_file_from_application_uri_async(cls, uri: windows_foundation.Uri, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::GetFileFromPathAsync(System.String)
    def get_file_from_path_async(cls, path: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::GetFileFromPathForUserAsync(Windows.System.User,System.String)
    def get_file_from_path_for_user_async(cls, user: windows_system.User, path: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::ReplaceWithStreamedFileAsync(Windows.Storage.IStorageFile,Windows.Storage.StreamedFileDataRequestedHandler,Windows.Storage.Streams.IRandomAccessStreamReference)
    def replace_with_streamed_file_async(cls, file_to_replace: IStorageFile, data_requested: StreamedFileDataRequestedHandler, thumbnail: windows_storage_streams.IRandomAccessStreamReference, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::ReplaceWithStreamedFileFromUriAsync(Windows.Storage.IStorageFile,Windows.Foundation.Uri,Windows.Storage.Streams.IRandomAccessStreamReference)
    def replace_with_streamed_file_from_uri_async(cls, file_to_replace: IStorageFile, uri: windows_foundation.Uri, thumbnail: windows_storage_streams.IRandomAccessStreamReference, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...

@typing.final
class StorageFile(winrt.system.Object, IStorageFile2, IStorageFilePropertiesWithAvailability, IStorageItemPropertiesWithProvider, IStorageItem2, IStorageItemProperties2, IStorageItemProperties, IStorageFile, windows_storage_streams.IInputStreamReference, windows_storage_streams.IRandomAccessStreamReference, IStorageItem, metaclass=StorageFile_Static):
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::CopyAndReplaceAsync(Windows.Storage.IStorageFile)
    def copy_and_replace_async(self, file_to_replace: IStorageFile, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::CopyAsync(Windows.Storage.IStorageFolder,System.String,Windows.Storage.NameCollisionOption)
    def copy_overload(self, destination_folder: IStorageFolder, desired_new_name: str, option: NameCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::CopyAsync(Windows.Storage.IStorageFolder)
    def copy_overload_default_name_and_options(self, destination_folder: IStorageFolder, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFile::CopyAsync(Windows.Storage.IStorageFolder,System.String)
    def copy_overload_default_options(self, destination_folder: IStorageFolder, desired_new_name: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::DeleteAsync(Windows.Storage.StorageDeleteOption)
    def delete_async(self, option: StorageDeleteOption, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::DeleteAsync()
    def delete_async_overload_default_options(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.BasicProperties> Windows.Storage.StorageFile::GetBasicPropertiesAsync()
    def get_basic_properties_async(self) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.BasicProperties]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.StorageFile::GetParentAsync()
    def get_parent_async(self) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFile::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32,Windows.Storage.FileProperties.ThumbnailOptions)
    def get_scaled_image_as_thumbnail_async(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, options: windows_storage_fileproperties.ThumbnailOptions, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFile::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32)
    def get_scaled_image_as_thumbnail_async_overload_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFile::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode)
    def get_scaled_image_as_thumbnail_async_overload_default_size_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFile::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32,Windows.Storage.FileProperties.ThumbnailOptions)
    def get_thumbnail_async(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, options: windows_storage_fileproperties.ThumbnailOptions, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFile::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32)
    def get_thumbnail_async_overload_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFile::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode)
    def get_thumbnail_async_overload_default_size_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # System.Boolean Windows.Storage.StorageFile::IsEqual(Windows.Storage.IStorageItem)
    def is_equal(self, item: IStorageItem, /) -> bool: ...
    # System.Boolean Windows.Storage.StorageFile::IsOfType(Windows.Storage.StorageItemTypes)
    def is_of_type(self, type: StorageItemTypes, /) -> bool: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::MoveAndReplaceAsync(Windows.Storage.IStorageFile)
    def move_and_replace_async(self, file_to_replace: IStorageFile, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::MoveAsync(Windows.Storage.IStorageFolder,System.String,Windows.Storage.NameCollisionOption)
    def move_overload(self, destination_folder: IStorageFolder, desired_new_name: str, option: NameCollisionOption, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::MoveAsync(Windows.Storage.IStorageFolder)
    def move_overload_default_name_and_options(self, destination_folder: IStorageFolder, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::MoveAsync(Windows.Storage.IStorageFolder,System.String)
    def move_overload_default_options(self, destination_folder: IStorageFolder, desired_new_name: str, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IRandomAccessStream> Windows.Storage.StorageFile::OpenAsync(Windows.Storage.FileAccessMode)
    def open_async(self, access_mode: FileAccessMode, /) -> windows_foundation.IAsyncOperation[windows_storage_streams.IRandomAccessStream]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IRandomAccessStreamWithContentType> Windows.Storage.StorageFile::OpenReadAsync()
    def open_read_async(self) -> windows_foundation.IAsyncOperation[windows_storage_streams.IRandomAccessStreamWithContentType]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IInputStream> Windows.Storage.StorageFile::OpenSequentialReadAsync()
    def open_sequential_read_async(self) -> windows_foundation.IAsyncOperation[windows_storage_streams.IInputStream]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageStreamTransaction> Windows.Storage.StorageFile::OpenTransactedWriteAsync()
    def open_transacted_write_async(self) -> windows_foundation.IAsyncOperation[StorageStreamTransaction]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageStreamTransaction> Windows.Storage.StorageFile::OpenTransactedWriteAsync(Windows.Storage.StorageOpenOptions)
    def open_transacted_write_with_options_async(self, options: StorageOpenOptions, /) -> windows_foundation.IAsyncOperation[StorageStreamTransaction]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IRandomAccessStream> Windows.Storage.StorageFile::OpenAsync(Windows.Storage.FileAccessMode,Windows.Storage.StorageOpenOptions)
    def open_with_options_async(self, access_mode: FileAccessMode, options: StorageOpenOptions, /) -> windows_foundation.IAsyncOperation[windows_storage_streams.IRandomAccessStream]: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::RenameAsync(System.String,Windows.Storage.NameCollisionOption)
    def rename_async(self, desired_name: str, option: NameCollisionOption, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFile::RenameAsync(System.String)
    def rename_async_overload_default_options(self, desired_name: str, /) -> windows_foundation.IAsyncAction: ...
    # System.String Windows.Storage.StorageFile::get_ContentType()
    @_property
    def content_type(self) -> str: ...
    # System.String Windows.Storage.StorageFile::get_FileType()
    @_property
    def file_type(self) -> str: ...
    # System.Boolean Windows.Storage.StorageFile::get_IsAvailable()
    @_property
    def is_available(self) -> bool: ...
    # Windows.Storage.FileAttributes Windows.Storage.StorageFile::get_Attributes()
    @_property
    def attributes(self) -> FileAttributes: ...
    # Windows.Foundation.DateTime Windows.Storage.StorageFile::get_DateCreated()
    @_property
    def date_created(self) -> datetime.datetime: ...
    # System.String Windows.Storage.StorageFile::get_Name()
    @_property
    def name(self) -> str: ...
    # System.String Windows.Storage.StorageFile::get_Path()
    @_property
    def path(self) -> str: ...
    # System.String Windows.Storage.StorageFile::get_DisplayName()
    @_property
    def display_name(self) -> str: ...
    # System.String Windows.Storage.StorageFile::get_DisplayType()
    @_property
    def display_type(self) -> str: ...
    # System.String Windows.Storage.StorageFile::get_FolderRelativeId()
    @_property
    def folder_relative_id(self) -> str: ...
    # Windows.Storage.FileProperties.StorageItemContentProperties Windows.Storage.StorageFile::get_Properties()
    @_property
    def properties(self) -> windows_storage_fileproperties.StorageItemContentProperties: ...
    # Windows.Storage.StorageProvider Windows.Storage.StorageFile::get_Provider()
    @_property
    def provider(self) -> StorageProvider: ...

@typing.final
class StorageFolder_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.StorageFolder::GetFolderFromPathAsync(System.String)
    def get_folder_from_path_async(cls, path: str, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.StorageFolder::GetFolderFromPathForUserAsync(Windows.System.User,System.String)
    def get_folder_from_path_for_user_async(cls, user: windows_system.User, path: str, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...

@typing.final
class StorageFolder(winrt.system.Object, IStorageItemPropertiesWithProvider, IStorageFolder2, IStorageItem2, IStorageItemProperties2, IStorageItemProperties, windows_storage_search.IStorageFolderQueryOperations, IStorageFolder, IStorageItem, metaclass=StorageFolder_Static):
    # System.Boolean Windows.Storage.StorageFolder::AreQueryOptionsSupported(Windows.Storage.Search.QueryOptions)
    def are_query_options_supported(self, query_options: windows_storage_search.QueryOptions, /) -> bool: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFolder::CreateFileAsync(System.String,Windows.Storage.CreationCollisionOption)
    def create_file_async(self, desired_name: str, options: CreationCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFolder::CreateFileAsync(System.String)
    def create_file_async_overload_default_options(self, desired_name: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Storage.Search.StorageFileQueryResult Windows.Storage.StorageFolder::CreateFileQuery(Windows.Storage.Search.CommonFileQuery)
    def create_file_query(self, query: windows_storage_search.CommonFileQuery, /) -> windows_storage_search.StorageFileQueryResult: ...
    # Windows.Storage.Search.StorageFileQueryResult Windows.Storage.StorageFolder::CreateFileQuery()
    def create_file_query_overload_default(self) -> windows_storage_search.StorageFileQueryResult: ...
    # Windows.Storage.Search.StorageFileQueryResult Windows.Storage.StorageFolder::CreateFileQueryWithOptions(Windows.Storage.Search.QueryOptions)
    def create_file_query_with_options(self, query_options: windows_storage_search.QueryOptions, /) -> windows_storage_search.StorageFileQueryResult: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.StorageFolder::CreateFolderAsync(System.String,Windows.Storage.CreationCollisionOption)
    def create_folder_async(self, desired_name: str, options: CreationCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.StorageFolder::CreateFolderAsync(System.String)
    def create_folder_async_overload_default_options(self, desired_name: str, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Storage.Search.StorageFolderQueryResult Windows.Storage.StorageFolder::CreateFolderQuery(Windows.Storage.Search.CommonFolderQuery)
    def create_folder_query(self, query: windows_storage_search.CommonFolderQuery, /) -> windows_storage_search.StorageFolderQueryResult: ...
    # Windows.Storage.Search.StorageFolderQueryResult Windows.Storage.StorageFolder::CreateFolderQuery()
    def create_folder_query_overload_default(self) -> windows_storage_search.StorageFolderQueryResult: ...
    # Windows.Storage.Search.StorageFolderQueryResult Windows.Storage.StorageFolder::CreateFolderQueryWithOptions(Windows.Storage.Search.QueryOptions)
    def create_folder_query_with_options(self, query_options: windows_storage_search.QueryOptions, /) -> windows_storage_search.StorageFolderQueryResult: ...
    # Windows.Storage.Search.StorageItemQueryResult Windows.Storage.StorageFolder::CreateItemQuery()
    def create_item_query(self) -> windows_storage_search.StorageItemQueryResult: ...
    # Windows.Storage.Search.StorageItemQueryResult Windows.Storage.StorageFolder::CreateItemQueryWithOptions(Windows.Storage.Search.QueryOptions)
    def create_item_query_with_options(self, query_options: windows_storage_search.QueryOptions, /) -> windows_storage_search.StorageItemQueryResult: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFolder::DeleteAsync(Windows.Storage.StorageDeleteOption)
    def delete_async(self, option: StorageDeleteOption, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFolder::DeleteAsync()
    def delete_async_overload_default_options(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.BasicProperties> Windows.Storage.StorageFolder::GetBasicPropertiesAsync()
    def get_basic_properties_async(self) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.BasicProperties]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.StorageFolder::GetFileAsync(System.String)
    def get_file_async(self, name: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageFile>> Windows.Storage.StorageFolder::GetFilesAsync(Windows.Storage.Search.CommonFileQuery,System.UInt32,System.UInt32)
    def get_files_async(self, query: windows_storage_search.CommonFileQuery, start_index: winrt.system.UInt32, max_items_to_retrieve: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageFile]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageFile>> Windows.Storage.StorageFolder::GetFilesAsync()
    def get_files_async_overload_default_options_start_and_count(self) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageFile]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageFile>> Windows.Storage.StorageFolder::GetFilesAsync(Windows.Storage.Search.CommonFileQuery)
    def get_files_async_overload_default_start_and_count(self, query: windows_storage_search.CommonFileQuery, /) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageFile]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.StorageFolder::GetFolderAsync(System.String)
    def get_folder_async(self, name: str, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageFolder>> Windows.Storage.StorageFolder::GetFoldersAsync(Windows.Storage.Search.CommonFolderQuery,System.UInt32,System.UInt32)
    def get_folders_async(self, query: windows_storage_search.CommonFolderQuery, start_index: winrt.system.UInt32, max_items_to_retrieve: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageFolder]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageFolder>> Windows.Storage.StorageFolder::GetFoldersAsync()
    def get_folders_async_overload_default_options_start_and_count(self) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageFolder]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageFolder>> Windows.Storage.StorageFolder::GetFoldersAsync(Windows.Storage.Search.CommonFolderQuery)
    def get_folders_async_overload_default_start_and_count(self, query: windows_storage_search.CommonFolderQuery, /) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageFolder]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Search.IndexedState> Windows.Storage.StorageFolder::GetIndexedStateAsync()
    def get_indexed_state_async(self) -> windows_foundation.IAsyncOperation[windows_storage_search.IndexedState]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.IStorageItem> Windows.Storage.StorageFolder::GetItemAsync(System.String)
    def get_item_async(self, name: str, /) -> windows_foundation.IAsyncOperation[IStorageItem]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.IStorageItem>> Windows.Storage.StorageFolder::GetItemsAsync(System.UInt32,System.UInt32)
    def get_items_async(self, start_index: winrt.system.UInt32, max_items_to_retrieve: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[typing.Sequence[IStorageItem]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.IStorageItem>> Windows.Storage.StorageFolder::GetItemsAsync()
    def get_items_async_overload_default_start_and_count(self) -> windows_foundation.IAsyncOperation[typing.Sequence[IStorageItem]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.StorageFolder::GetParentAsync()
    def get_parent_async(self) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFolder::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32,Windows.Storage.FileProperties.ThumbnailOptions)
    def get_scaled_image_as_thumbnail_async(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, options: windows_storage_fileproperties.ThumbnailOptions, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFolder::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32)
    def get_scaled_image_as_thumbnail_async_overload_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFolder::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode)
    def get_scaled_image_as_thumbnail_async_overload_default_size_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFolder::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32,Windows.Storage.FileProperties.ThumbnailOptions)
    def get_thumbnail_async(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, options: windows_storage_fileproperties.ThumbnailOptions, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFolder::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32)
    def get_thumbnail_async_overload_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.StorageFolder::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode)
    def get_thumbnail_async_overload_default_size_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # System.Boolean Windows.Storage.StorageFolder::IsCommonFileQuerySupported(Windows.Storage.Search.CommonFileQuery)
    def is_common_file_query_supported(self, query: windows_storage_search.CommonFileQuery, /) -> bool: ...
    # System.Boolean Windows.Storage.StorageFolder::IsCommonFolderQuerySupported(Windows.Storage.Search.CommonFolderQuery)
    def is_common_folder_query_supported(self, query: windows_storage_search.CommonFolderQuery, /) -> bool: ...
    # System.Boolean Windows.Storage.StorageFolder::IsEqual(Windows.Storage.IStorageItem)
    def is_equal(self, item: IStorageItem, /) -> bool: ...
    # System.Boolean Windows.Storage.StorageFolder::IsOfType(Windows.Storage.StorageItemTypes)
    def is_of_type(self, type: StorageItemTypes, /) -> bool: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFolder::RenameAsync(System.String,Windows.Storage.NameCollisionOption)
    def rename_async(self, desired_name: str, option: NameCollisionOption, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageFolder::RenameAsync(System.String)
    def rename_async_overload_default_options(self, desired_name: str, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Storage.StorageLibraryChangeTracker Windows.Storage.StorageFolder::TryGetChangeTracker()
    def try_get_change_tracker(self) -> typing.Optional[StorageLibraryChangeTracker]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.IStorageItem> Windows.Storage.StorageFolder::TryGetItemAsync(System.String)
    def try_get_item_async(self, name: str, /) -> windows_foundation.IAsyncOperation[typing.Optional[IStorageItem]]: ...
    # Windows.Storage.FileAttributes Windows.Storage.StorageFolder::get_Attributes()
    @_property
    def attributes(self) -> FileAttributes: ...
    # Windows.Foundation.DateTime Windows.Storage.StorageFolder::get_DateCreated()
    @_property
    def date_created(self) -> datetime.datetime: ...
    # System.String Windows.Storage.StorageFolder::get_Name()
    @_property
    def name(self) -> str: ...
    # System.String Windows.Storage.StorageFolder::get_Path()
    @_property
    def path(self) -> str: ...
    # System.String Windows.Storage.StorageFolder::get_DisplayName()
    @_property
    def display_name(self) -> str: ...
    # System.String Windows.Storage.StorageFolder::get_DisplayType()
    @_property
    def display_type(self) -> str: ...
    # System.String Windows.Storage.StorageFolder::get_FolderRelativeId()
    @_property
    def folder_relative_id(self) -> str: ...
    # Windows.Storage.FileProperties.StorageItemContentProperties Windows.Storage.StorageFolder::get_Properties()
    @_property
    def properties(self) -> windows_storage_fileproperties.StorageItemContentProperties: ...
    # Windows.Storage.StorageProvider Windows.Storage.StorageFolder::get_Provider()
    @_property
    def provider(self) -> StorageProvider: ...

@typing.final
class StorageLibrary_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageLibrary> Windows.Storage.StorageLibrary::GetLibraryAsync(Windows.Storage.KnownLibraryId)
    def get_library_async(cls, library_id: KnownLibraryId, /) -> windows_foundation.IAsyncOperation[StorageLibrary]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageLibrary> Windows.Storage.StorageLibrary::GetLibraryForUserAsync(Windows.System.User,Windows.Storage.KnownLibraryId)
    def get_library_for_user_async(cls, user: windows_system.User, library_id: KnownLibraryId, /) -> windows_foundation.IAsyncOperation[StorageLibrary]: ...

@typing.final
class StorageLibrary(winrt.system.Object, metaclass=StorageLibrary_Static):
    # Windows.Foundation.IAsyncOperation`1<System.Boolean> Windows.Storage.StorageLibrary::AreFolderSuggestionsAvailableAsync()
    def are_folder_suggestions_available_async(self) -> windows_foundation.IAsyncOperation[bool]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.StorageLibrary::RequestAddFolderAsync()
    def request_add_folder_async(self) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<System.Boolean> Windows.Storage.StorageLibrary::RequestRemoveFolderAsync(Windows.Storage.StorageFolder)
    def request_remove_folder_async(self, folder: StorageFolder, /) -> windows_foundation.IAsyncOperation[bool]: ...
    # Windows.Foundation.EventRegistrationToken Windows.Storage.StorageLibrary::add_DefinitionChanged(Windows.Foundation.TypedEventHandler`2<Windows.Storage.StorageLibrary,System.Object>)
    def add_definition_changed(self, handler: windows_foundation.TypedEventHandler[StorageLibrary, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Storage.StorageLibrary::remove_DefinitionChanged(Windows.Foundation.EventRegistrationToken)
    def remove_definition_changed(self, event_cookie: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.Collections.IObservableVector`1<Windows.Storage.StorageFolder> Windows.Storage.StorageLibrary::get_Folders()
    @_property
    def folders(self) -> windows_foundation_collections.IObservableVector[StorageFolder]: ...
    # Windows.Storage.StorageFolder Windows.Storage.StorageLibrary::get_SaveFolder()
    @_property
    def save_folder(self) -> StorageFolder: ...
    # Windows.Storage.StorageLibraryChangeTracker Windows.Storage.StorageLibrary::get_ChangeTracker()
    @_property
    def change_tracker(self) -> StorageLibraryChangeTracker: ...

@typing.final
class StorageLibraryChange(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.IStorageItem> Windows.Storage.StorageLibraryChange::GetStorageItemAsync()
    def get_storage_item_async(self) -> windows_foundation.IAsyncOperation[IStorageItem]: ...
    # System.Boolean Windows.Storage.StorageLibraryChange::IsOfType(Windows.Storage.StorageItemTypes)
    def is_of_type(self, type: StorageItemTypes, /) -> bool: ...
    # Windows.Storage.StorageLibraryChangeType Windows.Storage.StorageLibraryChange::get_ChangeType()
    @_property
    def change_type(self) -> StorageLibraryChangeType: ...
    # System.String Windows.Storage.StorageLibraryChange::get_Path()
    @_property
    def path(self) -> str: ...
    # System.String Windows.Storage.StorageLibraryChange::get_PreviousPath()
    @_property
    def previous_path(self) -> str: ...

@typing.final
class StorageLibraryChangeReader(winrt.system.Object):
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageLibraryChangeReader::AcceptChangesAsync()
    def accept_changes_async(self) -> windows_foundation.IAsyncAction: ...
    # System.UInt64 Windows.Storage.StorageLibraryChangeReader::GetLastChangeId()
    def get_last_change_id(self) -> winrt.system.UInt64: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageLibraryChange>> Windows.Storage.StorageLibraryChangeReader::ReadBatchAsync()
    def read_batch_async(self) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageLibraryChange]]: ...

@typing.final
class StorageLibraryChangeTracker(winrt.system.Object):
    # System.Void Windows.Storage.StorageLibraryChangeTracker::Disable()
    def disable(self) -> None: ...
    # System.Void Windows.Storage.StorageLibraryChangeTracker::Enable()
    def enable(self) -> None: ...
    # System.Void Windows.Storage.StorageLibraryChangeTracker::Enable(Windows.Storage.StorageLibraryChangeTrackerOptions)
    def enable_with_options(self, options: StorageLibraryChangeTrackerOptions, /) -> None: ...
    # Windows.Storage.StorageLibraryChangeReader Windows.Storage.StorageLibraryChangeTracker::GetChangeReader()
    def get_change_reader(self) -> StorageLibraryChangeReader: ...
    # System.Void Windows.Storage.StorageLibraryChangeTracker::Reset()
    def reset(self) -> None: ...

@typing.final
class StorageLibraryChangeTrackerOptions(winrt.system.Object):
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # System.Boolean Windows.Storage.StorageLibraryChangeTrackerOptions::get_TrackChangeDetails()
    @_property
    def track_change_details(self) -> bool: ...
    # System.Void Windows.Storage.StorageLibraryChangeTrackerOptions::put_TrackChangeDetails(System.Boolean)
    @track_change_details.setter
    def track_change_details(self, value: bool) -> None: ...

@typing.final
class StorageLibraryLastChangeId_Static(winrt._winrt.IInspectable_Static):
    # System.UInt64 Windows.Storage.StorageLibraryLastChangeId::get_Unknown()
    @_property
    def unknown(cls) -> winrt.system.UInt64: ...

@typing.final
class StorageLibraryLastChangeId(winrt.system.Object, metaclass=StorageLibraryLastChangeId_Static):
    pass

@typing.final
class StorageProvider(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<System.Boolean> Windows.Storage.StorageProvider::IsPropertySupportedForPartialFileAsync(System.String)
    def is_property_supported_for_partial_file_async(self, property_canonical_name: str, /) -> windows_foundation.IAsyncOperation[bool]: ...
    # System.String Windows.Storage.StorageProvider::get_DisplayName()
    @_property
    def display_name(self) -> str: ...
    # System.String Windows.Storage.StorageProvider::get_Id()
    @_property
    def id(self) -> str: ...

@typing.final
class StorageStreamTransaction(winrt.system.Object, windows_foundation.IClosable):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    # System.Void Windows.Storage.StorageStreamTransaction::Close()
    def close(self) -> None: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.StorageStreamTransaction::CommitAsync()
    def commit_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Storage.Streams.IRandomAccessStream Windows.Storage.StorageStreamTransaction::get_Stream()
    @_property
    def stream(self) -> windows_storage_streams.IRandomAccessStream: ...

@typing.final
class StreamedFileDataRequest(winrt.system.Object, IStreamedFileDataRequest, windows_storage_streams.IOutputStream, windows_foundation.IClosable):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, exc_type: typing.Optional[typing.Type[BaseException]], exc_value: typing.Optional[BaseException], traceback: typing.Optional[types.TracebackType]) -> None: ...
    # System.Void Windows.Storage.StreamedFileDataRequest::Close()
    def close(self) -> None: ...
    # System.Void Windows.Storage.StreamedFileDataRequest::FailAndClose(Windows.Storage.StreamedFileFailureMode)
    def fail_and_close(self, failure_mode: StreamedFileFailureMode, /) -> None: ...
    # Windows.Foundation.IAsyncOperation`1<System.Boolean> Windows.Storage.StreamedFileDataRequest::FlushAsync()
    def flush_async(self) -> windows_foundation.IAsyncOperation[bool]: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<System.UInt32,System.UInt32> Windows.Storage.StreamedFileDataRequest::WriteAsync(Windows.Storage.Streams.IBuffer)
    def write_async(self, buffer: windows_storage_streams.IBuffer, /) -> windows_foundation.IAsyncOperationWithProgress[winrt.system.UInt32, winrt.system.UInt32]: ...

@typing.final
class SystemAudioProperties(winrt.system.Object):
    # System.String Windows.Storage.SystemAudioProperties::get_EncodingBitrate()
    @_property
    def encoding_bitrate(self) -> str: ...

@typing.final
class SystemDataPaths_Static(winrt._winrt.IInspectable_Static):
    # Windows.Storage.SystemDataPaths Windows.Storage.SystemDataPaths::GetDefault()
    def get_default(cls) -> SystemDataPaths: ...

@typing.final
class SystemDataPaths(winrt.system.Object, metaclass=SystemDataPaths_Static):
    # System.String Windows.Storage.SystemDataPaths::get_Fonts()
    @_property
    def fonts(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_ProgramData()
    @_property
    def program_data(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_Public()
    @_property
    def public(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_PublicDesktop()
    @_property
    def public_desktop(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_PublicDocuments()
    @_property
    def public_documents(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_PublicDownloads()
    @_property
    def public_downloads(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_PublicMusic()
    @_property
    def public_music(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_PublicPictures()
    @_property
    def public_pictures(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_PublicVideos()
    @_property
    def public_videos(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_System()
    @_property
    def system(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_SystemArm()
    @_property
    def system_arm(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_SystemHost()
    @_property
    def system_host(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_SystemX64()
    @_property
    def system_x64(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_SystemX86()
    @_property
    def system_x86(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_UserProfiles()
    @_property
    def user_profiles(self) -> str: ...
    # System.String Windows.Storage.SystemDataPaths::get_Windows()
    @_property
    def windows(self) -> str: ...

@typing.final
class SystemGPSProperties(winrt.system.Object):
    # System.String Windows.Storage.SystemGPSProperties::get_LatitudeDecimal()
    @_property
    def latitude_decimal(self) -> str: ...
    # System.String Windows.Storage.SystemGPSProperties::get_LongitudeDecimal()
    @_property
    def longitude_decimal(self) -> str: ...

@typing.final
class SystemImageProperties(winrt.system.Object):
    # System.String Windows.Storage.SystemImageProperties::get_HorizontalSize()
    @_property
    def horizontal_size(self) -> str: ...
    # System.String Windows.Storage.SystemImageProperties::get_VerticalSize()
    @_property
    def vertical_size(self) -> str: ...

@typing.final
class SystemMediaProperties(winrt.system.Object):
    # System.String Windows.Storage.SystemMediaProperties::get_Duration()
    @_property
    def duration(self) -> str: ...
    # System.String Windows.Storage.SystemMediaProperties::get_Producer()
    @_property
    def producer(self) -> str: ...
    # System.String Windows.Storage.SystemMediaProperties::get_Publisher()
    @_property
    def publisher(self) -> str: ...
    # System.String Windows.Storage.SystemMediaProperties::get_SubTitle()
    @_property
    def sub_title(self) -> str: ...
    # System.String Windows.Storage.SystemMediaProperties::get_Writer()
    @_property
    def writer(self) -> str: ...
    # System.String Windows.Storage.SystemMediaProperties::get_Year()
    @_property
    def year(self) -> str: ...

@typing.final
class SystemMusicProperties(winrt.system.Object):
    # System.String Windows.Storage.SystemMusicProperties::get_AlbumArtist()
    @_property
    def album_artist(self) -> str: ...
    # System.String Windows.Storage.SystemMusicProperties::get_AlbumTitle()
    @_property
    def album_title(self) -> str: ...
    # System.String Windows.Storage.SystemMusicProperties::get_Artist()
    @_property
    def artist(self) -> str: ...
    # System.String Windows.Storage.SystemMusicProperties::get_Composer()
    @_property
    def composer(self) -> str: ...
    # System.String Windows.Storage.SystemMusicProperties::get_Conductor()
    @_property
    def conductor(self) -> str: ...
    # System.String Windows.Storage.SystemMusicProperties::get_DisplayArtist()
    @_property
    def display_artist(self) -> str: ...
    # System.String Windows.Storage.SystemMusicProperties::get_Genre()
    @_property
    def genre(self) -> str: ...
    # System.String Windows.Storage.SystemMusicProperties::get_TrackNumber()
    @_property
    def track_number(self) -> str: ...

@typing.final
class SystemPhotoProperties(winrt.system.Object):
    # System.String Windows.Storage.SystemPhotoProperties::get_CameraManufacturer()
    @_property
    def camera_manufacturer(self) -> str: ...
    # System.String Windows.Storage.SystemPhotoProperties::get_CameraModel()
    @_property
    def camera_model(self) -> str: ...
    # System.String Windows.Storage.SystemPhotoProperties::get_DateTaken()
    @_property
    def date_taken(self) -> str: ...
    # System.String Windows.Storage.SystemPhotoProperties::get_Orientation()
    @_property
    def orientation(self) -> str: ...
    # System.String Windows.Storage.SystemPhotoProperties::get_PeopleNames()
    @_property
    def people_names(self) -> str: ...

@typing.final
class SystemProperties_Static(winrt._winrt.IInspectable_Static):
    # Windows.Storage.SystemAudioProperties Windows.Storage.SystemProperties::get_Audio()
    @_property
    def audio(cls) -> SystemAudioProperties: ...
    # System.String Windows.Storage.SystemProperties::get_Author()
    @_property
    def author(cls) -> str: ...
    # System.String Windows.Storage.SystemProperties::get_Comment()
    @_property
    def comment(cls) -> str: ...
    # Windows.Storage.SystemGPSProperties Windows.Storage.SystemProperties::get_GPS()
    @_property
    def gps(cls) -> SystemGPSProperties: ...
    # Windows.Storage.SystemImageProperties Windows.Storage.SystemProperties::get_Image()
    @_property
    def image(cls) -> SystemImageProperties: ...
    # System.String Windows.Storage.SystemProperties::get_ItemNameDisplay()
    @_property
    def item_name_display(cls) -> str: ...
    # System.String Windows.Storage.SystemProperties::get_Keywords()
    @_property
    def keywords(cls) -> str: ...
    # Windows.Storage.SystemMediaProperties Windows.Storage.SystemProperties::get_Media()
    @_property
    def media(cls) -> SystemMediaProperties: ...
    # Windows.Storage.SystemMusicProperties Windows.Storage.SystemProperties::get_Music()
    @_property
    def music(cls) -> SystemMusicProperties: ...
    # Windows.Storage.SystemPhotoProperties Windows.Storage.SystemProperties::get_Photo()
    @_property
    def photo(cls) -> SystemPhotoProperties: ...
    # System.String Windows.Storage.SystemProperties::get_Rating()
    @_property
    def rating(cls) -> str: ...
    # System.String Windows.Storage.SystemProperties::get_Title()
    @_property
    def title(cls) -> str: ...
    # Windows.Storage.SystemVideoProperties Windows.Storage.SystemProperties::get_Video()
    @_property
    def video(cls) -> SystemVideoProperties: ...

@typing.final
class SystemProperties(winrt.system.Object, metaclass=SystemProperties_Static):
    pass

@typing.final
class SystemVideoProperties(winrt.system.Object):
    # System.String Windows.Storage.SystemVideoProperties::get_Director()
    @_property
    def director(self) -> str: ...
    # System.String Windows.Storage.SystemVideoProperties::get_FrameHeight()
    @_property
    def frame_height(self) -> str: ...
    # System.String Windows.Storage.SystemVideoProperties::get_FrameWidth()
    @_property
    def frame_width(self) -> str: ...
    # System.String Windows.Storage.SystemVideoProperties::get_Orientation()
    @_property
    def orientation(self) -> str: ...
    # System.String Windows.Storage.SystemVideoProperties::get_TotalBitrate()
    @_property
    def total_bitrate(self) -> str: ...

@typing.final
class UserDataPaths_Static(winrt._winrt.IInspectable_Static):
    # Windows.Storage.UserDataPaths Windows.Storage.UserDataPaths::GetDefault()
    def get_default(cls) -> UserDataPaths: ...
    # Windows.Storage.UserDataPaths Windows.Storage.UserDataPaths::GetForUser(Windows.System.User)
    def get_for_user(cls, user: windows_system.User, /) -> UserDataPaths: ...

@typing.final
class UserDataPaths(winrt.system.Object, metaclass=UserDataPaths_Static):
    # System.String Windows.Storage.UserDataPaths::get_CameraRoll()
    @_property
    def camera_roll(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Cookies()
    @_property
    def cookies(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Desktop()
    @_property
    def desktop(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Documents()
    @_property
    def documents(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Downloads()
    @_property
    def downloads(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Favorites()
    @_property
    def favorites(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_History()
    @_property
    def history(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_InternetCache()
    @_property
    def internet_cache(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_LocalAppData()
    @_property
    def local_app_data(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_LocalAppDataLow()
    @_property
    def local_app_data_low(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Music()
    @_property
    def music(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Pictures()
    @_property
    def pictures(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Profile()
    @_property
    def profile(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Recent()
    @_property
    def recent(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_RoamingAppData()
    @_property
    def roaming_app_data(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_SavedPictures()
    @_property
    def saved_pictures(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Screenshots()
    @_property
    def screenshots(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Templates()
    @_property
    def templates(self) -> str: ...
    # System.String Windows.Storage.UserDataPaths::get_Videos()
    @_property
    def videos(self) -> str: ...

@typing.final
class _IStorageFile: ...

class IStorageFile(windows_storage_streams.IInputStreamReference, windows_storage_streams.IRandomAccessStreamReference, IStorageItem, winrt._winrt.IInspectable):
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageFile::CopyAndReplaceAsync(Windows.Storage.IStorageFile)
    @abstractmethod
    def copy_and_replace_async(self, file_to_replace: IStorageFile, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.IStorageFile::CopyAsync(Windows.Storage.IStorageFolder,System.String,Windows.Storage.NameCollisionOption)
    @abstractmethod
    def copy_overload(self, destination_folder: IStorageFolder, desired_new_name: str, option: NameCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.IStorageFile::CopyAsync(Windows.Storage.IStorageFolder)
    @abstractmethod
    def copy_overload_default_name_and_options(self, destination_folder: IStorageFolder, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.IStorageFile::CopyAsync(Windows.Storage.IStorageFolder,System.String)
    @abstractmethod
    def copy_overload_default_options(self, destination_folder: IStorageFolder, desired_new_name: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageFile::MoveAndReplaceAsync(Windows.Storage.IStorageFile)
    @abstractmethod
    def move_and_replace_async(self, file_to_replace: IStorageFile, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageFile::MoveAsync(Windows.Storage.IStorageFolder,System.String,Windows.Storage.NameCollisionOption)
    @abstractmethod
    def move_overload(self, destination_folder: IStorageFolder, desired_new_name: str, option: NameCollisionOption, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageFile::MoveAsync(Windows.Storage.IStorageFolder)
    @abstractmethod
    def move_overload_default_name_and_options(self, destination_folder: IStorageFolder, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageFile::MoveAsync(Windows.Storage.IStorageFolder,System.String)
    @abstractmethod
    def move_overload_default_options(self, destination_folder: IStorageFolder, desired_new_name: str, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IRandomAccessStream> Windows.Storage.IStorageFile::OpenAsync(Windows.Storage.FileAccessMode)
    @abstractmethod
    def open_async(self, access_mode: FileAccessMode, /) -> windows_foundation.IAsyncOperation[windows_storage_streams.IRandomAccessStream]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageStreamTransaction> Windows.Storage.IStorageFile::OpenTransactedWriteAsync()
    @abstractmethod
    def open_transacted_write_async(self) -> windows_foundation.IAsyncOperation[StorageStreamTransaction]: ...
    # System.String Windows.Storage.IStorageFile::get_ContentType()
    @_property
    @abstractmethod
    def content_type(self) -> str: ...
    # System.String Windows.Storage.IStorageFile::get_FileType()
    @_property
    @abstractmethod
    def file_type(self) -> str: ...

@typing.final
class _IStorageFile2: ...

class IStorageFile2(winrt._winrt.IInspectable):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageStreamTransaction> Windows.Storage.IStorageFile2::OpenTransactedWriteAsync(Windows.Storage.StorageOpenOptions)
    @abstractmethod
    def open_transacted_write_with_options_async(self, options: StorageOpenOptions, /) -> windows_foundation.IAsyncOperation[StorageStreamTransaction]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IRandomAccessStream> Windows.Storage.IStorageFile2::OpenAsync(Windows.Storage.FileAccessMode,Windows.Storage.StorageOpenOptions)
    @abstractmethod
    def open_with_options_async(self, access_mode: FileAccessMode, options: StorageOpenOptions, /) -> windows_foundation.IAsyncOperation[windows_storage_streams.IRandomAccessStream]: ...

@typing.final
class _IStorageFilePropertiesWithAvailability: ...

class IStorageFilePropertiesWithAvailability(winrt._winrt.IInspectable):
    # System.Boolean Windows.Storage.IStorageFilePropertiesWithAvailability::get_IsAvailable()
    @_property
    @abstractmethod
    def is_available(self) -> bool: ...

@typing.final
class _IStorageFolder: ...

class IStorageFolder(IStorageItem, winrt._winrt.IInspectable):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.IStorageFolder::CreateFileAsync(System.String,Windows.Storage.CreationCollisionOption)
    @abstractmethod
    def create_file_async(self, desired_name: str, options: CreationCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.IStorageFolder::CreateFileAsync(System.String)
    @abstractmethod
    def create_file_async_overload_default_options(self, desired_name: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.IStorageFolder::CreateFolderAsync(System.String,Windows.Storage.CreationCollisionOption)
    @abstractmethod
    def create_folder_async(self, desired_name: str, options: CreationCollisionOption, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.IStorageFolder::CreateFolderAsync(System.String)
    @abstractmethod
    def create_folder_async_overload_default_options(self, desired_name: str, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFile> Windows.Storage.IStorageFolder::GetFileAsync(System.String)
    @abstractmethod
    def get_file_async(self, name: str, /) -> windows_foundation.IAsyncOperation[StorageFile]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageFile>> Windows.Storage.IStorageFolder::GetFilesAsync()
    @abstractmethod
    def get_files_async_overload_default_options_start_and_count(self) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageFile]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.IStorageFolder::GetFolderAsync(System.String)
    @abstractmethod
    def get_folder_async(self, name: str, /) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.StorageFolder>> Windows.Storage.IStorageFolder::GetFoldersAsync()
    @abstractmethod
    def get_folders_async_overload_default_options_start_and_count(self) -> windows_foundation.IAsyncOperation[typing.Sequence[StorageFolder]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.IStorageItem> Windows.Storage.IStorageFolder::GetItemAsync(System.String)
    @abstractmethod
    def get_item_async(self, name: str, /) -> windows_foundation.IAsyncOperation[IStorageItem]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Storage.IStorageItem>> Windows.Storage.IStorageFolder::GetItemsAsync()
    @abstractmethod
    def get_items_async_overload_default_start_and_count(self) -> windows_foundation.IAsyncOperation[typing.Sequence[IStorageItem]]: ...

@typing.final
class _IStorageFolder2: ...

class IStorageFolder2(winrt._winrt.IInspectable):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.IStorageItem> Windows.Storage.IStorageFolder2::TryGetItemAsync(System.String)
    @abstractmethod
    def try_get_item_async(self, name: str, /) -> windows_foundation.IAsyncOperation[typing.Optional[IStorageItem]]: ...

@typing.final
class _IStorageItem: ...

class IStorageItem(winrt._winrt.IInspectable):
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageItem::DeleteAsync(Windows.Storage.StorageDeleteOption)
    @abstractmethod
    def delete_async(self, option: StorageDeleteOption, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageItem::DeleteAsync()
    @abstractmethod
    def delete_async_overload_default_options(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.BasicProperties> Windows.Storage.IStorageItem::GetBasicPropertiesAsync()
    @abstractmethod
    def get_basic_properties_async(self) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.BasicProperties]: ...
    # System.Boolean Windows.Storage.IStorageItem::IsOfType(Windows.Storage.StorageItemTypes)
    @abstractmethod
    def is_of_type(self, type: StorageItemTypes, /) -> bool: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageItem::RenameAsync(System.String,Windows.Storage.NameCollisionOption)
    @abstractmethod
    def rename_async(self, desired_name: str, option: NameCollisionOption, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Storage.IStorageItem::RenameAsync(System.String)
    @abstractmethod
    def rename_async_overload_default_options(self, desired_name: str, /) -> windows_foundation.IAsyncAction: ...
    # Windows.Storage.FileAttributes Windows.Storage.IStorageItem::get_Attributes()
    @_property
    @abstractmethod
    def attributes(self) -> FileAttributes: ...
    # Windows.Foundation.DateTime Windows.Storage.IStorageItem::get_DateCreated()
    @_property
    @abstractmethod
    def date_created(self) -> datetime.datetime: ...
    # System.String Windows.Storage.IStorageItem::get_Name()
    @_property
    @abstractmethod
    def name(self) -> str: ...
    # System.String Windows.Storage.IStorageItem::get_Path()
    @_property
    @abstractmethod
    def path(self) -> str: ...

@typing.final
class _IStorageItem2: ...

class IStorageItem2(IStorageItem, winrt._winrt.IInspectable):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.StorageFolder> Windows.Storage.IStorageItem2::GetParentAsync()
    @abstractmethod
    def get_parent_async(self) -> windows_foundation.IAsyncOperation[StorageFolder]: ...
    # System.Boolean Windows.Storage.IStorageItem2::IsEqual(Windows.Storage.IStorageItem)
    @abstractmethod
    def is_equal(self, item: IStorageItem, /) -> bool: ...

@typing.final
class _IStorageItemProperties: ...

class IStorageItemProperties(winrt._winrt.IInspectable):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.IStorageItemProperties::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32,Windows.Storage.FileProperties.ThumbnailOptions)
    @abstractmethod
    def get_thumbnail_async(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, options: windows_storage_fileproperties.ThumbnailOptions, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.IStorageItemProperties::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32)
    @abstractmethod
    def get_thumbnail_async_overload_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.IStorageItemProperties::GetThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode)
    @abstractmethod
    def get_thumbnail_async_overload_default_size_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # System.String Windows.Storage.IStorageItemProperties::get_DisplayName()
    @_property
    @abstractmethod
    def display_name(self) -> str: ...
    # System.String Windows.Storage.IStorageItemProperties::get_DisplayType()
    @_property
    @abstractmethod
    def display_type(self) -> str: ...
    # System.String Windows.Storage.IStorageItemProperties::get_FolderRelativeId()
    @_property
    @abstractmethod
    def folder_relative_id(self) -> str: ...
    # Windows.Storage.FileProperties.StorageItemContentProperties Windows.Storage.IStorageItemProperties::get_Properties()
    @_property
    @abstractmethod
    def properties(self) -> windows_storage_fileproperties.StorageItemContentProperties: ...

@typing.final
class _IStorageItemProperties2: ...

class IStorageItemProperties2(IStorageItemProperties, winrt._winrt.IInspectable):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.IStorageItemProperties2::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32,Windows.Storage.FileProperties.ThumbnailOptions)
    @abstractmethod
    def get_scaled_image_as_thumbnail_async(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, options: windows_storage_fileproperties.ThumbnailOptions, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.IStorageItemProperties2::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode,System.UInt32)
    @abstractmethod
    def get_scaled_image_as_thumbnail_async_overload_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, requested_size: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.FileProperties.StorageItemThumbnail> Windows.Storage.IStorageItemProperties2::GetScaledImageAsThumbnailAsync(Windows.Storage.FileProperties.ThumbnailMode)
    @abstractmethod
    def get_scaled_image_as_thumbnail_async_overload_default_size_default_options(self, mode: windows_storage_fileproperties.ThumbnailMode, /) -> windows_foundation.IAsyncOperation[windows_storage_fileproperties.StorageItemThumbnail]: ...

@typing.final
class _IStorageItemPropertiesWithProvider: ...

class IStorageItemPropertiesWithProvider(IStorageItemProperties, winrt._winrt.IInspectable):
    # Windows.Storage.StorageProvider Windows.Storage.IStorageItemPropertiesWithProvider::get_Provider()
    @_property
    @abstractmethod
    def provider(self) -> StorageProvider: ...

@typing.final
class _IStreamedFileDataRequest: ...

class IStreamedFileDataRequest(winrt._winrt.IInspectable):
    # System.Void Windows.Storage.IStreamedFileDataRequest::FailAndClose(Windows.Storage.StreamedFileFailureMode)
    @abstractmethod
    def fail_and_close(self, failure_mode: StreamedFileFailureMode, /) -> None: ...

