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

import enum

import winrt.system
from winrt._winrt_windows_storage_search import (
    SortEntry,
    ContentIndexer,
    ContentIndexerQuery,
    IndexableContent,
    QueryOptions,
    SortEntryVector,
    StorageFileQueryResult,
    StorageFolderQueryResult,
    StorageItemQueryResult,
    StorageLibraryChangeTrackerTriggerDetails,
    StorageLibraryContentChangedTriggerDetails,
    ValueAndLanguage,
    _IIndexableContent,
    IIndexableContent,
    _IStorageFolderQueryOperations,
    IStorageFolderQueryOperations,
    _IStorageQueryResultBase,
    IStorageQueryResultBase,
)

__all__ = [
    "CommonFileQuery",
    "CommonFolderQuery",
    "DateStackOption",
    "FolderDepth",
    "IndexedState",
    "IndexerOption",
    "SortEntry",
    "ContentIndexer",
    "ContentIndexerQuery",
    "IndexableContent",
    "QueryOptions",
    "SortEntryVector",
    "StorageFileQueryResult",
    "StorageFolderQueryResult",
    "StorageItemQueryResult",
    "StorageLibraryChangeTrackerTriggerDetails",
    "StorageLibraryContentChangedTriggerDetails",
    "ValueAndLanguage",
    "IIndexableContent",
    "IStorageFolderQueryOperations",
    "IStorageQueryResultBase",
]

class CommonFileQuery(enum.IntEnum):
    DEFAULT_QUERY = 0
    ORDER_BY_NAME = 1
    ORDER_BY_TITLE = 2
    ORDER_BY_MUSIC_PROPERTIES = 3
    ORDER_BY_SEARCH_RANK = 4
    ORDER_BY_DATE = 5

class CommonFolderQuery(enum.IntEnum):
    DEFAULT_QUERY = 0
    GROUP_BY_YEAR = 100
    GROUP_BY_MONTH = 101
    GROUP_BY_ARTIST = 102
    GROUP_BY_ALBUM = 103
    GROUP_BY_ALBUM_ARTIST = 104
    GROUP_BY_COMPOSER = 105
    GROUP_BY_GENRE = 106
    GROUP_BY_PUBLISHED_YEAR = 107
    GROUP_BY_RATING = 108
    GROUP_BY_TAG = 109
    GROUP_BY_AUTHOR = 110
    GROUP_BY_TYPE = 111

class DateStackOption(enum.IntEnum):
    NONE = 0
    YEAR = 1
    MONTH = 2

class FolderDepth(enum.IntEnum):
    SHALLOW = 0
    DEEP = 1

class IndexedState(enum.IntEnum):
    UNKNOWN = 0
    NOT_INDEXED = 1
    PARTIALLY_INDEXED = 2
    FULLY_INDEXED = 3

class IndexerOption(enum.IntEnum):
    USE_INDEXER_WHEN_AVAILABLE = 0
    ONLY_USE_INDEXER = 1
    DO_NOT_USE_INDEXER = 2
    ONLY_USE_INDEXER_AND_OPTIMIZE_FOR_INDEXED_PROPERTIES = 3

winrt.system._mixin_mutable_sequence(SortEntryVector)
