//
// Copyright (c) Microsoft Corporation. All rights reserved.
// 
//
// File generated by WinMDIDL version 8.00.0021
//

import "inspectable.idl";
import "AsyncInfo.idl";
import "EventToken.idl";
import "windowscontracts.idl";
import "Windows.Foundation.idl";
import "Windows.Storage.idl";

// Forward Declare
namespace Windows
{
    namespace Foundation
    {
        typedef struct DateTime DateTime;

        interface IAsyncAction;

        apicontract UniversalApiContract;

        runtimeclass Uri;
    }
}
namespace Windows
{
    namespace Storage
    {
        runtimeclass StorageFile;
    }
}
namespace Windows
{
    namespace ApplicationModel
    {
        namespace Store
        {
            typedef enum FulfillmentResult FulfillmentResult;

            typedef enum ProductPurchaseStatus ProductPurchaseStatus;

            typedef enum ProductType ProductType;

            delegate LicenseChangedEventHandler;

            interface ICurrentApp;

            interface ICurrentApp2Statics;

            interface ICurrentAppSimulator;

            interface ICurrentAppSimulatorStaticsWithFiltering;

            interface ICurrentAppSimulatorWithCampaignId;

            interface ICurrentAppSimulatorWithConsumables;

            interface ICurrentAppStaticsWithFiltering;

            interface ICurrentAppWithCampaignId;

            interface ICurrentAppWithConsumables;

            interface ILicenseInformation;

            interface IListingInformation;

            interface IListingInformation2;

            interface IProductLicense;

            interface IProductLicenseWithFulfillment;

            interface IProductListing;

            interface IProductListing2;

            interface IProductListingWithConsumables;

            interface IProductListingWithMetadata;

            interface IProductPurchaseDisplayProperties;

            interface IProductPurchaseDisplayPropertiesFactory;

            interface IPurchaseResults;

            interface IUnfulfilledConsumable;

            runtimeclass CurrentApp;

            runtimeclass CurrentAppSimulator;

            runtimeclass LicenseInformation;

            runtimeclass ListingInformation;

            runtimeclass ProductLicense;

            runtimeclass ProductListing;

            runtimeclass ProductPurchaseDisplayProperties;

            runtimeclass PurchaseResults;

            runtimeclass UnfulfilledConsumable;
        }
    }
}

// Generic instantiations
namespace Windows
{
    namespace ApplicationModel
    {
        namespace Store
        {
            declare
            {
                interface Windows.Foundation.Collections.IIterable<Windows.ApplicationModel.Store.UnfulfilledConsumable*>;

                interface Windows.Foundation.Collections.IIterable<Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.ApplicationModel.Store.ProductLicense*>*>;

                interface Windows.Foundation.Collections.IIterable<Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.ApplicationModel.Store.ProductListing*>*>;

                interface Windows.Foundation.Collections.IIterator<Windows.ApplicationModel.Store.UnfulfilledConsumable*>;

                interface Windows.Foundation.Collections.IIterator<Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.ApplicationModel.Store.ProductLicense*>*>;

                interface Windows.Foundation.Collections.IIterator<Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.ApplicationModel.Store.ProductListing*>*>;

                interface Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.ApplicationModel.Store.ProductLicense*>;

                interface Windows.Foundation.Collections.IKeyValuePair<HSTRING, Windows.ApplicationModel.Store.ProductListing*>;

                interface Windows.Foundation.Collections.IMapView<HSTRING, Windows.ApplicationModel.Store.ProductLicense*>;

                interface Windows.Foundation.Collections.IMapView<HSTRING, Windows.ApplicationModel.Store.ProductListing*>;

                interface Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Store.UnfulfilledConsumable*>;

                interface Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.FulfillmentResult>;

                interface Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.ListingInformation*>;

                interface Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.PurchaseResults*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Store.UnfulfilledConsumable*>*>;
            }
        }
    }
}

// Type definition
namespace Windows
{
    namespace ApplicationModel
    {
        namespace Store
        {
            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum FulfillmentResult
            {
                Succeeded        = 0,
                NothingToFulfill = 1,
                PurchasePending  = 2,
                PurchaseReverted = 3,
                ServerError      = 4
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum ProductPurchaseStatus
            {
                Succeeded        = 0,
                AlreadyPurchased = 1,
                NotFulfilled     = 2,
                NotPurchased     = 3
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum ProductType
            {
                Unknown    = 0,
                Durable    = 1,
                Consumable = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [uuid(D4A50255-1369-4C36-832F-6F2D88E3659B)]
            delegate
                HRESULT LicenseChangedEventHandler();

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentApp)]
            [uuid(D52DC065-DA3F-4685-995E-9B482EB5E603)]
            interface ICurrentApp : IInspectable
            {
                [propget] HRESULT LicenseInformation([out] [retval] Windows.ApplicationModel.Store.LicenseInformation** value);
                [propget] HRESULT LinkUri([out] [retval] Windows.Foundation.Uri** value);
                [propget] HRESULT AppId([out] [retval] GUID* value);
                HRESULT RequestAppPurchaseAsync([in] boolean includeReceipt, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** requestAppPurchaseOperation);
                [deprecated("RequestProductPurchaseAsync(productId, includeReceipt) may be altered or unavailable for releases after Windows 8.1. Instead, use RequestProductPurchaseAsync(productId).", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [overload("RequestProductPurchaseAsync")] HRESULT RequestProductPurchaseAsync([in] HSTRING productId, [in] boolean includeReceipt, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** requestProductPurchaseOperation);
                HRESULT LoadListingInformationAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.ListingInformation*>** loadListingOperation);
                HRESULT GetAppReceiptAsync([out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** appReceiptOperation);
                HRESULT GetProductReceiptAsync([in] HSTRING productId, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** getProductReceiptOperation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentApp)]
            [uuid(DF4E6E2D-3171-4AD3-8614-2C61244373CB)]
            interface ICurrentApp2Statics : IInspectable
            {
                HRESULT GetCustomerPurchaseIdAsync([in] HSTRING serviceTicket, [in] HSTRING publisherUserId, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** operation);
                HRESULT GetCustomerCollectionsIdAsync([in] HSTRING serviceTicket, [in] HSTRING publisherUserId, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentAppSimulator)]
            [uuid(F17F9DB1-74CD-4787-9787-19866E9A5559)]
            interface ICurrentAppSimulator : IInspectable
            {
                [propget] HRESULT LicenseInformation([out] [retval] Windows.ApplicationModel.Store.LicenseInformation** value);
                [propget] HRESULT LinkUri([out] [retval] Windows.Foundation.Uri** value);
                [propget] HRESULT AppId([out] [retval] GUID* value);
                HRESULT RequestAppPurchaseAsync([in] boolean includeReceipt, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** requestAppPurchaseOperation);
                [deprecated("RequestProductPurchaseAsync(productId, includeReceipt) may be altered or unavailable for releases after Windows 8.1. Instead, use RequestProductPurchaseAsync(productId).", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [overload("RequestProductPurchaseAsync")] HRESULT RequestProductPurchaseAsync([in] HSTRING productId, [in] boolean includeReceipt, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** requestProductPurchaseOperation);
                HRESULT LoadListingInformationAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.ListingInformation*>** loadListingOperation);
                HRESULT GetAppReceiptAsync([out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** appReceiptOperation);
                HRESULT GetProductReceiptAsync([in] HSTRING productId, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** getProductReceiptOperation);
                HRESULT ReloadSimulatorAsync([in] Windows.Storage.StorageFile* simulatorSettingsFile, [out] [retval] Windows.Foundation.IAsyncAction** reloadSimulatorOperation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentAppSimulator)]
            [uuid(617E70E2-F86F-4B54-9666-DDE285092C68)]
            interface ICurrentAppSimulatorStaticsWithFiltering : IInspectable
            {
                HRESULT LoadListingInformationByProductIdsAsync([in] Windows.Foundation.Collections.IIterable<HSTRING>* productIds, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.ListingInformation*>** loadListingOperation);
                HRESULT LoadListingInformationByKeywordsAsync([in] Windows.Foundation.Collections.IIterable<HSTRING>* keywords, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.ListingInformation*>** loadListingOperation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentAppSimulator)]
            [uuid(84678A43-DF00-4672-A43F-B25B1441CFCF)]
            interface ICurrentAppSimulatorWithCampaignId : IInspectable
            {
                HRESULT GetAppPurchaseCampaignIdAsync([out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentAppSimulator)]
            [uuid(4E51F0AB-20E7-4412-9B85-59BB78388667)]
            interface ICurrentAppSimulatorWithConsumables : IInspectable
            {
                HRESULT ReportConsumableFulfillmentAsync([in] HSTRING productId, [in] GUID transactionId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.FulfillmentResult>** reportConsumableFulfillmentOperation);
                [overload("RequestProductPurchaseAsync")] HRESULT RequestProductPurchaseWithResultsAsync([in] HSTRING productId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.PurchaseResults*>** requestProductPurchaseWithResultsOperation);
                [overload("RequestProductPurchaseAsync")] HRESULT RequestProductPurchaseWithDisplayPropertiesAsync([in] HSTRING productId, [in] HSTRING offerId, [in] Windows.ApplicationModel.Store.ProductPurchaseDisplayProperties* displayProperties, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.PurchaseResults*>** requestProductPurchaseWithDisplayPropertiesOperation);
                HRESULT GetUnfulfilledConsumablesAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Store.UnfulfilledConsumable*>*>** getUnfulfilledConsumablesOperation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentApp)]
            [uuid(D36D6542-9085-438E-97BA-A25C976BE2FD)]
            interface ICurrentAppStaticsWithFiltering : IInspectable
            {
                HRESULT LoadListingInformationByProductIdsAsync([in] Windows.Foundation.Collections.IIterable<HSTRING>* productIds, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.ListingInformation*>** loadListingOperation);
                HRESULT LoadListingInformationByKeywordsAsync([in] Windows.Foundation.Collections.IIterable<HSTRING>* keywords, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.ListingInformation*>** loadListingOperation);
                HRESULT ReportProductFulfillment([in] HSTRING productId);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentApp)]
            [uuid(312F4CD0-36C1-44A6-B32B-432D608E4DD6)]
            interface ICurrentAppWithCampaignId : IInspectable
            {
                HRESULT GetAppPurchaseCampaignIdAsync([out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.CurrentApp)]
            [uuid(844E0071-9E4F-4F79-995A-5F91172E6CEF)]
            interface ICurrentAppWithConsumables : IInspectable
            {
                HRESULT ReportConsumableFulfillmentAsync([in] HSTRING productId, [in] GUID transactionId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.FulfillmentResult>** reportConsumableFulfillmentOperation);
                [overload("RequestProductPurchaseAsync")] HRESULT RequestProductPurchaseWithResultsAsync([in] HSTRING productId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.PurchaseResults*>** requestProductPurchaseWithResultsOperation);
                [overload("RequestProductPurchaseAsync")] HRESULT RequestProductPurchaseWithDisplayPropertiesAsync([in] HSTRING productId, [in] HSTRING offerId, [in] Windows.ApplicationModel.Store.ProductPurchaseDisplayProperties* displayProperties, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.Store.PurchaseResults*>** requestProductPurchaseWithDisplayPropertiesOperation);
                HRESULT GetUnfulfilledConsumablesAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.Store.UnfulfilledConsumable*>*>** getUnfulfilledConsumablesOperation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.LicenseInformation)]
            [uuid(8EB7DC30-F170-4ED5-8E21-1516DA3FD367)]
            interface ILicenseInformation : IInspectable
            {
                [propget] HRESULT ProductLicenses([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, Windows.ApplicationModel.Store.ProductLicense*>** value);
                [propget] HRESULT IsActive([out] [retval] boolean* value);
                [propget] HRESULT IsTrial([out] [retval] boolean* value);
                [propget] HRESULT ExpirationDate([out] [retval] Windows.Foundation.DateTime* value);
                [eventadd] HRESULT LicenseChanged([in] Windows.ApplicationModel.Store.LicenseChangedEventHandler* handler, [out] [retval] EventRegistrationToken* cookie);
                [eventremove] HRESULT LicenseChanged([in] EventRegistrationToken cookie);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ListingInformation)]
            [uuid(588B4ABF-BC74-4383-B78C-99606323DECE)]
            interface IListingInformation : IInspectable
            {
                [propget] HRESULT CurrentMarket([out] [retval] HSTRING* value);
                [propget] HRESULT Description([out] [retval] HSTRING* value);
                [propget] HRESULT ProductListings([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, Windows.ApplicationModel.Store.ProductListing*>** value);
                [propget] HRESULT FormattedPrice([out] [retval] HSTRING* value);
                [propget] HRESULT Name([out] [retval] HSTRING* value);
                [propget] HRESULT AgeRating([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ListingInformation)]
            [uuid(C0FD2C1D-B30E-4384-84EA-72FEFA82223E)]
            interface IListingInformation2 : IInspectable
            {
                [propget] HRESULT FormattedBasePrice([out] [retval] HSTRING* value);
                [propget] HRESULT SaleEndDate([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT IsOnSale([out] [retval] boolean* value);
                [propget] HRESULT CurrencyCode([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ProductLicense)]
            [uuid(363308C7-2BCF-4C0E-8F2F-E808AAA8F99D)]
            interface IProductLicense : IInspectable
            {
                [propget] HRESULT ProductId([out] [retval] HSTRING* value);
                [propget] HRESULT IsActive([out] [retval] boolean* value);
                [propget] HRESULT ExpirationDate([out] [retval] Windows.Foundation.DateTime* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ProductLicense)]
            [uuid(FC535C8A-F667-40F3-BA3C-045A63ABB3AC)]
            interface IProductLicenseWithFulfillment : IInspectable
                requires
                    Windows.ApplicationModel.Store.IProductLicense
            {
                [propget] HRESULT IsConsumable([out] [retval] boolean* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ProductListing)]
            [uuid(45A7D6AD-C750-4D9C-947C-B00DCBF9E9C2)]
            interface IProductListing : IInspectable
            {
                [propget] HRESULT ProductId([out] [retval] HSTRING* value);
                [propget] HRESULT FormattedPrice([out] [retval] HSTRING* value);
                [propget] HRESULT Name([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ProductListing)]
            [uuid(F89E290F-73FE-494D-A939-08A9B2495ABE)]
            interface IProductListing2 : IInspectable
            {
                [propget] HRESULT FormattedBasePrice([out] [retval] HSTRING* value);
                [propget] HRESULT SaleEndDate([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT IsOnSale([out] [retval] boolean* value);
                [propget] HRESULT CurrencyCode([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ProductListing)]
            [uuid(EB9E9790-8F6B-481F-93A7-5C3A63068149)]
            interface IProductListingWithConsumables : IInspectable
            {
                [propget] HRESULT ProductType([out] [retval] Windows.ApplicationModel.Store.ProductType* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ProductListing)]
            [uuid(124DA567-23F8-423E-9532-189943C40ACE)]
            interface IProductListingWithMetadata : IInspectable
                requires
                    Windows.ApplicationModel.Store.IProductListing
            {
                [propget] HRESULT Description([out] [retval] HSTRING* value);
                [propget] HRESULT Keywords([out] [retval] Windows.Foundation.Collections.IIterable<HSTRING>** value);
                [propget] HRESULT ProductType([out] [retval] Windows.ApplicationModel.Store.ProductType* value);
                [propget] HRESULT Tag([out] [retval] HSTRING* value);
                [propget] HRESULT ImageUri([out] [retval] Windows.Foundation.Uri** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ProductPurchaseDisplayProperties)]
            [uuid(D70B7420-BC92-401B-A809-C9B2E5DBBDAF)]
            interface IProductPurchaseDisplayProperties : IInspectable
            {
                [propget] HRESULT Name([out] [retval] HSTRING* value);
                [propput] HRESULT Name([in] HSTRING value);
                [propget] HRESULT Description([out] [retval] HSTRING* value);
                [propput] HRESULT Description([in] HSTRING value);
                [propget] HRESULT Image([out] [retval] Windows.Foundation.Uri** value);
                [propput] HRESULT Image([in] Windows.Foundation.Uri* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.ProductPurchaseDisplayProperties)]
            [uuid(6F491DF4-32D6-4B40-B474-B83038A4D9CF)]
            interface IProductPurchaseDisplayPropertiesFactory : IInspectable
            {
                HRESULT CreateProductPurchaseDisplayProperties([in] HSTRING name, [out] [retval] Windows.ApplicationModel.Store.ProductPurchaseDisplayProperties** displayProperties);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.PurchaseResults)]
            [uuid(ED50B37E-8656-4F65-B8C8-AC7E0CB1A1C2)]
            interface IPurchaseResults : IInspectable
            {
                [propget] HRESULT Status([out] [retval] Windows.ApplicationModel.Store.ProductPurchaseStatus* value);
                [propget] HRESULT TransactionId([out] [retval] GUID* value);
                [propget] HRESULT ReceiptXml([out] [retval] HSTRING* value);
                [propget] HRESULT OfferId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.ApplicationModel.Store.UnfulfilledConsumable)]
            [uuid(2DF7FBBB-1CDD-4CB8-A014-7B9CF8986927)]
            interface IUnfulfilledConsumable : IInspectable
            {
                [propget] HRESULT ProductId([out] [retval] HSTRING* value);
                [propget] HRESULT TransactionId([out] [retval] GUID* value);
                [propget] HRESULT OfferId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.ApplicationModel.Store.ICurrentApp, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.ApplicationModel.Store.ICurrentApp2Statics, Windows.Foundation.UniversalApiContract, 2.0)]
            [static(Windows.ApplicationModel.Store.ICurrentAppStaticsWithFiltering, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.ApplicationModel.Store.ICurrentAppWithCampaignId, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.ApplicationModel.Store.ICurrentAppWithConsumables, Windows.Foundation.UniversalApiContract, 1.0)]
            [threading(both)]
            runtimeclass CurrentApp
            {
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.ApplicationModel.Store.ICurrentAppSimulator, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.ApplicationModel.Store.ICurrentAppSimulatorStaticsWithFiltering, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.ApplicationModel.Store.ICurrentAppSimulatorWithCampaignId, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.ApplicationModel.Store.ICurrentAppSimulatorWithConsumables, Windows.Foundation.UniversalApiContract, 1.0)]
            [threading(both)]
            runtimeclass CurrentAppSimulator
            {
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass LicenseInformation
            {
                [default] interface Windows.ApplicationModel.Store.ILicenseInformation;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ListingInformation
            {
                [default] interface Windows.ApplicationModel.Store.IListingInformation;
                [contract(Windows.Foundation.UniversalApiContract, 2.0)] interface Windows.ApplicationModel.Store.IListingInformation2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ProductLicense
            {
                [default] interface Windows.ApplicationModel.Store.IProductLicense;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.Store.IProductLicenseWithFulfillment;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ProductListing
            {
                [default] interface Windows.ApplicationModel.Store.IProductListing;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.ApplicationModel.Store.IProductListingWithMetadata;
                [contract(Windows.Foundation.UniversalApiContract, 2.0)] interface Windows.ApplicationModel.Store.IProductListing2;
            }

            [activatable(Windows.ApplicationModel.Store.IProductPurchaseDisplayPropertiesFactory, Windows.Foundation.UniversalApiContract, 1.0)]
            [activatable(Windows.Foundation.UniversalApiContract, 1.0)]
            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ProductPurchaseDisplayProperties
            {
                [default] interface Windows.ApplicationModel.Store.IProductPurchaseDisplayProperties;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass PurchaseResults
            {
                [default] interface Windows.ApplicationModel.Store.IPurchaseResults;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UnfulfilledConsumable
            {
                [default] interface Windows.ApplicationModel.Store.IUnfulfilledConsumable;
            }
        }
    }
}
