// WARNING: Please don't edit this file. It was generated by Swift/WinRT v0.0.1

#pragma once
// Header files for imported files
#include <inspectable.h>
#include <EventToken.h>
#include <windowscontracts.h>
#include "Windows.Foundation.h"
// Importing Collections header
#include "Windows.Foundation.Collections.h"

/* Forward Declarations */
#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_FWD_DEFINED__

    #ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2 __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2 __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2 __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_FWD_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory;

#endif // ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_FWD_DEFINED__

// Parameterized interface forward declarations (C)

// Collection interface definitions

typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult;

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult** result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult** result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1_HSTRING __x_ABI_C__FIIterator_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1_HSTRING;

    typedef struct __x_ABI_C__FIIterator_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1_HSTRING* This,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1_HSTRING* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1_HSTRING* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1_HSTRING* This,
        UINT32 itemsLength,
        HSTRING* items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1_HSTRINGVtbl;

    interface __x_ABI_C__FIIterator_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1_HSTRING __x_ABI_C__FIIterable_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1_HSTRING;

    typedef struct __x_ABI_C__FIIterable_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1_HSTRING* This,
        __x_ABI_C__FIIterator_1_HSTRING** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1_HSTRINGVtbl;

    interface __x_ABI_C__FIIterable_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1_HSTRING __x_ABI_C__FIVectorView_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1_HSTRING;

    typedef struct __x_ABI_C__FIVectorView_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1_HSTRING* This,
        UINT32 index,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1_HSTRING* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1_HSTRING* This,
        HSTRING value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1_HSTRING* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        HSTRING* items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1_HSTRINGVtbl;

    interface __x_ABI_C__FIVectorView_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING;

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING* handler);
    HRESULT (STDMETHODCALLTYPE* get_Completed)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This,
        __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING** result);
    HRESULT (STDMETHODCALLTYPE* GetResults)(__x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* This,
        __x_ABI_C__FIVectorView_1_HSTRING** result);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRINGVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING;

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRINGVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING* asyncInfo,
        enum __x_ABI_CWindows_CFoundation_CAsyncStatus asyncStatus);

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRINGVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRINGVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1_HSTRING_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier;

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier;

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem;

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem;

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData;

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData;

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption;

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Current)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** result);
    HRESULT (STDMETHODCALLTYPE* get_HasCurrent)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* MoveNext)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption;

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* First)(__x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        __x_ABI_C__FIIterator_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption** result);

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier;

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        UINT32 index,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem;

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        UINT32 index,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItemVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData;

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        UINT32 index,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodDataVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption;

    //  Declare the parameterized interface IID.
    EXTERN_C const IID IID___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption;

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        UINT32 index,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** items,
        UINT32* result);

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__
    
typedef enum __x_ABI_CWindows_CFoundation_CAsyncStatus __x_ABI_CWindows_CFoundation_CAsyncStatus;

#ifndef ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet;

#endif // ____x_ABI_CWindows_CFoundation_CCollections_CIPropertySet_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIAsyncAction __x_ABI_CWindows_CFoundation_CIAsyncAction;

#endif // ____x_ABI_CWindows_CFoundation_CIAsyncAction_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIAsyncInfo __x_ABI_CWindows_CFoundation_CIAsyncInfo;

#endif // ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIUriRuntimeClass __x_ABI_CWindows_CFoundation_CIUriRuntimeClass;

#endif // ____x_ABI_CWindows_CFoundation_CIUriRuntimeClass_FWD_DEFINED__

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus;

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence;

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind;

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus;

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus;

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType;

enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus
    {
        __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus_Unknown = 0,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus_Yes = 1,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus_No = 2,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus_NotAllowed = 3,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus_UserNotSignedIn = 4,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus_SpecifiedPaymentMethodIdsNotSupported = 5,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus_NoQualifyingCardOnFile = 6,
};

enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence
    {
        __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence_None = 0,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence_Optional = 1,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence_Required = 2,
};

enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind
    {
        __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind_ShippingOption = 0,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind_ShippingAddress = 1,
};

enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus
    {
        __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus_Succeeded = 0,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus_Failed = 1,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus_Unknown = 2,
};

enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus
    {
        __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus_Succeeded = 0,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus_Failed = 1,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus_Canceled = 2,
};

enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType
    {
        __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType_Shipping = 0,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType_Delivery = 1,
    __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType_Pickup = 2,
};

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandlerVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* paymentRequest,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* args);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandlerVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandlerVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler;
    #endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddressVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Country)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Country)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_AddressLines)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* put_AddressLines)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        __x_ABI_C__FIVectorView_1_HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Region)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Region)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_City)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_City)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_DependentLocality)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_DependentLocality)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_PostalCode)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_PostalCode)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_SortingCode)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_SortingCode)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_LanguageCode)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_LanguageCode)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Organization)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Organization)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Recipient)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Recipient)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_PhoneNumber)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_PhoneNumber)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Properties)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress* This,
        __x_ABI_CWindows_CFoundation_CCollections_CIPropertySet** value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddressVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddressVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Status)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus* value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentCanMakePaymentResultStatus value,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResult** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCanMakePaymentResultFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Currency)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Currency)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_CurrencySystem)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_CurrencySystem)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Value)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Value)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* This,
        HSTRING value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory* This,
        HSTRING value,
        HSTRING currency,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithCurrencySystem)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory* This,
        HSTRING value,
        HSTRING currency,
        HSTRING currencySystem,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Total)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem** value);
    HRESULT (STDMETHODCALLTYPE* put_Total)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* value);
    HRESULT (STDMETHODCALLTYPE* get_DisplayItems)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem** value);
    HRESULT (STDMETHODCALLTYPE* put_DisplayItems)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* value);
    HRESULT (STDMETHODCALLTYPE* get_ShippingOptions)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption** value);
    HRESULT (STDMETHODCALLTYPE* put_ShippingOptions)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentShippingOption* value);
    HRESULT (STDMETHODCALLTYPE* get_Modifiers)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier** value);
    HRESULT (STDMETHODCALLTYPE* put_Modifiers)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentDetailsModifier* value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* total,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithDisplayItems)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* total,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* displayItems,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_JsonData)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_SupportedMethodIds)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_Total)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem** value);
    HRESULT (STDMETHODCALLTYPE* get_AdditionalDisplayItems)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem** value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This,
        __x_ABI_C__FIIterable_1_HSTRING* supportedMethodIds,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* total,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithAdditionalDisplayItems)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This,
        __x_ABI_C__FIIterable_1_HSTRING* supportedMethodIds,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* total,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* additionalDisplayItems,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithAdditionalDisplayItemsAndJsonData)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory* This,
        __x_ABI_C__FIIterable_1_HSTRING* supportedMethodIds,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* total,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentItem* additionalDisplayItems,
        HSTRING jsonData,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Label)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Label)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Amount)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount** value);
    HRESULT (STDMETHODCALLTYPE* put_Amount)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* value);
    HRESULT (STDMETHODCALLTYPE* get_Pending)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_Pending)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem* This,
        boolean value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory* This,
        HSTRING label,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* amount,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediatorVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetSupportedMethodIdsAsync)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1_HSTRING** result);
    HRESULT (STDMETHODCALLTYPE* SubmitPaymentRequestAsync)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* paymentRequest,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult** result);
    HRESULT (STDMETHODCALLTYPE* SubmitPaymentRequestWithChangeHandlerAsync)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* paymentRequest,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler* changeHandler,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentRequestSubmitResult** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediatorVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediatorVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CanMakePaymentAsync)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* paymentRequest,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentCanMakePaymentResult** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2Vtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_PackageFullName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Uri)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* This,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass** value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory* This,
        __x_ABI_CWindows_CFoundation_CIUriRuntimeClass* uri,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_SupportedMethodIds)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* This,
        __x_ABI_C__FIVectorView_1_HSTRING** value);
    HRESULT (STDMETHODCALLTYPE* get_JsonData)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory* This,
        __x_ABI_C__FIIterable_1_HSTRING* supportedMethodIds,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithJsonData)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory* This,
        __x_ABI_C__FIIterable_1_HSTRING* supportedMethodIds,
        HSTRING jsonData,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptionsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_RequestPayerEmail)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence* value);
    HRESULT (STDMETHODCALLTYPE* put_RequestPayerEmail)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence value);
    HRESULT (STDMETHODCALLTYPE* get_RequestPayerName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence* value);
    HRESULT (STDMETHODCALLTYPE* put_RequestPayerName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence value);
    HRESULT (STDMETHODCALLTYPE* get_RequestPayerPhoneNumber)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence* value);
    HRESULT (STDMETHODCALLTYPE* put_RequestPayerPhoneNumber)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence value);
    HRESULT (STDMETHODCALLTYPE* get_RequestShipping)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_RequestShipping)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_ShippingType)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType* value);
    HRESULT (STDMETHODCALLTYPE* put_ShippingType)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptionsVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptionsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_MerchantInfo)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo** value);
    HRESULT (STDMETHODCALLTYPE* get_Details)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails** value);
    HRESULT (STDMETHODCALLTYPE* get_MethodData)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData** value);
    HRESULT (STDMETHODCALLTYPE* get_Options)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions** value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Id)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2Vtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_ChangeKind)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind* value);
    HRESULT (STDMETHODCALLTYPE* get_ShippingAddress)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress** value);
    HRESULT (STDMETHODCALLTYPE* get_SelectedShippingOption)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** value);
    HRESULT (STDMETHODCALLTYPE* Acknowledge)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* changeResult);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgsVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_ChangeAcceptedByMerchant)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_ChangeAcceptedByMerchant)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_Message)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Message)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_UpdatedPaymentDetails)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails** value);
    HRESULT (STDMETHODCALLTYPE* put_UpdatedPaymentDetails)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory* This,
        boolean changeAcceptedByMerchant,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithPaymentDetails)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory* This,
        boolean changeAcceptedByMerchant,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* updatedPaymentDetails,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* details,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* methodData,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithMerchantInfo)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* details,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* methodData,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* merchantInfo,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithMerchantInfoAndOptions)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* details,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* methodData,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* merchantInfo,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* options,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateWithMerchantInfoOptionsAndId)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails* details,
        __x_ABI_C__FIIterable_1___x_ABI_CWindows__CApplicationModel__CPayments__CPaymentMethodData* methodData,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo* merchantInfo,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions* options,
        HSTRING id,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2Vtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Status)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus* value);
    HRESULT (STDMETHODCALLTYPE* get_Response)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse** value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResultVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponseVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_PaymentToken)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken** value);
    HRESULT (STDMETHODCALLTYPE* get_ShippingOption)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** value);
    HRESULT (STDMETHODCALLTYPE* get_ShippingAddress)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress** value);
    HRESULT (STDMETHODCALLTYPE* get_PayerEmail)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_PayerName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_PayerPhoneNumber)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* CompleteAsync)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse* This,
        enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus status,
        __x_ABI_CWindows_CFoundation_CIAsyncAction** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponseVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponseVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Label)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Label)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_Amount)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount** value);
    HRESULT (STDMETHODCALLTYPE* put_Amount)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* value);
    HRESULT (STDMETHODCALLTYPE* get_Tag)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* put_Tag)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_IsSelected)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsSelected)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption* This,
        boolean value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This,
        HSTRING label,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* amount,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithSelected)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This,
        HSTRING label,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* amount,
        boolean selected,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithSelectedAndTag)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory* This,
        HSTRING label,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount* amount,
        boolean selected,
        HSTRING tag,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_PaymentMethodId)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_JsonDetails)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken* This,
        HSTRING* value);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactoryVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Create)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory* This,
        HSTRING paymentMethodId,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken** result);
    HRESULT (STDMETHODCALLTYPE* CreateWithJsonDetails)(__x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory* This,
        HSTRING paymentMethodId,
        HSTRING jsonDetails,
        __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken** result);

        END_INTERFACE
    } __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactoryVtbl;

    interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory
    {
        CONST_VTBL struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactoryVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory;
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_INTERFACE_DEFINED__) */
    
