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

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

import winrt._winrt
import winrt.system
import winrt.windows.applicationmodel as windows_applicationmodel
import winrt.windows.foundation as windows_foundation
import winrt.windows.foundation.collections as windows_foundation_collections
import winrt.windows.system as windows_system
import winrt.windows.web.http as windows_web_http

from winrt.windows.services.store import StoreCanLicenseStatus, StoreConsumableStatus, StoreDurationUnit, StorePackageUpdateState, StorePurchaseStatus, StoreQueueItemExtendedState, StoreQueueItemKind, StoreQueueItemState, StoreRateAndReviewStatus, StoreUninstallStorePackageStatus

Self = typing.TypeVar('Self')

@typing.final
class StorePackageUpdateStatus:
    @_property
    def package_family_name(self) -> str: ...
    @_property
    def package_download_size_in_bytes(self) -> winrt.system.UInt64: ...
    @_property
    def package_bytes_downloaded(self) -> winrt.system.UInt64: ...
    @_property
    def package_download_progress(self) -> winrt.system.Double: ...
    @_property
    def total_download_progress(self) -> winrt.system.Double: ...
    @_property
    def package_update_state(self) -> StorePackageUpdateState: ...
    def __new__(cls, package_family_name: str = "", package_download_size_in_bytes: winrt.system.UInt64 = 0, package_bytes_downloaded: winrt.system.UInt64 = 0, package_download_progress: winrt.system.Double = 0, total_download_progress: winrt.system.Double = 0, package_update_state: StorePackageUpdateState = StorePackageUpdateState(0)) -> StorePackageUpdateStatus: ...
    def __replace__(self, /, **changes: typing.Any) -> StorePackageUpdateStatus: ...
    def unpack(self) -> typing.Tuple[str, winrt.system.UInt64, winrt.system.UInt64, winrt.system.Double, winrt.system.Double, StorePackageUpdateState]: ...

@typing.final
class StoreAcquireLicenseResult(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StoreAcquireLicenseResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # Windows.Services.Store.StorePackageLicense Windows.Services.Store.StoreAcquireLicenseResult::get_StorePackageLicense()
    @_property
    def store_package_license(self) -> StorePackageLicense: ...

@typing.final
class StoreAppLicense(winrt.system.Object):
    # Windows.Foundation.Collections.IMapView`2<System.String,Windows.Services.Store.StoreLicense> Windows.Services.Store.StoreAppLicense::get_AddOnLicenses()
    @_property
    def add_on_licenses(self) -> typing.Mapping[str, StoreLicense]: ...
    # Windows.Foundation.DateTime Windows.Services.Store.StoreAppLicense::get_ExpirationDate()
    @_property
    def expiration_date(self) -> datetime.datetime: ...
    # System.String Windows.Services.Store.StoreAppLicense::get_ExtendedJsonData()
    @_property
    def extended_json_data(self) -> str: ...
    # System.Boolean Windows.Services.Store.StoreAppLicense::get_IsActive()
    @_property
    def is_active(self) -> bool: ...
    # System.Boolean Windows.Services.Store.StoreAppLicense::get_IsTrial()
    @_property
    def is_trial(self) -> bool: ...
    # System.Boolean Windows.Services.Store.StoreAppLicense::get_IsTrialOwnedByThisUser()
    @_property
    def is_trial_owned_by_this_user(self) -> bool: ...
    # System.String Windows.Services.Store.StoreAppLicense::get_SkuStoreId()
    @_property
    def sku_store_id(self) -> str: ...
    # Windows.Foundation.TimeSpan Windows.Services.Store.StoreAppLicense::get_TrialTimeRemaining()
    @_property
    def trial_time_remaining(self) -> datetime.timedelta: ...
    # System.String Windows.Services.Store.StoreAppLicense::get_TrialUniqueId()
    @_property
    def trial_unique_id(self) -> str: ...
    # System.Boolean Windows.Services.Store.StoreAppLicense::get_IsDiscLicense()
    @_property
    def is_disc_license(self) -> bool: ...

@typing.final
class StoreAvailability(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreAvailability::RequestPurchaseAsync()
    def request_purchase_async(self) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreAvailability::RequestPurchaseAsync(Windows.Services.Store.StorePurchaseProperties)
    def request_purchase_with_purchase_properties_async(self, store_purchase_properties: StorePurchaseProperties, /) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # Windows.Foundation.DateTime Windows.Services.Store.StoreAvailability::get_EndDate()
    @_property
    def end_date(self) -> datetime.datetime: ...
    # System.String Windows.Services.Store.StoreAvailability::get_ExtendedJsonData()
    @_property
    def extended_json_data(self) -> str: ...
    # Windows.Services.Store.StorePrice Windows.Services.Store.StoreAvailability::get_Price()
    @_property
    def price(self) -> StorePrice: ...
    # System.String Windows.Services.Store.StoreAvailability::get_StoreId()
    @_property
    def store_id(self) -> str: ...

@typing.final
class StoreCanAcquireLicenseResult(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StoreCanAcquireLicenseResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # System.String Windows.Services.Store.StoreCanAcquireLicenseResult::get_LicensableSku()
    @_property
    def licensable_sku(self) -> str: ...
    # Windows.Services.Store.StoreCanLicenseStatus Windows.Services.Store.StoreCanAcquireLicenseResult::get_Status()
    @_property
    def status(self) -> StoreCanLicenseStatus: ...

@typing.final
class StoreCollectionData(winrt.system.Object):
    # Windows.Foundation.DateTime Windows.Services.Store.StoreCollectionData::get_AcquiredDate()
    @_property
    def acquired_date(self) -> datetime.datetime: ...
    # System.String Windows.Services.Store.StoreCollectionData::get_CampaignId()
    @_property
    def campaign_id(self) -> str: ...
    # System.String Windows.Services.Store.StoreCollectionData::get_DeveloperOfferId()
    @_property
    def developer_offer_id(self) -> str: ...
    # Windows.Foundation.DateTime Windows.Services.Store.StoreCollectionData::get_EndDate()
    @_property
    def end_date(self) -> datetime.datetime: ...
    # System.String Windows.Services.Store.StoreCollectionData::get_ExtendedJsonData()
    @_property
    def extended_json_data(self) -> str: ...
    # System.Boolean Windows.Services.Store.StoreCollectionData::get_IsTrial()
    @_property
    def is_trial(self) -> bool: ...
    # Windows.Foundation.DateTime Windows.Services.Store.StoreCollectionData::get_StartDate()
    @_property
    def start_date(self) -> datetime.datetime: ...
    # Windows.Foundation.TimeSpan Windows.Services.Store.StoreCollectionData::get_TrialTimeRemaining()
    @_property
    def trial_time_remaining(self) -> datetime.timedelta: ...

@typing.final
class StoreConsumableResult(winrt.system.Object):
    # System.UInt32 Windows.Services.Store.StoreConsumableResult::get_BalanceRemaining()
    @_property
    def balance_remaining(self) -> winrt.system.UInt32: ...
    # Windows.Foundation.HResult Windows.Services.Store.StoreConsumableResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # Windows.Services.Store.StoreConsumableStatus Windows.Services.Store.StoreConsumableResult::get_Status()
    @_property
    def status(self) -> StoreConsumableStatus: ...
    # System.Guid Windows.Services.Store.StoreConsumableResult::get_TrackingId()
    @_property
    def tracking_id(self) -> _uuid.UUID: ...

@typing.final
class StoreContext_Static(winrt._winrt.IInspectable_Static):
    # Windows.Services.Store.StoreContext Windows.Services.Store.StoreContext::GetDefault()
    def get_default(cls) -> StoreContext: ...
    # Windows.Services.Store.StoreContext Windows.Services.Store.StoreContext::GetForUser(Windows.System.User)
    def get_for_user(cls, user: windows_system.User, /) -> StoreContext: ...

@typing.final
class StoreContext(winrt.system.Object, metaclass=StoreContext_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreAcquireLicenseResult> Windows.Services.Store.StoreContext::AcquireStoreLicenseForOptionalPackageAsync(Windows.ApplicationModel.Package)
    def acquire_store_license_for_optional_package_async(self, optional_package: windows_applicationmodel.Package, /) -> windows_foundation.IAsyncOperation[StoreAcquireLicenseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreCanAcquireLicenseResult> Windows.Services.Store.StoreContext::CanAcquireStoreLicenseAsync(System.String)
    def can_acquire_store_license_async(self, product_store_id: str, /) -> windows_foundation.IAsyncOperation[StoreCanAcquireLicenseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreCanAcquireLicenseResult> Windows.Services.Store.StoreContext::CanAcquireStoreLicenseForOptionalPackageAsync(Windows.ApplicationModel.Package)
    def can_acquire_store_license_for_optional_package_async(self, optional_package: windows_applicationmodel.Package, /) -> windows_foundation.IAsyncOperation[StoreCanAcquireLicenseResult]: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<Windows.Services.Store.StorePackageUpdateResult,Windows.Services.Store.StorePackageUpdateStatus> Windows.Services.Store.StoreContext::DownloadAndInstallStorePackagesAsync(Windows.Foundation.Collections.IIterable`1<System.String>)
    def download_and_install_store_packages_async(self, store_ids: typing.Iterable[str], /) -> windows_foundation.IAsyncOperationWithProgress[StorePackageUpdateResult, StorePackageUpdateStatus]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductResult> Windows.Services.Store.StoreContext::FindStoreProductForPackageAsync(Windows.Foundation.Collections.IIterable`1<System.String>,Windows.ApplicationModel.Package)
    def find_store_product_for_package_async(self, product_kinds: typing.Iterable[str], package: windows_applicationmodel.Package, /) -> windows_foundation.IAsyncOperation[StoreProductResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StorePackageUpdate>> Windows.Services.Store.StoreContext::GetAppAndOptionalStorePackageUpdatesAsync()
    def get_app_and_optional_store_package_updates_async(self) -> windows_foundation.IAsyncOperation[typing.Sequence[StorePackageUpdate]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreAppLicense> Windows.Services.Store.StoreContext::GetAppLicenseAsync()
    def get_app_license_async(self) -> windows_foundation.IAsyncOperation[StoreAppLicense]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductQueryResult> Windows.Services.Store.StoreContext::GetAssociatedStoreProductsAsync(Windows.Foundation.Collections.IIterable`1<System.String>)
    def get_associated_store_products_async(self, product_kinds: typing.Iterable[str], /) -> windows_foundation.IAsyncOperation[StoreProductQueryResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductQueryResult> Windows.Services.Store.StoreContext::GetAssociatedStoreProductsByInAppOfferTokenAsync(Windows.Foundation.Collections.IIterable`1<System.String>)
    def get_associated_store_products_by_in_app_offer_token_async(self, in_app_offer_tokens: typing.Iterable[str], /) -> windows_foundation.IAsyncOperation[StoreProductQueryResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductPagedQueryResult> Windows.Services.Store.StoreContext::GetAssociatedStoreProductsWithPagingAsync(Windows.Foundation.Collections.IIterable`1<System.String>,System.UInt32)
    def get_associated_store_products_with_paging_async(self, product_kinds: typing.Iterable[str], max_items_to_retrieve_per_page: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[StoreProductPagedQueryResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreQueueItem>> Windows.Services.Store.StoreContext::GetAssociatedStoreQueueItemsAsync()
    def get_associated_store_queue_items_async(self) -> windows_foundation.IAsyncOperation[typing.Sequence[StoreQueueItem]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreConsumableResult> Windows.Services.Store.StoreContext::GetConsumableBalanceRemainingAsync(System.String)
    def get_consumable_balance_remaining_async(self, product_store_id: str, /) -> windows_foundation.IAsyncOperation[StoreConsumableResult]: ...
    # Windows.Foundation.IAsyncOperation`1<System.String> Windows.Services.Store.StoreContext::GetCustomerCollectionsIdAsync(System.String,System.String)
    def get_customer_collections_id_async(self, service_ticket: str, publisher_user_id: str, /) -> windows_foundation.IAsyncOperation[str]: ...
    # Windows.Foundation.IAsyncOperation`1<System.String> Windows.Services.Store.StoreContext::GetCustomerPurchaseIdAsync(System.String,System.String)
    def get_customer_purchase_id_async(self, service_ticket: str, publisher_user_id: str, /) -> windows_foundation.IAsyncOperation[str]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductResult> Windows.Services.Store.StoreContext::GetStoreProductForCurrentAppAsync()
    def get_store_product_for_current_app_async(self) -> windows_foundation.IAsyncOperation[StoreProductResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductQueryResult> Windows.Services.Store.StoreContext::GetStoreProductsAsync(Windows.Foundation.Collections.IIterable`1<System.String>,Windows.Foundation.Collections.IIterable`1<System.String>)
    def get_store_products_async(self, product_kinds: typing.Iterable[str], store_ids: typing.Iterable[str], /) -> windows_foundation.IAsyncOperation[StoreProductQueryResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductQueryResult> Windows.Services.Store.StoreContext::GetStoreProductsAsync(Windows.Foundation.Collections.IIterable`1<System.String>,Windows.Foundation.Collections.IIterable`1<System.String>,Windows.Services.Store.StoreProductOptions)
    def get_store_products_with_options_async(self, product_kinds: typing.Iterable[str], store_ids: typing.Iterable[str], store_product_options: StoreProductOptions, /) -> windows_foundation.IAsyncOperation[StoreProductQueryResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreQueueItem>> Windows.Services.Store.StoreContext::GetStoreQueueItemsAsync(Windows.Foundation.Collections.IIterable`1<System.String>)
    def get_store_queue_items_async(self, store_ids: typing.Iterable[str], /) -> windows_foundation.IAsyncOperation[typing.Sequence[StoreQueueItem]]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductQueryResult> Windows.Services.Store.StoreContext::GetUserCollectionAsync(Windows.Foundation.Collections.IIterable`1<System.String>)
    def get_user_collection_async(self, product_kinds: typing.Iterable[str], /) -> windows_foundation.IAsyncOperation[StoreProductQueryResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductPagedQueryResult> Windows.Services.Store.StoreContext::GetUserCollectionWithPagingAsync(Windows.Foundation.Collections.IIterable`1<System.String>,System.UInt32)
    def get_user_collection_with_paging_async(self, product_kinds: typing.Iterable[str], max_items_to_retrieve_per_page: winrt.system.UInt32, /) -> windows_foundation.IAsyncOperation[StoreProductPagedQueryResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductQueryResult> Windows.Services.Store.StoreContext::GetUserPurchaseHistoryAsync(Windows.Foundation.Collections.IIterable`1<System.String>)
    def get_user_purchase_history_async(self, product_kinds: typing.Iterable[str], /) -> windows_foundation.IAsyncOperation[StoreProductQueryResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreConsumableResult> Windows.Services.Store.StoreContext::ReportConsumableFulfillmentAsync(System.String,System.UInt32,System.Guid)
    def report_consumable_fulfillment_async(self, product_store_id: str, quantity: winrt.system.UInt32, tracking_id: _uuid.UUID, /) -> windows_foundation.IAsyncOperation[StoreConsumableResult]: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<Windows.Services.Store.StorePackageUpdateResult,Windows.Services.Store.StorePackageUpdateStatus> Windows.Services.Store.StoreContext::RequestDownloadAndInstallStorePackageUpdatesAsync(Windows.Foundation.Collections.IIterable`1<Windows.Services.Store.StorePackageUpdate>)
    def request_download_and_install_store_package_updates_async(self, store_package_updates: typing.Iterable[StorePackageUpdate], /) -> windows_foundation.IAsyncOperationWithProgress[StorePackageUpdateResult, StorePackageUpdateStatus]: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<Windows.Services.Store.StorePackageUpdateResult,Windows.Services.Store.StorePackageUpdateStatus> Windows.Services.Store.StoreContext::RequestDownloadAndInstallStorePackagesAsync(Windows.Foundation.Collections.IIterable`1<System.String>)
    def request_download_and_install_store_packages_async(self, store_ids: typing.Iterable[str], /) -> windows_foundation.IAsyncOperationWithProgress[StorePackageUpdateResult, StorePackageUpdateStatus]: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<Windows.Services.Store.StorePackageUpdateResult,Windows.Services.Store.StorePackageUpdateStatus> Windows.Services.Store.StoreContext::RequestDownloadAndInstallStorePackagesAsync(Windows.Foundation.Collections.IIterable`1<System.String>,Windows.Services.Store.StorePackageInstallOptions)
    def request_download_and_install_store_packages_with_install_options_async(self, store_ids: typing.Iterable[str], store_package_install_options: StorePackageInstallOptions, /) -> windows_foundation.IAsyncOperationWithProgress[StorePackageUpdateResult, StorePackageUpdateStatus]: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<Windows.Services.Store.StorePackageUpdateResult,Windows.Services.Store.StorePackageUpdateStatus> Windows.Services.Store.StoreContext::RequestDownloadStorePackageUpdatesAsync(Windows.Foundation.Collections.IIterable`1<Windows.Services.Store.StorePackageUpdate>)
    def request_download_store_package_updates_async(self, store_package_updates: typing.Iterable[StorePackageUpdate], /) -> windows_foundation.IAsyncOperationWithProgress[StorePackageUpdateResult, StorePackageUpdateStatus]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreContext::RequestPurchaseAsync(System.String)
    def request_purchase_async(self, store_id: str, /) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreContext::RequestPurchaseByInAppOfferTokenAsync(System.String)
    def request_purchase_by_in_app_offer_token_async(self, in_app_offer_token: str, /) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreContext::RequestPurchaseAsync(System.String,Windows.Services.Store.StorePurchaseProperties)
    def request_purchase_with_purchase_properties_async(self, store_id: str, store_purchase_properties: StorePurchaseProperties, /) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreRateAndReviewResult> Windows.Services.Store.StoreContext::RequestRateAndReviewAppAsync()
    def request_rate_and_review_app_async(self) -> windows_foundation.IAsyncOperation[StoreRateAndReviewResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreUninstallStorePackageResult> Windows.Services.Store.StoreContext::RequestUninstallStorePackageAsync(Windows.ApplicationModel.Package)
    def request_uninstall_store_package_async(self, package: windows_applicationmodel.Package, /) -> windows_foundation.IAsyncOperation[StoreUninstallStorePackageResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreUninstallStorePackageResult> Windows.Services.Store.StoreContext::RequestUninstallStorePackageByStoreIdAsync(System.String)
    def request_uninstall_store_package_by_store_id_async(self, store_id: str, /) -> windows_foundation.IAsyncOperation[StoreUninstallStorePackageResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreQueueItem>> Windows.Services.Store.StoreContext::SetInstallOrderForAssociatedStoreQueueItemsAsync(Windows.Foundation.Collections.IIterable`1<Windows.Services.Store.StoreQueueItem>)
    def set_install_order_for_associated_store_queue_items_async(self, items: typing.Iterable[StoreQueueItem], /) -> windows_foundation.IAsyncOperation[typing.Sequence[StoreQueueItem]]: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<Windows.Services.Store.StorePackageUpdateResult,Windows.Services.Store.StorePackageUpdateStatus> Windows.Services.Store.StoreContext::TrySilentDownloadAndInstallStorePackageUpdatesAsync(Windows.Foundation.Collections.IIterable`1<Windows.Services.Store.StorePackageUpdate>)
    def try_silent_download_and_install_store_package_updates_async(self, store_package_updates: typing.Iterable[StorePackageUpdate], /) -> windows_foundation.IAsyncOperationWithProgress[StorePackageUpdateResult, StorePackageUpdateStatus]: ...
    # Windows.Foundation.IAsyncOperationWithProgress`2<Windows.Services.Store.StorePackageUpdateResult,Windows.Services.Store.StorePackageUpdateStatus> Windows.Services.Store.StoreContext::TrySilentDownloadStorePackageUpdatesAsync(Windows.Foundation.Collections.IIterable`1<Windows.Services.Store.StorePackageUpdate>)
    def try_silent_download_store_package_updates_async(self, store_package_updates: typing.Iterable[StorePackageUpdate], /) -> windows_foundation.IAsyncOperationWithProgress[StorePackageUpdateResult, StorePackageUpdateStatus]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreUninstallStorePackageResult> Windows.Services.Store.StoreContext::UninstallStorePackageAsync(Windows.ApplicationModel.Package)
    def uninstall_store_package_async(self, package: windows_applicationmodel.Package, /) -> windows_foundation.IAsyncOperation[StoreUninstallStorePackageResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreUninstallStorePackageResult> Windows.Services.Store.StoreContext::UninstallStorePackageByStoreIdAsync(System.String)
    def uninstall_store_package_by_store_id_async(self, store_id: str, /) -> windows_foundation.IAsyncOperation[StoreUninstallStorePackageResult]: ...
    # Windows.Foundation.EventRegistrationToken Windows.Services.Store.StoreContext::add_OfflineLicensesChanged(Windows.Foundation.TypedEventHandler`2<Windows.Services.Store.StoreContext,System.Object>)
    def add_offline_licenses_changed(self, handler: windows_foundation.TypedEventHandler[StoreContext, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Services.Store.StoreContext::remove_OfflineLicensesChanged(Windows.Foundation.EventRegistrationToken)
    def remove_offline_licenses_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.System.User Windows.Services.Store.StoreContext::get_User()
    @_property
    def user(self) -> windows_system.User: ...
    # System.Boolean Windows.Services.Store.StoreContext::get_CanSilentlyDownloadStorePackageUpdates()
    @_property
    def can_silently_download_store_package_updates(self) -> bool: ...

@typing.final
class StoreImage(winrt.system.Object):
    # System.String Windows.Services.Store.StoreImage::get_Caption()
    @_property
    def caption(self) -> str: ...
    # System.UInt32 Windows.Services.Store.StoreImage::get_Height()
    @_property
    def height(self) -> winrt.system.UInt32: ...
    # System.String Windows.Services.Store.StoreImage::get_ImagePurposeTag()
    @_property
    def image_purpose_tag(self) -> str: ...
    # Windows.Foundation.Uri Windows.Services.Store.StoreImage::get_Uri()
    @_property
    def uri(self) -> windows_foundation.Uri: ...
    # System.UInt32 Windows.Services.Store.StoreImage::get_Width()
    @_property
    def width(self) -> winrt.system.UInt32: ...

@typing.final
class StoreLicense(winrt.system.Object):
    # Windows.Foundation.DateTime Windows.Services.Store.StoreLicense::get_ExpirationDate()
    @_property
    def expiration_date(self) -> datetime.datetime: ...
    # System.String Windows.Services.Store.StoreLicense::get_ExtendedJsonData()
    @_property
    def extended_json_data(self) -> str: ...
    # System.String Windows.Services.Store.StoreLicense::get_InAppOfferToken()
    @_property
    def in_app_offer_token(self) -> str: ...
    # System.Boolean Windows.Services.Store.StoreLicense::get_IsActive()
    @_property
    def is_active(self) -> bool: ...
    # System.String Windows.Services.Store.StoreLicense::get_SkuStoreId()
    @_property
    def sku_store_id(self) -> str: ...

@typing.final
class StorePackageInstallOptions(winrt.system.Object):
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # System.Boolean Windows.Services.Store.StorePackageInstallOptions::get_AllowForcedAppRestart()
    @_property
    def allow_forced_app_restart(self) -> bool: ...
    # System.Void Windows.Services.Store.StorePackageInstallOptions::put_AllowForcedAppRestart(System.Boolean)
    @allow_forced_app_restart.setter
    def allow_forced_app_restart(self, value: bool) -> None: ...

@typing.final
class StorePackageLicense(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.Services.Store.StorePackageLicense::Close()
    def close(self) -> None: ...
    # System.Void Windows.Services.Store.StorePackageLicense::ReleaseLicense()
    def release_license(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Services.Store.StorePackageLicense::add_LicenseLost(Windows.Foundation.TypedEventHandler`2<Windows.Services.Store.StorePackageLicense,System.Object>)
    def add_license_lost(self, handler: windows_foundation.TypedEventHandler[StorePackageLicense, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Services.Store.StorePackageLicense::remove_LicenseLost(Windows.Foundation.EventRegistrationToken)
    def remove_license_lost(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.Boolean Windows.Services.Store.StorePackageLicense::get_IsValid()
    @_property
    def is_valid(self) -> bool: ...
    # Windows.ApplicationModel.Package Windows.Services.Store.StorePackageLicense::get_Package()
    @_property
    def package(self) -> windows_applicationmodel.Package: ...

@typing.final
class StorePackageUpdate(winrt.system.Object):
    # System.Boolean Windows.Services.Store.StorePackageUpdate::get_Mandatory()
    @_property
    def mandatory(self) -> bool: ...
    # Windows.ApplicationModel.Package Windows.Services.Store.StorePackageUpdate::get_Package()
    @_property
    def package(self) -> windows_applicationmodel.Package: ...

@typing.final
class StorePackageUpdateResult(winrt.system.Object):
    # Windows.Services.Store.StorePackageUpdateState Windows.Services.Store.StorePackageUpdateResult::get_OverallState()
    @_property
    def overall_state(self) -> StorePackageUpdateState: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StorePackageUpdateStatus> Windows.Services.Store.StorePackageUpdateResult::get_StorePackageUpdateStatuses()
    @_property
    def store_package_update_statuses(self) -> typing.Sequence[StorePackageUpdateStatus]: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreQueueItem> Windows.Services.Store.StorePackageUpdateResult::get_StoreQueueItems()
    @_property
    def store_queue_items(self) -> typing.Sequence[StoreQueueItem]: ...

@typing.final
class StorePrice(winrt.system.Object):
    # System.String Windows.Services.Store.StorePrice::get_CurrencyCode()
    @_property
    def currency_code(self) -> str: ...
    # System.String Windows.Services.Store.StorePrice::get_FormattedBasePrice()
    @_property
    def formatted_base_price(self) -> str: ...
    # System.String Windows.Services.Store.StorePrice::get_FormattedPrice()
    @_property
    def formatted_price(self) -> str: ...
    # System.String Windows.Services.Store.StorePrice::get_FormattedRecurrencePrice()
    @_property
    def formatted_recurrence_price(self) -> str: ...
    # System.Boolean Windows.Services.Store.StorePrice::get_IsOnSale()
    @_property
    def is_on_sale(self) -> bool: ...
    # Windows.Foundation.DateTime Windows.Services.Store.StorePrice::get_SaleEndDate()
    @_property
    def sale_end_date(self) -> datetime.datetime: ...
    # System.String Windows.Services.Store.StorePrice::get_UnformattedBasePrice()
    @_property
    def unformatted_base_price(self) -> str: ...
    # System.String Windows.Services.Store.StorePrice::get_UnformattedPrice()
    @_property
    def unformatted_price(self) -> str: ...
    # System.String Windows.Services.Store.StorePrice::get_UnformattedRecurrencePrice()
    @_property
    def unformatted_recurrence_price(self) -> str: ...

@typing.final
class StoreProduct(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<System.Boolean> Windows.Services.Store.StoreProduct::GetIsAnySkuInstalledAsync()
    def get_is_any_sku_installed_async(self) -> windows_foundation.IAsyncOperation[bool]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreProduct::RequestPurchaseAsync()
    def request_purchase_async(self) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreProduct::RequestPurchaseAsync(Windows.Services.Store.StorePurchaseProperties)
    def request_purchase_with_purchase_properties_async(self, store_purchase_properties: StorePurchaseProperties, /) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # System.String Windows.Services.Store.StoreProduct::get_Description()
    @_property
    def description(self) -> str: ...
    # System.String Windows.Services.Store.StoreProduct::get_ExtendedJsonData()
    @_property
    def extended_json_data(self) -> str: ...
    # System.Boolean Windows.Services.Store.StoreProduct::get_HasDigitalDownload()
    @_property
    def has_digital_download(self) -> bool: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreImage> Windows.Services.Store.StoreProduct::get_Images()
    @_property
    def images(self) -> typing.Sequence[StoreImage]: ...
    # System.String Windows.Services.Store.StoreProduct::get_InAppOfferToken()
    @_property
    def in_app_offer_token(self) -> str: ...
    # System.Boolean Windows.Services.Store.StoreProduct::get_IsInUserCollection()
    @_property
    def is_in_user_collection(self) -> bool: ...
    # Windows.Foundation.Collections.IVectorView`1<System.String> Windows.Services.Store.StoreProduct::get_Keywords()
    @_property
    def keywords(self) -> typing.Sequence[str]: ...
    # System.String Windows.Services.Store.StoreProduct::get_Language()
    @_property
    def language(self) -> str: ...
    # Windows.Foundation.Uri Windows.Services.Store.StoreProduct::get_LinkUri()
    @_property
    def link_uri(self) -> windows_foundation.Uri: ...
    # Windows.Services.Store.StorePrice Windows.Services.Store.StoreProduct::get_Price()
    @_property
    def price(self) -> StorePrice: ...
    # System.String Windows.Services.Store.StoreProduct::get_ProductKind()
    @_property
    def product_kind(self) -> str: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreSku> Windows.Services.Store.StoreProduct::get_Skus()
    @_property
    def skus(self) -> typing.Sequence[StoreSku]: ...
    # System.String Windows.Services.Store.StoreProduct::get_StoreId()
    @_property
    def store_id(self) -> str: ...
    # System.String Windows.Services.Store.StoreProduct::get_Title()
    @_property
    def title(self) -> str: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreVideo> Windows.Services.Store.StoreProduct::get_Videos()
    @_property
    def videos(self) -> typing.Sequence[StoreVideo]: ...

@typing.final
class StoreProductOptions(winrt.system.Object):
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # Windows.Foundation.Collections.IVector`1<System.String> Windows.Services.Store.StoreProductOptions::get_ActionFilters()
    @_property
    def action_filters(self) -> typing.MutableSequence[str]: ...

@typing.final
class StoreProductPagedQueryResult(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreProductPagedQueryResult> Windows.Services.Store.StoreProductPagedQueryResult::GetNextAsync()
    def get_next_async(self) -> windows_foundation.IAsyncOperation[StoreProductPagedQueryResult]: ...
    # Windows.Foundation.HResult Windows.Services.Store.StoreProductPagedQueryResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # System.Boolean Windows.Services.Store.StoreProductPagedQueryResult::get_HasMoreResults()
    @_property
    def has_more_results(self) -> bool: ...
    # Windows.Foundation.Collections.IMapView`2<System.String,Windows.Services.Store.StoreProduct> Windows.Services.Store.StoreProductPagedQueryResult::get_Products()
    @_property
    def products(self) -> typing.Mapping[str, StoreProduct]: ...

@typing.final
class StoreProductQueryResult(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StoreProductQueryResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # Windows.Foundation.Collections.IMapView`2<System.String,Windows.Services.Store.StoreProduct> Windows.Services.Store.StoreProductQueryResult::get_Products()
    @_property
    def products(self) -> typing.Mapping[str, StoreProduct]: ...

@typing.final
class StoreProductResult(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StoreProductResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # Windows.Services.Store.StoreProduct Windows.Services.Store.StoreProductResult::get_Product()
    @_property
    def product(self) -> StoreProduct: ...

@typing.final
class StorePurchaseProperties(winrt.system.Object):
    @typing.overload
    def __new__(cls: typing.Type[Self], name: str) -> Self: ...
    @typing.overload
    def __new__(cls: typing.Type[Self]) -> Self: ...
    # System.String Windows.Services.Store.StorePurchaseProperties::get_Name()
    @_property
    def name(self) -> str: ...
    # System.Void Windows.Services.Store.StorePurchaseProperties::put_Name(System.String)
    @name.setter
    def name(self, value: str) -> None: ...
    # System.String Windows.Services.Store.StorePurchaseProperties::get_ExtendedJsonData()
    @_property
    def extended_json_data(self) -> str: ...
    # System.Void Windows.Services.Store.StorePurchaseProperties::put_ExtendedJsonData(System.String)
    @extended_json_data.setter
    def extended_json_data(self, value: str) -> None: ...

@typing.final
class StorePurchaseResult(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StorePurchaseResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # Windows.Services.Store.StorePurchaseStatus Windows.Services.Store.StorePurchaseResult::get_Status()
    @_property
    def status(self) -> StorePurchaseStatus: ...

@typing.final
class StoreQueueItem(winrt.system.Object):
    # Windows.Foundation.IAsyncAction Windows.Services.Store.StoreQueueItem::CancelInstallAsync()
    def cancel_install_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Services.Store.StoreQueueItemStatus Windows.Services.Store.StoreQueueItem::GetCurrentStatus()
    def get_current_status(self) -> StoreQueueItemStatus: ...
    # Windows.Foundation.IAsyncAction Windows.Services.Store.StoreQueueItem::PauseInstallAsync()
    def pause_install_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.IAsyncAction Windows.Services.Store.StoreQueueItem::ResumeInstallAsync()
    def resume_install_async(self) -> windows_foundation.IAsyncAction: ...
    # Windows.Foundation.EventRegistrationToken Windows.Services.Store.StoreQueueItem::add_Completed(Windows.Foundation.TypedEventHandler`2<Windows.Services.Store.StoreQueueItem,Windows.Services.Store.StoreQueueItemCompletedEventArgs>)
    def add_completed(self, handler: windows_foundation.TypedEventHandler[StoreQueueItem, StoreQueueItemCompletedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Services.Store.StoreQueueItem::remove_Completed(Windows.Foundation.EventRegistrationToken)
    def remove_completed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Services.Store.StoreQueueItem::add_StatusChanged(Windows.Foundation.TypedEventHandler`2<Windows.Services.Store.StoreQueueItem,System.Object>)
    def add_status_changed(self, handler: windows_foundation.TypedEventHandler[StoreQueueItem, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Services.Store.StoreQueueItem::remove_StatusChanged(Windows.Foundation.EventRegistrationToken)
    def remove_status_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Services.Store.StoreQueueItemKind Windows.Services.Store.StoreQueueItem::get_InstallKind()
    @_property
    def install_kind(self) -> StoreQueueItemKind: ...
    # System.String Windows.Services.Store.StoreQueueItem::get_PackageFamilyName()
    @_property
    def package_family_name(self) -> str: ...
    # System.String Windows.Services.Store.StoreQueueItem::get_ProductId()
    @_property
    def product_id(self) -> str: ...

@typing.final
class StoreQueueItemCompletedEventArgs(winrt.system.Object):
    # Windows.Services.Store.StoreQueueItemStatus Windows.Services.Store.StoreQueueItemCompletedEventArgs::get_Status()
    @_property
    def status(self) -> StoreQueueItemStatus: ...

@typing.final
class StoreQueueItemStatus(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StoreQueueItemStatus::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # Windows.Services.Store.StoreQueueItemExtendedState Windows.Services.Store.StoreQueueItemStatus::get_PackageInstallExtendedState()
    @_property
    def package_install_extended_state(self) -> StoreQueueItemExtendedState: ...
    # Windows.Services.Store.StoreQueueItemState Windows.Services.Store.StoreQueueItemStatus::get_PackageInstallState()
    @_property
    def package_install_state(self) -> StoreQueueItemState: ...
    # Windows.Services.Store.StorePackageUpdateStatus Windows.Services.Store.StoreQueueItemStatus::get_UpdateStatus()
    @_property
    def update_status(self) -> StorePackageUpdateStatus: ...

@typing.final
class StoreRateAndReviewResult(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StoreRateAndReviewResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # System.String Windows.Services.Store.StoreRateAndReviewResult::get_ExtendedJsonData()
    @_property
    def extended_json_data(self) -> str: ...
    # Windows.Services.Store.StoreRateAndReviewStatus Windows.Services.Store.StoreRateAndReviewResult::get_Status()
    @_property
    def status(self) -> StoreRateAndReviewStatus: ...
    # System.Boolean Windows.Services.Store.StoreRateAndReviewResult::get_WasUpdated()
    @_property
    def was_updated(self) -> bool: ...

@typing.final
class StoreRequestHelper_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StoreSendRequestResult> Windows.Services.Store.StoreRequestHelper::SendRequestAsync(Windows.Services.Store.StoreContext,System.UInt32,System.String)
    def send_request_async(cls, context: StoreContext, request_kind: winrt.system.UInt32, parameters_as_json: str, /) -> windows_foundation.IAsyncOperation[StoreSendRequestResult]: ...

@typing.final
class StoreRequestHelper(winrt.system.Object, metaclass=StoreRequestHelper_Static):
    pass

@typing.final
class StoreSendRequestResult(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StoreSendRequestResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # System.String Windows.Services.Store.StoreSendRequestResult::get_Response()
    @_property
    def response(self) -> str: ...
    # Windows.Web.Http.HttpStatusCode Windows.Services.Store.StoreSendRequestResult::get_HttpStatusCode()
    @_property
    def http_status_code(self) -> windows_web_http.HttpStatusCode: ...

@typing.final
class StoreSku(winrt.system.Object):
    # Windows.Foundation.IAsyncOperation`1<System.Boolean> Windows.Services.Store.StoreSku::GetIsInstalledAsync()
    def get_is_installed_async(self) -> windows_foundation.IAsyncOperation[bool]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreSku::RequestPurchaseAsync()
    def request_purchase_async(self) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Services.Store.StorePurchaseResult> Windows.Services.Store.StoreSku::RequestPurchaseAsync(Windows.Services.Store.StorePurchaseProperties)
    def request_purchase_with_purchase_properties_async(self, store_purchase_properties: StorePurchaseProperties, /) -> windows_foundation.IAsyncOperation[StorePurchaseResult]: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreAvailability> Windows.Services.Store.StoreSku::get_Availabilities()
    @_property
    def availabilities(self) -> typing.Sequence[StoreAvailability]: ...
    # Windows.Foundation.Collections.IVectorView`1<System.String> Windows.Services.Store.StoreSku::get_BundledSkus()
    @_property
    def bundled_skus(self) -> typing.Sequence[str]: ...
    # Windows.Services.Store.StoreCollectionData Windows.Services.Store.StoreSku::get_CollectionData()
    @_property
    def collection_data(self) -> StoreCollectionData: ...
    # System.String Windows.Services.Store.StoreSku::get_CustomDeveloperData()
    @_property
    def custom_developer_data(self) -> str: ...
    # System.String Windows.Services.Store.StoreSku::get_Description()
    @_property
    def description(self) -> str: ...
    # System.String Windows.Services.Store.StoreSku::get_ExtendedJsonData()
    @_property
    def extended_json_data(self) -> str: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreImage> Windows.Services.Store.StoreSku::get_Images()
    @_property
    def images(self) -> typing.Sequence[StoreImage]: ...
    # System.Boolean Windows.Services.Store.StoreSku::get_IsInUserCollection()
    @_property
    def is_in_user_collection(self) -> bool: ...
    # System.Boolean Windows.Services.Store.StoreSku::get_IsSubscription()
    @_property
    def is_subscription(self) -> bool: ...
    # System.Boolean Windows.Services.Store.StoreSku::get_IsTrial()
    @_property
    def is_trial(self) -> bool: ...
    # System.String Windows.Services.Store.StoreSku::get_Language()
    @_property
    def language(self) -> str: ...
    # Windows.Services.Store.StorePrice Windows.Services.Store.StoreSku::get_Price()
    @_property
    def price(self) -> StorePrice: ...
    # System.String Windows.Services.Store.StoreSku::get_StoreId()
    @_property
    def store_id(self) -> str: ...
    # Windows.Services.Store.StoreSubscriptionInfo Windows.Services.Store.StoreSku::get_SubscriptionInfo()
    @_property
    def subscription_info(self) -> StoreSubscriptionInfo: ...
    # System.String Windows.Services.Store.StoreSku::get_Title()
    @_property
    def title(self) -> str: ...
    # Windows.Foundation.Collections.IVectorView`1<Windows.Services.Store.StoreVideo> Windows.Services.Store.StoreSku::get_Videos()
    @_property
    def videos(self) -> typing.Sequence[StoreVideo]: ...

@typing.final
class StoreSubscriptionInfo(winrt.system.Object):
    # System.UInt32 Windows.Services.Store.StoreSubscriptionInfo::get_BillingPeriod()
    @_property
    def billing_period(self) -> winrt.system.UInt32: ...
    # Windows.Services.Store.StoreDurationUnit Windows.Services.Store.StoreSubscriptionInfo::get_BillingPeriodUnit()
    @_property
    def billing_period_unit(self) -> StoreDurationUnit: ...
    # System.Boolean Windows.Services.Store.StoreSubscriptionInfo::get_HasTrialPeriod()
    @_property
    def has_trial_period(self) -> bool: ...
    # System.UInt32 Windows.Services.Store.StoreSubscriptionInfo::get_TrialPeriod()
    @_property
    def trial_period(self) -> winrt.system.UInt32: ...
    # Windows.Services.Store.StoreDurationUnit Windows.Services.Store.StoreSubscriptionInfo::get_TrialPeriodUnit()
    @_property
    def trial_period_unit(self) -> StoreDurationUnit: ...

@typing.final
class StoreUninstallStorePackageResult(winrt.system.Object):
    # Windows.Foundation.HResult Windows.Services.Store.StoreUninstallStorePackageResult::get_ExtendedError()
    @_property
    def extended_error(self) -> windows_foundation.HResult: ...
    # Windows.Services.Store.StoreUninstallStorePackageStatus Windows.Services.Store.StoreUninstallStorePackageResult::get_Status()
    @_property
    def status(self) -> StoreUninstallStorePackageStatus: ...

@typing.final
class StoreVideo(winrt.system.Object):
    # System.String Windows.Services.Store.StoreVideo::get_Caption()
    @_property
    def caption(self) -> str: ...
    # System.UInt32 Windows.Services.Store.StoreVideo::get_Height()
    @_property
    def height(self) -> winrt.system.UInt32: ...
    # Windows.Services.Store.StoreImage Windows.Services.Store.StoreVideo::get_PreviewImage()
    @_property
    def preview_image(self) -> StoreImage: ...
    # Windows.Foundation.Uri Windows.Services.Store.StoreVideo::get_Uri()
    @_property
    def uri(self) -> windows_foundation.Uri: ...
    # System.String Windows.Services.Store.StoreVideo::get_VideoPurposeTag()
    @_property
    def video_purpose_tag(self) -> str: ...
    # System.UInt32 Windows.Services.Store.StoreVideo::get_Width()
    @_property
    def width(self) -> winrt.system.UInt32: ...

