// C++/WinRT v2.0.250303.1

// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

#pragma once
#ifndef WINRT_Windows_Services_Store_1_H
#define WINRT_Windows_Services_Store_1_H
#include "winrt/impl/Windows.Foundation.0.h"
#include "winrt/impl/Windows.Services.Store.0.h"
WINRT_EXPORT namespace winrt::Windows::Services::Store
{
    struct WINRT_IMPL_EMPTY_BASES IStoreAcquireLicenseResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreAcquireLicenseResult>
    {
        IStoreAcquireLicenseResult(std::nullptr_t = nullptr) noexcept {}
        IStoreAcquireLicenseResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreAppLicense :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreAppLicense>
    {
        IStoreAppLicense(std::nullptr_t = nullptr) noexcept {}
        IStoreAppLicense(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreAppLicense2 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreAppLicense2>
    {
        IStoreAppLicense2(std::nullptr_t = nullptr) noexcept {}
        IStoreAppLicense2(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreAvailability :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreAvailability>
    {
        IStoreAvailability(std::nullptr_t = nullptr) noexcept {}
        IStoreAvailability(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreCanAcquireLicenseResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreCanAcquireLicenseResult>
    {
        IStoreCanAcquireLicenseResult(std::nullptr_t = nullptr) noexcept {}
        IStoreCanAcquireLicenseResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreCollectionData :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreCollectionData>
    {
        IStoreCollectionData(std::nullptr_t = nullptr) noexcept {}
        IStoreCollectionData(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreConsumableResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreConsumableResult>
    {
        IStoreConsumableResult(std::nullptr_t = nullptr) noexcept {}
        IStoreConsumableResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreContext :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreContext>
    {
        IStoreContext(std::nullptr_t = nullptr) noexcept {}
        IStoreContext(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreContext2 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreContext2>
    {
        IStoreContext2(std::nullptr_t = nullptr) noexcept {}
        IStoreContext2(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreContext3 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreContext3>
    {
        IStoreContext3(std::nullptr_t = nullptr) noexcept {}
        IStoreContext3(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreContext4 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreContext4>
    {
        IStoreContext4(std::nullptr_t = nullptr) noexcept {}
        IStoreContext4(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreContext5 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreContext5>
    {
        IStoreContext5(std::nullptr_t = nullptr) noexcept {}
        IStoreContext5(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreContextStatics :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreContextStatics>
    {
        IStoreContextStatics(std::nullptr_t = nullptr) noexcept {}
        IStoreContextStatics(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreImage :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreImage>
    {
        IStoreImage(std::nullptr_t = nullptr) noexcept {}
        IStoreImage(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreLicense :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreLicense>
    {
        IStoreLicense(std::nullptr_t = nullptr) noexcept {}
        IStoreLicense(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePackageInstallOptions :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePackageInstallOptions>
    {
        IStorePackageInstallOptions(std::nullptr_t = nullptr) noexcept {}
        IStorePackageInstallOptions(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePackageLicense :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePackageLicense>,
        impl::require<winrt::Windows::Services::Store::IStorePackageLicense, winrt::Windows::Foundation::IClosable>
    {
        IStorePackageLicense(std::nullptr_t = nullptr) noexcept {}
        IStorePackageLicense(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePackageUpdate :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePackageUpdate>
    {
        IStorePackageUpdate(std::nullptr_t = nullptr) noexcept {}
        IStorePackageUpdate(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePackageUpdateResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePackageUpdateResult>
    {
        IStorePackageUpdateResult(std::nullptr_t = nullptr) noexcept {}
        IStorePackageUpdateResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePackageUpdateResult2 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePackageUpdateResult2>
    {
        IStorePackageUpdateResult2(std::nullptr_t = nullptr) noexcept {}
        IStorePackageUpdateResult2(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePrice :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePrice>
    {
        IStorePrice(std::nullptr_t = nullptr) noexcept {}
        IStorePrice(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePrice2 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePrice2>
    {
        IStorePrice2(std::nullptr_t = nullptr) noexcept {}
        IStorePrice2(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreProduct :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreProduct>
    {
        IStoreProduct(std::nullptr_t = nullptr) noexcept {}
        IStoreProduct(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreProductOptions :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreProductOptions>
    {
        IStoreProductOptions(std::nullptr_t = nullptr) noexcept {}
        IStoreProductOptions(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreProductPagedQueryResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreProductPagedQueryResult>
    {
        IStoreProductPagedQueryResult(std::nullptr_t = nullptr) noexcept {}
        IStoreProductPagedQueryResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreProductQueryResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreProductQueryResult>
    {
        IStoreProductQueryResult(std::nullptr_t = nullptr) noexcept {}
        IStoreProductQueryResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreProductResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreProductResult>
    {
        IStoreProductResult(std::nullptr_t = nullptr) noexcept {}
        IStoreProductResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePurchaseProperties :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePurchaseProperties>
    {
        IStorePurchaseProperties(std::nullptr_t = nullptr) noexcept {}
        IStorePurchaseProperties(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePurchasePropertiesFactory :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePurchasePropertiesFactory>
    {
        IStorePurchasePropertiesFactory(std::nullptr_t = nullptr) noexcept {}
        IStorePurchasePropertiesFactory(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStorePurchaseResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStorePurchaseResult>
    {
        IStorePurchaseResult(std::nullptr_t = nullptr) noexcept {}
        IStorePurchaseResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreQueueItem :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreQueueItem>
    {
        IStoreQueueItem(std::nullptr_t = nullptr) noexcept {}
        IStoreQueueItem(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreQueueItem2 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreQueueItem2>
    {
        IStoreQueueItem2(std::nullptr_t = nullptr) noexcept {}
        IStoreQueueItem2(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreQueueItemCompletedEventArgs :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreQueueItemCompletedEventArgs>
    {
        IStoreQueueItemCompletedEventArgs(std::nullptr_t = nullptr) noexcept {}
        IStoreQueueItemCompletedEventArgs(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreQueueItemStatus :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreQueueItemStatus>
    {
        IStoreQueueItemStatus(std::nullptr_t = nullptr) noexcept {}
        IStoreQueueItemStatus(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreRateAndReviewResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreRateAndReviewResult>
    {
        IStoreRateAndReviewResult(std::nullptr_t = nullptr) noexcept {}
        IStoreRateAndReviewResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreRequestHelperStatics :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreRequestHelperStatics>
    {
        IStoreRequestHelperStatics(std::nullptr_t = nullptr) noexcept {}
        IStoreRequestHelperStatics(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreSendRequestResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreSendRequestResult>
    {
        IStoreSendRequestResult(std::nullptr_t = nullptr) noexcept {}
        IStoreSendRequestResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreSendRequestResult2 :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreSendRequestResult2>
    {
        IStoreSendRequestResult2(std::nullptr_t = nullptr) noexcept {}
        IStoreSendRequestResult2(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreSku :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreSku>
    {
        IStoreSku(std::nullptr_t = nullptr) noexcept {}
        IStoreSku(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreSubscriptionInfo :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreSubscriptionInfo>
    {
        IStoreSubscriptionInfo(std::nullptr_t = nullptr) noexcept {}
        IStoreSubscriptionInfo(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreUninstallStorePackageResult :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreUninstallStorePackageResult>
    {
        IStoreUninstallStorePackageResult(std::nullptr_t = nullptr) noexcept {}
        IStoreUninstallStorePackageResult(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
    struct WINRT_IMPL_EMPTY_BASES IStoreVideo :
        winrt::Windows::Foundation::IInspectable,
        impl::consume_t<IStoreVideo>
    {
        IStoreVideo(std::nullptr_t = nullptr) noexcept {}
        IStoreVideo(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IInspectable(ptr, take_ownership_from_abi) {}
    };
}
#endif
