

/* this ALWAYS GENERATED file contains the definitions for the interfaces */


 /* File created by MIDL compiler version 8.01.0622 */
/* @@MIDL_FILE_HEADING(  ) */



/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 500
#endif

/* verify that the <rpcsal.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCSAL_H_VERSION__
#define __REQUIRED_RPCSAL_H_VERSION__ 100
#endif

#include "rpc.h"
#include "rpcndr.h"

#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif /* __RPCNDR_H_VERSION__ */

#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/

#ifndef __windows2Eapplicationmodel2Epayments_h__
#define __windows2Eapplicationmodel2Epayments_h__

#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif

/* Forward Declarations */ 

#ifndef ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier;

#endif 	/* ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__ */


#ifndef ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier;

#endif 	/* ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__ */


#ifndef ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem;

#endif 	/* ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__ */


#ifndef ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem;

#endif 	/* ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__ */


#ifndef ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData;

#endif 	/* ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__ */


#ifndef ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData;

#endif 	/* ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__ */


#ifndef ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption;

#endif 	/* ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__ */


#ifndef ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption;

#endif 	/* ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__ */


#ifndef ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier;

#endif 	/* ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__ */


#ifndef ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem;

#endif 	/* ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__ */


#ifndef ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData;

#endif 	/* ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__ */


#ifndef ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption;

#endif 	/* ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__ */


#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult;

#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult;

#endif 	/* ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_FWD_DEFINED__ */


#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

#endif 	/* ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_FWD_DEFINED__ */


#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentRequestChangedHandler;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentAddress;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentCurrencyAmount;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentCurrencyAmountFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentDetails;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentDetailsFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentDetailsModifier;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentDetailsModifierFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentItem;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentItemFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentMediator;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentMerchantInfo;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentMerchantInfoFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentMethodData;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentMethodDataFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentOptions;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentRequest;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentRequestChangedArgs;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentRequestChangedResult;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentRequestChangedResultFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentRequestFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentRequestSubmitResult;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentResponse;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentShippingOption;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentShippingOptionFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentToken;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#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;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                interface IPaymentTokenFactory;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_FWD_DEFINED__ */


/* header files for imported files */
#include "inspectable.h"
#include "AsyncInfo.h"
#include "EventToken.h"
#include "Windows.Foundation.h"

#ifdef __cplusplus
extern "C"{
#endif 


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0000 */
/* [local] */ 

#ifdef __cplusplus
} /*extern "C"*/ 
#endif
#include <windows.foundation.collections.h>
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentDetailsModifier;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
interface IPaymentDetailsModifier;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0000 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0000_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0332 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0332 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0332_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0332_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0001 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE
#define DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("fafb6774-b665-5b8b-b1ef-95038c3aabe1"))
IIterator<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*, ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<Windows.ApplicationModel.Payments.PaymentDetailsModifier>"; }
};
typedef IIterator<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*> __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_t;
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0001 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0001_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0001_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0333 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0333 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0333_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0333_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0002 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE
#define DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("585d2b3d-cb34-58c4-81f4-1ea157996def"))
IIterable<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*, ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<Windows.ApplicationModel.Payments.PaymentDetailsModifier>"; }
};
typedef IIterable<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*> __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_t;
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentItem;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
interface IPaymentItem;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0002 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0002_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0002_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0334 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0334 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0334_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0334_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0003 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE
#define DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("93c12cc3-6a0b-5f02-ac74-056007472731"))
IIterator<ABI::Windows::ApplicationModel::Payments::PaymentItem*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentItem*, ABI::Windows::ApplicationModel::Payments::IPaymentItem*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<Windows.ApplicationModel.Payments.PaymentItem>"; }
};
typedef IIterator<ABI::Windows::ApplicationModel::Payments::PaymentItem*> __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_t;
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0003 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0003_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0003_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0335 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0335 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0335_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0335_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0004 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE
#define DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("b61b704c-e5fa-5524-8b95-7d03f5d36ae9"))
IIterable<ABI::Windows::ApplicationModel::Payments::PaymentItem*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentItem*, ABI::Windows::ApplicationModel::Payments::IPaymentItem*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<Windows.ApplicationModel.Payments.PaymentItem>"; }
};
typedef IIterable<ABI::Windows::ApplicationModel::Payments::PaymentItem*> __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_t;
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentMethodData;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
interface IPaymentMethodData;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0004 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0004_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0004_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0336 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0336 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0336_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0336_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0005 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE
#define DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("9666522e-e5ac-5374-a5d9-5cf57c4bf689"))
IIterator<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*, ABI::Windows::ApplicationModel::Payments::IPaymentMethodData*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<Windows.ApplicationModel.Payments.PaymentMethodData>"; }
};
typedef IIterator<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*> __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_t;
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0005 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0005_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0005_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0337 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0337 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0337_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0337_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0006 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE
#define DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("8c9ed87e-4add-58a8-ad9a-9dfa48ca250a"))
IIterable<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*, ABI::Windows::ApplicationModel::Payments::IPaymentMethodData*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<Windows.ApplicationModel.Payments.PaymentMethodData>"; }
};
typedef IIterable<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*> __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_t;
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentShippingOption;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
interface IPaymentShippingOption;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0006 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0006_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0006_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0338 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0338 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0338_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0338_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0007 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE
#define DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("49edc9f4-2ce6-534c-b529-5ceec705def5"))
IIterator<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*, ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<Windows.ApplicationModel.Payments.PaymentShippingOption>"; }
};
typedef IIterator<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*> __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_t;
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0007 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0007_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0007_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0339 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0339 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0339_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0339_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0008 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE
#define DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("de881c69-6642-54de-a8f7-d1a88b2404cf"))
IIterable<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*, ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<Windows.ApplicationModel.Payments.PaymentShippingOption>"; }
};
typedef IIterable<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*> __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_t;
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0008 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0008_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0008_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0340 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0340 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0340_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0340_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0009 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE
#define DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("da7e871c-6e0c-5e32-be40-10715a9f75eb"))
IVectorView<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*, ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IVectorView`1<Windows.ApplicationModel.Payments.PaymentDetailsModifier>"; }
};
typedef IVectorView<ABI::Windows::ApplicationModel::Payments::PaymentDetailsModifier*> __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_t;
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_FWD_DEFINED__
#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0009 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0009_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0009_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0341 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0341 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0341_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0341_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0010 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE
#define DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("6baf1241-1fa6-5c22-83ef-415e93cdf7b1"))
IVectorView<ABI::Windows::ApplicationModel::Payments::PaymentItem*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentItem*, ABI::Windows::ApplicationModel::Payments::IPaymentItem*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IVectorView`1<Windows.ApplicationModel.Payments.PaymentItem>"; }
};
typedef IVectorView<ABI::Windows::ApplicationModel::Payments::PaymentItem*> __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_t;
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_FWD_DEFINED__
#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0010 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0010_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0010_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0342 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0342 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0342_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0342_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0011 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE
#define DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("1011b9ba-6a05-5b16-82cf-0175085105e0"))
IVectorView<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*, ABI::Windows::ApplicationModel::Payments::IPaymentMethodData*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IVectorView`1<Windows.ApplicationModel.Payments.PaymentMethodData>"; }
};
typedef IVectorView<ABI::Windows::ApplicationModel::Payments::PaymentMethodData*> __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_t;
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_FWD_DEFINED__
#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0011 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0011_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0011_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0343 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0343 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0343_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0343_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0012 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE
#define DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("8c8128eb-8c33-56dd-9648-39e8040312d4"))
IVectorView<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*, ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IVectorView`1<Windows.ApplicationModel.Payments.PaymentShippingOption>"; }
};
typedef IVectorView<ABI::Windows::ApplicationModel::Payments::PaymentShippingOption*> __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_t;
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_FWD_DEFINED__
#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentRequestChangedResult;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
interface IPaymentRequestChangedResult;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0012 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0012_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0012_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0344 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0344 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0344_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0344_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0013 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("bec8b726-9056-5e47-b22a-0da09aa84afe"))
IAsyncOperationCompletedHandler<ABI::Windows::ApplicationModel::Payments::PaymentRequestChangedResult*> : IAsyncOperationCompletedHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentRequestChangedResult*, ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedResult*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.ApplicationModel.Payments.PaymentRequestChangedResult>"; }
};
typedef IAsyncOperationCompletedHandler<ABI::Windows::ApplicationModel::Payments::PaymentRequestChangedResult*> __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0013 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0013_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0013_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0345 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0345 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0345_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0345_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0014 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_USE
#define DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("0cc32025-ac67-57e2-a0f6-3a8e116cef4c"))
IAsyncOperation<ABI::Windows::ApplicationModel::Payments::PaymentRequestChangedResult*> : IAsyncOperation_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentRequestChangedResult*, ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedResult*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.ApplicationModel.Payments.PaymentRequestChangedResult>"; }
};
typedef IAsyncOperation<ABI::Windows::ApplicationModel::Payments::PaymentRequestChangedResult*> __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_t;
#define ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentRequestSubmitResult;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
interface IPaymentRequestSubmitResult;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0014 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0014_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0014_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0346 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0346 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0346_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0346_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0015 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("cbcd07a6-ae2a-5a70-bc0b-9120560825d1"))
IAsyncOperationCompletedHandler<ABI::Windows::ApplicationModel::Payments::PaymentRequestSubmitResult*> : IAsyncOperationCompletedHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentRequestSubmitResult*, ABI::Windows::ApplicationModel::Payments::IPaymentRequestSubmitResult*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.ApplicationModel.Payments.PaymentRequestSubmitResult>"; }
};
typedef IAsyncOperationCompletedHandler<ABI::Windows::ApplicationModel::Payments::PaymentRequestSubmitResult*> __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0015 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0015_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0015_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0347 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0347 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0347_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0347_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0016 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_USE
#define DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("cf290deb-5549-57c3-8abd-53b76c643cca"))
IAsyncOperation<ABI::Windows::ApplicationModel::Payments::PaymentRequestSubmitResult*> : IAsyncOperation_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::ApplicationModel::Payments::PaymentRequestSubmitResult*, ABI::Windows::ApplicationModel::Payments::IPaymentRequestSubmitResult*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.ApplicationModel.Payments.PaymentRequestSubmitResult>"; }
};
typedef IAsyncOperation<ABI::Windows::ApplicationModel::Payments::PaymentRequestSubmitResult*> __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_t;
#define ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0016 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0016_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0016_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0348 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0348 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0348_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0348_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0017 */
/* [local] */ 

#ifndef DEF___FIIterator_1_HSTRING_USE
#define DEF___FIIterator_1_HSTRING_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("8c304ebb-6615-50a4-8829-879ecd443236"))
IIterator<HSTRING> : IIterator_impl<HSTRING> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<String>"; }
};
typedef IIterator<HSTRING> __FIIterator_1_HSTRING_t;
#define ____FIIterator_1_HSTRING_FWD_DEFINED__
#define __FIIterator_1_HSTRING ABI::Windows::Foundation::Collections::__FIIterator_1_HSTRING_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterator_1_HSTRING_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0017 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0017_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0017_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0349 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0349 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0349_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0349_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0018 */
/* [local] */ 

#ifndef DEF___FIIterable_1_HSTRING_USE
#define DEF___FIIterable_1_HSTRING_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("e2fcc7c1-3bfc-5a0b-b2b0-72e769d1cb7e"))
IIterable<HSTRING> : IIterable_impl<HSTRING> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<String>"; }
};
typedef IIterable<HSTRING> __FIIterable_1_HSTRING_t;
#define ____FIIterable_1_HSTRING_FWD_DEFINED__
#define __FIIterable_1_HSTRING ABI::Windows::Foundation::Collections::__FIIterable_1_HSTRING_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterable_1_HSTRING_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0018 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0018_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0018_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0350 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0350 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0350_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0350_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0019 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_HSTRING_USE
#define DEF___FIVectorView_1_HSTRING_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("2f13c006-a03a-5f69-b090-75a43e33423e"))
IVectorView<HSTRING> : IVectorView_impl<HSTRING> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IVectorView`1<String>"; }
};
typedef IVectorView<HSTRING> __FIVectorView_1_HSTRING_t;
#define ____FIVectorView_1_HSTRING_FWD_DEFINED__
#define __FIVectorView_1_HSTRING ABI::Windows::Foundation::Collections::__FIVectorView_1_HSTRING_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIVectorView_1_HSTRING_USE */

interface IInspectable;


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0019 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0019_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0019_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0351 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0351 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0351_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0351_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0020 */
/* [local] */ 

#ifndef DEF___FIKeyValuePair_2_HSTRING_IInspectable_USE
#define DEF___FIKeyValuePair_2_HSTRING_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("09335560-6c6b-5a26-9348-97b781132b20"))
IKeyValuePair<HSTRING,IInspectable*> : IKeyValuePair_impl<HSTRING,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IKeyValuePair`2<String, Object>"; }
};
typedef IKeyValuePair<HSTRING,IInspectable*> __FIKeyValuePair_2_HSTRING_IInspectable_t;
#define ____FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define __FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::__FIKeyValuePair_2_HSTRING_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIKeyValuePair_2_HSTRING_IInspectable_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0020 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0020_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0020_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0352 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0352 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0352_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0352_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0021 */
/* [local] */ 

#ifndef DEF___FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_USE
#define DEF___FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("5db5fa32-707c-5849-a06b-91c8eb9d10e8"))
IIterator<__FIKeyValuePair_2_HSTRING_IInspectable*> : IIterator_impl<__FIKeyValuePair_2_HSTRING_IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<Windows.Foundation.Collections.IKeyValuePair`2<String, Object>>"; }
};
typedef IIterator<__FIKeyValuePair_2_HSTRING_IInspectable*> __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_t;
#define ____FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define __FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::__FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterator_1___FIKeyValuePair_2_HSTRING_IInspectable_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0021 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0021_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0021_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0353 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0353 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0353_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0353_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0022 */
/* [local] */ 

#ifndef DEF___FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_USE
#define DEF___FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("fe2f3d47-5d47-5499-8374-430c7cda0204"))
IIterable<__FIKeyValuePair_2_HSTRING_IInspectable*> : IIterable_impl<__FIKeyValuePair_2_HSTRING_IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<Windows.Foundation.Collections.IKeyValuePair`2<String, Object>>"; }
};
typedef IIterable<__FIKeyValuePair_2_HSTRING_IInspectable*> __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_t;
#define ____FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_FWD_DEFINED__
#define __FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::__FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIIterable_1___FIKeyValuePair_2_HSTRING_IInspectable_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0022 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0022_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0022_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0354 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0354 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0354_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0354_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0023 */
/* [local] */ 

#ifndef DEF___FIMapView_2_HSTRING_IInspectable_USE
#define DEF___FIMapView_2_HSTRING_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("bb78502a-f79d-54fa-92c9-90c5039fdf7e"))
IMapView<HSTRING,IInspectable*> : IMapView_impl<HSTRING,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IMapView`2<String, Object>"; }
};
typedef IMapView<HSTRING,IInspectable*> __FIMapView_2_HSTRING_IInspectable_t;
#define ____FIMapView_2_HSTRING_IInspectable_FWD_DEFINED__
#define __FIMapView_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::__FIMapView_2_HSTRING_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIMapView_2_HSTRING_IInspectable_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0023 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0023_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0023_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0355 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0355 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0355_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0355_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0024 */
/* [local] */ 

#ifndef DEF___FIMap_2_HSTRING_IInspectable_USE
#define DEF___FIMap_2_HSTRING_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("1b0d3570-0877-5ec2-8a2c-3b9539506aca"))
IMap<HSTRING,IInspectable*> : IMap_impl<HSTRING,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IMap`2<String, Object>"; }
};
typedef IMap<HSTRING,IInspectable*> __FIMap_2_HSTRING_IInspectable_t;
#define ____FIMap_2_HSTRING_IInspectable_FWD_DEFINED__
#define __FIMap_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::__FIMap_2_HSTRING_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIMap_2_HSTRING_IInspectable_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0024 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0024_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0024_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0356 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0356 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0356_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0356_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0025 */
/* [local] */ 

#ifndef DEF___FIMapChangedEventArgs_1_HSTRING_USE
#define DEF___FIMapChangedEventArgs_1_HSTRING_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("60141efb-f2f9-5377-96fd-f8c60d9558b5"))
IMapChangedEventArgs<HSTRING> : IMapChangedEventArgs_impl<HSTRING> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IMapChangedEventArgs`1<String>"; }
};
typedef IMapChangedEventArgs<HSTRING> __FIMapChangedEventArgs_1_HSTRING_t;
#define ____FIMapChangedEventArgs_1_HSTRING_FWD_DEFINED__
#define __FIMapChangedEventArgs_1_HSTRING ABI::Windows::Foundation::Collections::__FIMapChangedEventArgs_1_HSTRING_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIMapChangedEventArgs_1_HSTRING_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0025 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0025_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0025_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0357 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0357 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0357_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0357_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0026 */
/* [local] */ 

#ifndef DEF___FMapChangedEventHandler_2_HSTRING_IInspectable_USE
#define DEF___FMapChangedEventHandler_2_HSTRING_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("24f981e5-ddca-538d-aada-a59906084cf1"))
MapChangedEventHandler<HSTRING,IInspectable*> : MapChangedEventHandler_impl<HSTRING,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.MapChangedEventHandler`2<String, Object>"; }
};
typedef MapChangedEventHandler<HSTRING,IInspectable*> __FMapChangedEventHandler_2_HSTRING_IInspectable_t;
#define ____FMapChangedEventHandler_2_HSTRING_IInspectable_FWD_DEFINED__
#define __FMapChangedEventHandler_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::__FMapChangedEventHandler_2_HSTRING_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FMapChangedEventHandler_2_HSTRING_IInspectable_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0026 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0026_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0026_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0358 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0358 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0358_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0358_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0027 */
/* [local] */ 

#ifndef DEF___FIObservableMap_2_HSTRING_IInspectable_USE
#define DEF___FIObservableMap_2_HSTRING_IInspectable_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("236aac9d-fb12-5c4d-a41c-9e445fb4d7ec"))
IObservableMap<HSTRING,IInspectable*> : IObservableMap_impl<HSTRING,IInspectable*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IObservableMap`2<String, Object>"; }
};
typedef IObservableMap<HSTRING,IInspectable*> __FIObservableMap_2_HSTRING_IInspectable_t;
#define ____FIObservableMap_2_HSTRING_IInspectable_FWD_DEFINED__
#define __FIObservableMap_2_HSTRING_IInspectable ABI::Windows::Foundation::Collections::__FIObservableMap_2_HSTRING_IInspectable_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIObservableMap_2_HSTRING_IInspectable_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0027 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0027_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0027_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0359 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0359 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0359_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0359_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0028 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1___FIVectorView_1_HSTRING_USE
#define DEF___FIAsyncOperationCompletedHandler_1___FIVectorView_1_HSTRING_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("7c7899be-5f2e-5bf3-ade5-ad98b772c7cd"))
IAsyncOperationCompletedHandler<__FIVectorView_1_HSTRING*> : IAsyncOperationCompletedHandler_impl<__FIVectorView_1_HSTRING*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Foundation.Collections.IVectorView`1<String>>"; }
};
typedef IAsyncOperationCompletedHandler<__FIVectorView_1_HSTRING*> __FIAsyncOperationCompletedHandler_1___FIVectorView_1_HSTRING_t;
#define ____FIAsyncOperationCompletedHandler_1___FIVectorView_1_HSTRING_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1___FIVectorView_1_HSTRING ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1___FIVectorView_1_HSTRING_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperationCompletedHandler_1___FIVectorView_1_HSTRING_USE */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0028 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0028_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0028_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0360 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0360 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0360_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0360_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0029 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1___FIVectorView_1_HSTRING_USE
#define DEF___FIAsyncOperation_1___FIVectorView_1_HSTRING_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("2f92b529-119b-575a-a419-3904b4e41af2"))
IAsyncOperation<__FIVectorView_1_HSTRING*> : IAsyncOperation_impl<__FIVectorView_1_HSTRING*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<String>>"; }
};
typedef IAsyncOperation<__FIVectorView_1_HSTRING*> __FIAsyncOperation_1___FIVectorView_1_HSTRING_t;
#define ____FIAsyncOperation_1___FIVectorView_1_HSTRING_FWD_DEFINED__
#define __FIAsyncOperation_1___FIVectorView_1_HSTRING ABI::Windows::Foundation::__FIAsyncOperation_1___FIVectorView_1_HSTRING_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperation_1___FIVectorView_1_HSTRING_USE */
#if defined(__cplusplus)
}
#endif // defined(__cplusplus)
#include <Windows.Foundation.h>
#if defined(__cplusplus)
extern "C" {
#endif // defined(__cplusplus)
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Foundation {
namespace Collections {
class ValueSet;
} /*Collections*/
} /*Foundation*/
} /*Windows*/
}
#endif


#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Foundation {
class Uri;
} /*Foundation*/
} /*Windows*/
}
#endif

#if !defined(__cplusplus)
#if !defined(__cplusplus)

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence;


#endif /* end if !defined(__cplusplus) */


#endif
#if !defined(__cplusplus)
#if !defined(__cplusplus)

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind;


#endif /* end if !defined(__cplusplus) */


#endif
#if !defined(__cplusplus)
#if !defined(__cplusplus)

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus;


#endif /* end if !defined(__cplusplus) */


#endif
#if !defined(__cplusplus)
#if !defined(__cplusplus)

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus;


#endif /* end if !defined(__cplusplus) */


#endif
#if !defined(__cplusplus)
#if !defined(__cplusplus)

typedef enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType;


#endif /* end if !defined(__cplusplus) */


#endif





















#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentAddress;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentCurrencyAmount;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentDetails;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentMediator;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentMerchantInfo;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentOptions;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentRequest;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentRequestChangedArgs;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentResponse;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace ApplicationModel {
namespace Payments {
class PaymentToken;
} /*Payments*/
} /*ApplicationModel*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0029 */
/* [local] */ 





#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                typedef enum PaymentOptionPresence PaymentOptionPresence;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                typedef enum PaymentRequestChangeKind PaymentRequestChangeKind;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                typedef enum PaymentRequestCompletionStatus PaymentRequestCompletionStatus;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                typedef enum PaymentRequestStatus PaymentRequestStatus;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                typedef enum PaymentShippingType PaymentShippingType;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif
























extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0029_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0029_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0361 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0361 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0361_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0361_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0030 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
#define DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0030 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0030_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0030_v0_0_s_ifspec;

#ifndef ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__

/* interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */
/* [unique][uuid][object] */ 



/* interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("fafb6774-b665-5b8b-b1ef-95038c3aabe1")
    __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier : public IInspectable
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier **current) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HasCurrent( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MoveNext( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Current )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier **current);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasCurrent )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *MoveNext )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl;

    interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
    {
        CONST_VTBL struct __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_get_Current(This,current)	\
    ( (This)->lpVtbl -> get_Current(This,current) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_get_HasCurrent(This,hasCurrent)	\
    ( (This)->lpVtbl -> get_HasCurrent(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_MoveNext(This,hasCurrent)	\
    ( (This)->lpVtbl -> MoveNext(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetMany(This,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0031 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0031 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0031_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0031_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0362 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0362 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0362_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0362_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0032 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
#define DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0032 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0032_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0032_v0_0_s_ifspec;

#ifndef ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__

/* interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */
/* [unique][uuid][object] */ 



/* interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("585d2b3d-cb34-58c4-81f4-1ea157996def")
    __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE First( 
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier **first) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *First )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier **first);
        
        END_INTERFACE
    } __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl;

    interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
    {
        CONST_VTBL struct __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_First(This,first)	\
    ( (This)->lpVtbl -> First(This,first) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0033 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0033 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0033_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0033_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0363 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0363 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0363_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0363_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0034 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem
#define DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0034 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0034_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0034_v0_0_s_ifspec;

#ifndef ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__

/* interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem */
/* [unique][uuid][object] */ 



/* interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("93c12cc3-6a0b-5f02-ac74-056007472731")
    __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem : public IInspectable
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem **current) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HasCurrent( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MoveNext( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::ApplicationModel::Payments::IPaymentItem **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Current )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem **current);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasCurrent )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *MoveNext )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl;

    interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem
    {
        CONST_VTBL struct __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_get_Current(This,current)	\
    ( (This)->lpVtbl -> get_Current(This,current) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_get_HasCurrent(This,hasCurrent)	\
    ( (This)->lpVtbl -> get_HasCurrent(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_MoveNext(This,hasCurrent)	\
    ( (This)->lpVtbl -> MoveNext(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetMany(This,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0035 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0035 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0035_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0035_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0364 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0364 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0364_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0364_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0036 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem
#define DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0036 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0036_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0036_v0_0_s_ifspec;

#ifndef ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__

/* interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem */
/* [unique][uuid][object] */ 



/* interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("b61b704c-e5fa-5524-8b95-7d03f5d36ae9")
    __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE First( 
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem **first) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *First )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentItem **first);
        
        END_INTERFACE
    } __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl;

    interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem
    {
        CONST_VTBL struct __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_First(This,first)	\
    ( (This)->lpVtbl -> First(This,first) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0037 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0037 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0037_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0037_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0365 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0365 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0365_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0365_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0038 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
#define DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0038 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0038_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0038_v0_0_s_ifspec;

#ifndef ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__

/* interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */
/* [unique][uuid][object] */ 



/* interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("9666522e-e5ac-5374-a5d9-5cf57c4bf689")
    __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData : public IInspectable
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentMethodData **current) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HasCurrent( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MoveNext( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::ApplicationModel::Payments::IPaymentMethodData **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Current )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData **current);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasCurrent )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *MoveNext )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl;

    interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
    {
        CONST_VTBL struct __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_get_Current(This,current)	\
    ( (This)->lpVtbl -> get_Current(This,current) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_get_HasCurrent(This,hasCurrent)	\
    ( (This)->lpVtbl -> get_HasCurrent(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_MoveNext(This,hasCurrent)	\
    ( (This)->lpVtbl -> MoveNext(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetMany(This,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0039 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0039 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0039_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0039_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0366 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0366 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0366_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0366_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0040 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
#define DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0040 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0040_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0040_v0_0_s_ifspec;

#ifndef ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__

/* interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */
/* [unique][uuid][object] */ 



/* interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8c9ed87e-4add-58a8-ad9a-9dfa48ca250a")
    __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE First( 
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData **first) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *First )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentMethodData **first);
        
        END_INTERFACE
    } __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl;

    interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
    {
        CONST_VTBL struct __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_First(This,first)	\
    ( (This)->lpVtbl -> First(This,first) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0041 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0041 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0041_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0041_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0367 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0367 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0367_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0367_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0042 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
#define DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0042 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0042_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0042_v0_0_s_ifspec;

#ifndef ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__
#define ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__

/* interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */
/* [unique][uuid][object] */ 



/* interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("49edc9f4-2ce6-534c-b529-5ceec705def5")
    __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption : public IInspectable
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **current) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_HasCurrent( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE MoveNext( 
            /* [retval][out] */ __RPC__out boolean *hasCurrent) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Current )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption **current);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasCurrent )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *MoveNext )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl;

    interface __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
    {
        CONST_VTBL struct __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_get_Current(This,current)	\
    ( (This)->lpVtbl -> get_Current(This,current) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_get_HasCurrent(This,hasCurrent)	\
    ( (This)->lpVtbl -> get_HasCurrent(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_MoveNext(This,hasCurrent)	\
    ( (This)->lpVtbl -> MoveNext(This,hasCurrent) ) 

#define __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetMany(This,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0043 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0043 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0043_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0043_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0368 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0368 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0368_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0368_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0044 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
#define DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0044 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0044_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0044_v0_0_s_ifspec;

#ifndef ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__
#define ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__

/* interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */
/* [unique][uuid][object] */ 



/* interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("de881c69-6642-54de-a8f7-d1a88b2404cf")
    __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE First( 
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption **first) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *First )( 
            __RPC__in __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption **first);
        
        END_INTERFACE
    } __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl;

    interface __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
    {
        CONST_VTBL struct __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_First(This,first)	\
    ( (This)->lpVtbl -> First(This,first) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0045 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0045 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0045_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0045_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0369 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0369 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0369_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0369_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0046 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
#define DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0046 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0046_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0046_v0_0_s_ifspec;

#ifndef ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__

/* interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */
/* [unique][uuid][object] */ 



/* interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("da7e871c-6e0c-5e32-be40-10715a9f75eb")
    __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier **item) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Size( 
            /* [retval][out] */ __RPC__out unsigned int *size) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IndexOf( 
            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier **item);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [retval][out] */ __RPC__out unsigned int *size);
        
        HRESULT ( STDMETHODCALLTYPE *IndexOf )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier * This,
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl;

    interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier
    {
        CONST_VTBL struct __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifierVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetAt(This,index,item)	\
    ( (This)->lpVtbl -> GetAt(This,index,item) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_get_Size(This,size)	\
    ( (This)->lpVtbl -> get_Size(This,size) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_IndexOf(This,item,index,found)	\
    ( (This)->lpVtbl -> IndexOf(This,item,index,found) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_GetMany(This,startIndex,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,startIndex,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0047 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0047 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0047_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0047_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0370 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0370 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0370_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0370_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0048 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem
#define DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0048 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0048_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0048_v0_0_s_ifspec;

#ifndef ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__

/* interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem */
/* [unique][uuid][object] */ 



/* interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6baf1241-1fa6-5c22-83ef-415e93cdf7b1")
    __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem **item) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Size( 
            /* [retval][out] */ __RPC__out unsigned int *size) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IndexOf( 
            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::ApplicationModel::Payments::IPaymentItem **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem **item);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [retval][out] */ __RPC__out unsigned int *size);
        
        HRESULT ( STDMETHODCALLTYPE *IndexOf )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem * This,
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl;

    interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem
    {
        CONST_VTBL struct __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItemVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetAt(This,index,item)	\
    ( (This)->lpVtbl -> GetAt(This,index,item) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_get_Size(This,size)	\
    ( (This)->lpVtbl -> get_Size(This,size) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_IndexOf(This,item,index,found)	\
    ( (This)->lpVtbl -> IndexOf(This,item,index,found) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_GetMany(This,startIndex,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,startIndex,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0049 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0049 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0049_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0049_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0371 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0371 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0371_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0371_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0050 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
#define DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0050 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0050_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0050_v0_0_s_ifspec;

#ifndef ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__

/* interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */
/* [unique][uuid][object] */ 



/* interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1011b9ba-6a05-5b16-82cf-0175085105e0")
    __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentMethodData **item) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Size( 
            /* [retval][out] */ __RPC__out unsigned int *size) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IndexOf( 
            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentMethodData *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::ApplicationModel::Payments::IPaymentMethodData **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData **item);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [retval][out] */ __RPC__out unsigned int *size);
        
        HRESULT ( STDMETHODCALLTYPE *IndexOf )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData * This,
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl;

    interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData
    {
        CONST_VTBL struct __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodDataVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetAt(This,index,item)	\
    ( (This)->lpVtbl -> GetAt(This,index,item) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_get_Size(This,size)	\
    ( (This)->lpVtbl -> get_Size(This,size) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_IndexOf(This,item,index,found)	\
    ( (This)->lpVtbl -> IndexOf(This,item,index,found) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_GetMany(This,startIndex,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,startIndex,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0051 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0051 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0051_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0051_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0372 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0372 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0372_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0372_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0052 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
#define DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0052 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0052_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0052_v0_0_s_ifspec;

#ifndef ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__

/* interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */
/* [unique][uuid][object] */ 



/* interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("8c8128eb-8c33-56dd-9648-39e8040312d4")
    __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **item) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Size( 
            /* [retval][out] */ __RPC__out unsigned int *size) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE IndexOf( 
            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetMany( 
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption **item);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [retval][out] */ __RPC__out unsigned int *size);
        
        HRESULT ( STDMETHODCALLTYPE *IndexOf )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption * This,
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl;

    interface __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption
    {
        CONST_VTBL struct __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOptionVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetAt(This,index,item)	\
    ( (This)->lpVtbl -> GetAt(This,index,item) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_get_Size(This,size)	\
    ( (This)->lpVtbl -> get_Size(This,size) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_IndexOf(This,item,index,found)	\
    ( (This)->lpVtbl -> IndexOf(This,item,index,found) ) 

#define __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_GetMany(This,startIndex,capacity,items,actual)	\
    ( (This)->lpVtbl -> GetMany(This,startIndex,capacity,items,actual) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0053 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0053 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0053_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0053_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0373 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0373 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0373_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0373_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0054 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)



/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0054 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0054_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0054_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_INTERFACE_DEFINED__

/* interface __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult */
/* [unique][uuid][object] */ 



/* interface __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("bec8b726-9056-5e47-b22a-0da09aa84afe")
    __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResultVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult *asyncInfo,
            /* [in] */ AsyncStatus status);
        
        END_INTERFACE
    } __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResultVtbl;

    interface __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResultVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_Invoke(This,asyncInfo,status)	\
    ( (This)->lpVtbl -> Invoke(This,asyncInfo,status) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0055 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0055 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0055_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0055_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0374 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0374 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0374_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0374_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0056 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult
#define DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0056 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0056_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0056_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_INTERFACE_DEFINED__

/* interface __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult */
/* [unique][uuid][object] */ 



/* interface __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("0cc32025-ac67-57e2-a0f6-3a8e116cef4c")
    __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedResult **results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResultVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult **results);
        
        END_INTERFACE
    } __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResultVtbl;

    interface __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult
    {
        CONST_VTBL struct __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResultVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_put_Completed(This,handler)	\
    ( (This)->lpVtbl -> put_Completed(This,handler) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_get_Completed(This,handler)	\
    ( (This)->lpVtbl -> get_Completed(This,handler) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_GetResults(This,results)	\
    ( (This)->lpVtbl -> GetResults(This,results) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0057 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestChangedResult */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0057 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0057_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0057_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0375 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0375 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0375_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0375_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0058 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)



/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0058 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0058_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0058_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__

/* interface __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult */
/* [unique][uuid][object] */ 



/* interface __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("cbcd07a6-ae2a-5a70-bc0b-9120560825d1")
    __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult *asyncInfo,
            /* [in] */ AsyncStatus status);
        
        END_INTERFACE
    } __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl;

    interface __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_Invoke(This,asyncInfo,status)	\
    ( (This)->lpVtbl -> Invoke(This,asyncInfo,status) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0059 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0059 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0059_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0059_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0376 */




/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0376 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0376_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments2Eidl_0000_0376_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0060 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult
#define DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult
#if !defined(__cplusplus) || defined(RO_NO_TEMPLATE_NAME)


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0060 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0060_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0060_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__

/* interface __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult */
/* [unique][uuid][object] */ 



/* interface __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult */
/* [unique][uuid][object] */ 


EXTERN_C const IID IID___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("cf290deb-5549-57c3-8abd-53b76c643cca")
    __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequestSubmitResult **results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult **results);
        
        END_INTERFACE
    } __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl;

    interface __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult
    {
        CONST_VTBL struct __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResultVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_put_Completed(This,handler)	\
    ( (This)->lpVtbl -> put_Completed(This,handler) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_get_Completed(This,handler)	\
    ( (This)->lpVtbl -> get_Completed(This,handler) ) 

#define __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_GetResults(This,results)	\
    ( (This)->lpVtbl -> GetResults(This,results) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0061 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult */
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence
    {
        PaymentOptionPresence_None	= 0,
        PaymentOptionPresence_Optional	= 1,
        PaymentOptionPresence_Required	= 2
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind
    {
        PaymentRequestChangeKind_ShippingOption	= 0,
        PaymentRequestChangeKind_ShippingAddress	= 1
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus
    {
        PaymentRequestCompletionStatus_Succeeded	= 0,
        PaymentRequestCompletionStatus_Failed	= 1,
        PaymentRequestCompletionStatus_Unknown	= 2
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus
    {
        PaymentRequestStatus_Succeeded	= 0,
        PaymentRequestStatus_Failed	= 1,
        PaymentRequestStatus_Canceled	= 2
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType
    {
        PaymentShippingType_Shipping	= 0,
        PaymentShippingType_Delivery	= 1,
        PaymentShippingType_Pickup	= 2
    } ;
#endif /* end if !defined(__cplusplus) */

#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0061 */
/* [local] */ 

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                /* [v1_enum] */ 
                enum PaymentOptionPresence
                    {
                        PaymentOptionPresence_None	= 0,
                        PaymentOptionPresence_Optional	= 1,
                        PaymentOptionPresence_Required	= 2
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                /* [v1_enum] */ 
                enum PaymentRequestChangeKind
                    {
                        PaymentRequestChangeKind_ShippingOption	= 0,
                        PaymentRequestChangeKind_ShippingAddress	= 1
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                /* [v1_enum] */ 
                enum PaymentRequestCompletionStatus
                    {
                        PaymentRequestCompletionStatus_Succeeded	= 0,
                        PaymentRequestCompletionStatus_Failed	= 1,
                        PaymentRequestCompletionStatus_Unknown	= 2
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                /* [v1_enum] */ 
                enum PaymentRequestStatus
                    {
                        PaymentRequestStatus_Succeeded	= 0,
                        PaymentRequestStatus_Failed	= 1,
                        PaymentRequestStatus_Canceled	= 2
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace ApplicationModel {
            namespace Payments {
                
                /* [v1_enum] */ 
                enum PaymentShippingType
                    {
                        PaymentShippingType_Shipping	= 0,
                        PaymentShippingType_Delivery	= 1,
                        PaymentShippingType_Pickup	= 2
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0061_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0061_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedHandler */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("5078B9E1-F398-4F2C-A27E-94D371CF6C7D")
                    IPaymentRequestChangedHandler : public IUnknown
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Invoke( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequest *paymentRequest,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedArgs *args) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentRequestChangedHandler = __uuidof(IPaymentRequestChangedHandler);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandlerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest *paymentRequest,
            /* [in] */ __RPC__in_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_Invoke(This,paymentRequest,args)	\
    ( (This)->lpVtbl -> Invoke(This,paymentRequest,args) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0062 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentAddress[] = L"Windows.ApplicationModel.Payments.IPaymentAddress";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0062 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0062_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0062_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentAddress */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("5F2264E9-6F3A-4166-A018-0A0B06BB32B5")
                    IPaymentAddress : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Country( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Country( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AddressLines( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_HSTRING **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_AddressLines( 
                            /* [in] */ __RPC__in_opt __FIVectorView_1_HSTRING *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Region( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Region( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_City( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_City( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DependentLocality( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DependentLocality( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PostalCode( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PostalCode( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SortingCode( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_SortingCode( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LanguageCode( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LanguageCode( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Organization( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Organization( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Recipient( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Recipient( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PhoneNumber( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_PhoneNumber( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Properties( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Foundation::Collections::IPropertySet **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentAddress = __uuidof(IPaymentAddress);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddressVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Country )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Country )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AddressLines )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_HSTRING **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_AddressLines )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in_opt __FIVectorView_1_HSTRING *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Region )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Region )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_City )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_City )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DependentLocality )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DependentLocality )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PostalCode )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PostalCode )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SortingCode )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SortingCode )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LanguageCode )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LanguageCode )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Organization )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Organization )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Recipient )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Recipient )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PhoneNumber )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_PhoneNumber )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Properties )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress * This,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_Country(This,value)	\
    ( (This)->lpVtbl -> get_Country(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_Country(This,value)	\
    ( (This)->lpVtbl -> put_Country(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_AddressLines(This,value)	\
    ( (This)->lpVtbl -> get_AddressLines(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_AddressLines(This,value)	\
    ( (This)->lpVtbl -> put_AddressLines(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_Region(This,value)	\
    ( (This)->lpVtbl -> get_Region(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_Region(This,value)	\
    ( (This)->lpVtbl -> put_Region(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_City(This,value)	\
    ( (This)->lpVtbl -> get_City(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_City(This,value)	\
    ( (This)->lpVtbl -> put_City(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_DependentLocality(This,value)	\
    ( (This)->lpVtbl -> get_DependentLocality(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_DependentLocality(This,value)	\
    ( (This)->lpVtbl -> put_DependentLocality(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_PostalCode(This,value)	\
    ( (This)->lpVtbl -> get_PostalCode(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_PostalCode(This,value)	\
    ( (This)->lpVtbl -> put_PostalCode(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_SortingCode(This,value)	\
    ( (This)->lpVtbl -> get_SortingCode(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_SortingCode(This,value)	\
    ( (This)->lpVtbl -> put_SortingCode(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_LanguageCode(This,value)	\
    ( (This)->lpVtbl -> get_LanguageCode(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_LanguageCode(This,value)	\
    ( (This)->lpVtbl -> put_LanguageCode(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_Organization(This,value)	\
    ( (This)->lpVtbl -> get_Organization(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_Organization(This,value)	\
    ( (This)->lpVtbl -> put_Organization(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_Recipient(This,value)	\
    ( (This)->lpVtbl -> get_Recipient(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_Recipient(This,value)	\
    ( (This)->lpVtbl -> put_Recipient(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_PhoneNumber(This,value)	\
    ( (This)->lpVtbl -> get_PhoneNumber(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_put_PhoneNumber(This,value)	\
    ( (This)->lpVtbl -> put_PhoneNumber(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_get_Properties(This,value)	\
    ( (This)->lpVtbl -> get_Properties(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0063 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentCurrencyAmount[] = L"Windows.ApplicationModel.Payments.IPaymentCurrencyAmount";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0063 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0063_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0063_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("E3A3E9E0-B41F-4987-BDCB-071331F2DAA4")
                    IPaymentCurrencyAmount : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Currency( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Currency( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_CurrencySystem( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_CurrencySystem( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Value( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Value( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentCurrencyAmount = __uuidof(IPaymentCurrencyAmount);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Currency )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Currency )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_CurrencySystem )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_CurrencySystem )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Value )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Value )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount * This,
            /* [in] */ __RPC__in 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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_get_Currency(This,value)	\
    ( (This)->lpVtbl -> get_Currency(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_put_Currency(This,value)	\
    ( (This)->lpVtbl -> put_Currency(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_get_CurrencySystem(This,value)	\
    ( (This)->lpVtbl -> get_CurrencySystem(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_put_CurrencySystem(This,value)	\
    ( (This)->lpVtbl -> put_CurrencySystem(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_get_Value(This,value)	\
    ( (This)->lpVtbl -> get_Value(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_put_Value(This,value)	\
    ( (This)->lpVtbl -> put_Value(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0064 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentCurrencyAmountFactory[] = L"Windows.ApplicationModel.Payments.IPaymentCurrencyAmountFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0064 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0064_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0064_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmountFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("3257D338-140C-4575-8535-F773178C09A7")
                    IPaymentCurrencyAmountFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in HSTRING value,
                            /* [in] */ __RPC__in HSTRING currency,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithCurrencySystem( 
                            /* [in] */ __RPC__in HSTRING value,
                            /* [in] */ __RPC__in HSTRING currency,
                            /* [in] */ __RPC__in HSTRING currencySystem,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentCurrencyAmountFactory = __uuidof(IPaymentCurrencyAmountFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory * This,
            /* [in] */ __RPC__in HSTRING value,
            /* [in] */ __RPC__in HSTRING currency,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithCurrencySystem )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory * This,
            /* [in] */ __RPC__in HSTRING value,
            /* [in] */ __RPC__in HSTRING currency,
            /* [in] */ __RPC__in HSTRING currencySystem,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_Create(This,value,currency,result)	\
    ( (This)->lpVtbl -> Create(This,value,currency,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_CreateWithCurrencySystem(This,value,currency,currencySystem,result)	\
    ( (This)->lpVtbl -> CreateWithCurrencySystem(This,value,currency,currencySystem,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmountFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0065 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentDetails[] = L"Windows.ApplicationModel.Payments.IPaymentDetails";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0065 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0065_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0065_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentDetails */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("53BB2D7D-E0EB-4053-8EAE-CE7C48E02945")
                    IPaymentDetails : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Total( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Total( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DisplayItems( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_DisplayItems( 
                            /* [in] */ __RPC__in_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ShippingOptions( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ShippingOptions( 
                            /* [in] */ __RPC__in_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Modifiers( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Modifiers( 
                            /* [in] */ __RPC__in_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier *value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentDetails = __uuidof(IPaymentDetails);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Total )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Total )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DisplayItems )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_DisplayItems )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [in] */ __RPC__in_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShippingOptions )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShippingOptions )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [in] */ __RPC__in_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentShippingOption *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Modifiers )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentDetailsModifier **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Modifiers )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails * This,
            /* [in] */ __RPC__in_opt __FIVectorView_1_Windows__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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_get_Total(This,value)	\
    ( (This)->lpVtbl -> get_Total(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_put_Total(This,value)	\
    ( (This)->lpVtbl -> put_Total(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_get_DisplayItems(This,value)	\
    ( (This)->lpVtbl -> get_DisplayItems(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_put_DisplayItems(This,value)	\
    ( (This)->lpVtbl -> put_DisplayItems(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_get_ShippingOptions(This,value)	\
    ( (This)->lpVtbl -> get_ShippingOptions(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_put_ShippingOptions(This,value)	\
    ( (This)->lpVtbl -> put_ShippingOptions(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_get_Modifiers(This,value)	\
    ( (This)->lpVtbl -> get_Modifiers(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_put_Modifiers(This,value)	\
    ( (This)->lpVtbl -> put_Modifiers(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0066 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentDetailsFactory[] = L"Windows.ApplicationModel.Payments.IPaymentDetailsFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0066 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0066_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0066_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentDetailsFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("CFE8AFEE-C0EA-4CA1-8BC7-6DE67B1F3763")
                    IPaymentDetailsFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem *total,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithDisplayItems( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem *total,
                            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem *displayItems,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentDetailsFactory = __uuidof(IPaymentDetailsFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem *total,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithDisplayItems )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem *total,
            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem *displayItems,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_Create(This,total,result)	\
    ( (This)->lpVtbl -> Create(This,total,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_CreateWithDisplayItems(This,total,displayItems,result)	\
    ( (This)->lpVtbl -> CreateWithDisplayItems(This,total,displayItems,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0067 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentDetailsModifier[] = L"Windows.ApplicationModel.Payments.IPaymentDetailsModifier";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0067 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0067_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0067_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("BE1C7D65-4323-41D7-B305-DFCB765F69DE")
                    IPaymentDetailsModifier : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_JsonData( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SupportedMethodIds( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_HSTRING **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Total( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_AdditionalDisplayItems( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentItem **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentDetailsModifier = __uuidof(IPaymentDetailsModifier);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_JsonData )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedMethodIds )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_HSTRING **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Total )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_AdditionalDisplayItems )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_get_JsonData(This,value)	\
    ( (This)->lpVtbl -> get_JsonData(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_get_SupportedMethodIds(This,value)	\
    ( (This)->lpVtbl -> get_SupportedMethodIds(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_get_Total(This,value)	\
    ( (This)->lpVtbl -> get_Total(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_get_AdditionalDisplayItems(This,value)	\
    ( (This)->lpVtbl -> get_AdditionalDisplayItems(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0068 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentDetailsModifierFactory[] = L"Windows.ApplicationModel.Payments.IPaymentDetailsModifierFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0068 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0068_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0068_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifierFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("79005286-54DE-429C-9E4F-5DCE6E10EBCE")
                    IPaymentDetailsModifierFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem *total,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithAdditionalDisplayItems( 
                            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem *total,
                            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem *additionalDisplayItems,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithAdditionalDisplayItemsAndJsonData( 
                            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem *total,
                            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem *additionalDisplayItems,
                            /* [in] */ __RPC__in HSTRING jsonData,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetailsModifier **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentDetailsModifierFactory = __uuidof(IPaymentDetailsModifierFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This,
            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem *total,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithAdditionalDisplayItems )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This,
            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem *total,
            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem *additionalDisplayItems,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifier **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithAdditionalDisplayItemsAndJsonData )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory * This,
            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem *total,
            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentItem *additionalDisplayItems,
            /* [in] */ __RPC__in HSTRING jsonData,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_Create(This,supportedMethodIds,total,result)	\
    ( (This)->lpVtbl -> Create(This,supportedMethodIds,total,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_CreateWithAdditionalDisplayItems(This,supportedMethodIds,total,additionalDisplayItems,result)	\
    ( (This)->lpVtbl -> CreateWithAdditionalDisplayItems(This,supportedMethodIds,total,additionalDisplayItems,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_CreateWithAdditionalDisplayItemsAndJsonData(This,supportedMethodIds,total,additionalDisplayItems,jsonData,result)	\
    ( (This)->lpVtbl -> CreateWithAdditionalDisplayItemsAndJsonData(This,supportedMethodIds,total,additionalDisplayItems,jsonData,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetailsModifierFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0069 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentItem[] = L"Windows.ApplicationModel.Payments.IPaymentItem";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0069 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0069_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0069_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentItem */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("685AC88B-79B2-4B76-9E03-A876223DFE72")
                    IPaymentItem : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Label( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Label( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Amount( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Amount( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Pending( 
                            /* [out][retval] */ __RPC__out boolean *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Pending( 
                            /* [in] */ boolean value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentItem = __uuidof(IPaymentItem);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Label )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Label )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Amount )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Amount )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Pending )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Pending )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem * This,
            /* [in] */ 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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_get_Label(This,value)	\
    ( (This)->lpVtbl -> get_Label(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_put_Label(This,value)	\
    ( (This)->lpVtbl -> put_Label(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_get_Amount(This,value)	\
    ( (This)->lpVtbl -> get_Amount(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_put_Amount(This,value)	\
    ( (This)->lpVtbl -> put_Amount(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_get_Pending(This,value)	\
    ( (This)->lpVtbl -> get_Pending(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_put_Pending(This,value)	\
    ( (This)->lpVtbl -> put_Pending(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItem_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0070 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentItemFactory[] = L"Windows.ApplicationModel.Payments.IPaymentItemFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0070 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0070_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0070_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentItemFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("C6AB7AD8-2503-4D1D-A778-02B2E5927B2C")
                    IPaymentItemFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in HSTRING label,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount *amount,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentItem **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentItemFactory = __uuidof(IPaymentItemFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory * This,
            /* [in] */ __RPC__in HSTRING label,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount *amount,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_Create(This,label,amount,result)	\
    ( (This)->lpVtbl -> Create(This,label,amount,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentItemFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0071 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentMediator[] = L"Windows.ApplicationModel.Payments.IPaymentMediator";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0071 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0071_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0071_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentMediator */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("FB0EE829-EC0C-449A-83DA-7AE3073365A2")
                    IPaymentMediator : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE GetSupportedMethodIdsAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1___FIVectorView_1_HSTRING **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE SubmitPaymentRequestAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequest *paymentRequest,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE SubmitPaymentRequestWithChangeHandlerAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequest *paymentRequest,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedHandler *changeHandler,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentMediator = __uuidof(IPaymentMediator);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediatorVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetSupportedMethodIdsAsync )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1___FIVectorView_1_HSTRING **result);
        
        HRESULT ( STDMETHODCALLTYPE *SubmitPaymentRequestAsync )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest *paymentRequest,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CApplicationModel__CPayments__CPaymentRequestSubmitResult **result);
        
        HRESULT ( STDMETHODCALLTYPE *SubmitPaymentRequestWithChangeHandlerAsync )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest *paymentRequest,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedHandler *changeHandler,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_GetSupportedMethodIdsAsync(This,result)	\
    ( (This)->lpVtbl -> GetSupportedMethodIdsAsync(This,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_SubmitPaymentRequestAsync(This,paymentRequest,result)	\
    ( (This)->lpVtbl -> SubmitPaymentRequestAsync(This,paymentRequest,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_SubmitPaymentRequestWithChangeHandlerAsync(This,paymentRequest,changeHandler,result)	\
    ( (This)->lpVtbl -> SubmitPaymentRequestWithChangeHandlerAsync(This,paymentRequest,changeHandler,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMediator_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0072 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentMerchantInfo[] = L"Windows.ApplicationModel.Payments.IPaymentMerchantInfo";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0072 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0072_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0072_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentMerchantInfo */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("63445050-0E94-4ED6-AACB-E6012BD327A7")
                    IPaymentMerchantInfo : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PackageFullName( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Uri( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Foundation::IUriRuntimeClass **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentMerchantInfo = __uuidof(IPaymentMerchantInfo);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PackageFullName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Uri )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo * This,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_get_PackageFullName(This,value)	\
    ( (This)->lpVtbl -> get_PackageFullName(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_get_Uri(This,value)	\
    ( (This)->lpVtbl -> get_Uri(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0073 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentMerchantInfoFactory[] = L"Windows.ApplicationModel.Payments.IPaymentMerchantInfoFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0073 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0073_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0073_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentMerchantInfoFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("9E89CED3-CCB7-4167-A8EC-E10AE96DBCD1")
                    IPaymentMerchantInfoFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Foundation::IUriRuntimeClass *uri,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentMerchantInfo **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentMerchantInfoFactory = __uuidof(IPaymentMerchantInfoFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CFoundation_CIUriRuntimeClass *uri,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_Create(This,uri,result)	\
    ( (This)->lpVtbl -> Create(This,uri,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfoFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0074 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentMethodData[] = L"Windows.ApplicationModel.Payments.IPaymentMethodData";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0074 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0074_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0074_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentMethodData */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("D1D3CAF4-DE98-4129-B1B7-C3AD86237BF4")
                    IPaymentMethodData : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SupportedMethodIds( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_HSTRING **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_JsonData( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentMethodData = __uuidof(IPaymentMethodData);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SupportedMethodIds )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_HSTRING **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_JsonData )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData * This,
            /* [out][retval] */ __RPC__deref_out_opt 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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_get_SupportedMethodIds(This,value)	\
    ( (This)->lpVtbl -> get_SupportedMethodIds(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_get_JsonData(This,value)	\
    ( (This)->lpVtbl -> get_JsonData(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0075 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentMethodDataFactory[] = L"Windows.ApplicationModel.Payments.IPaymentMethodDataFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0075 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0075_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0075_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentMethodDataFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("8ADDD27F-9BAA-4A82-8342-A8210992A36B")
                    IPaymentMethodDataFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentMethodData **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithJsonData( 
                            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
                            /* [in] */ __RPC__in HSTRING jsonData,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentMethodData **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentMethodDataFactory = __uuidof(IPaymentMethodDataFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory * This,
            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodData **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithJsonData )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory * This,
            /* [in] */ __RPC__in_opt __FIIterable_1_HSTRING *supportedMethodIds,
            /* [in] */ __RPC__in HSTRING jsonData,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_Create(This,supportedMethodIds,result)	\
    ( (This)->lpVtbl -> Create(This,supportedMethodIds,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_CreateWithJsonData(This,supportedMethodIds,jsonData,result)	\
    ( (This)->lpVtbl -> CreateWithJsonData(This,supportedMethodIds,jsonData,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMethodDataFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0076 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentOptions[] = L"Windows.ApplicationModel.Payments.IPaymentOptions";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0076 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0076_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0076_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentOptions */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("AAA30854-1F2B-4365-8251-01B58915A5BC")
                    IPaymentOptions : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RequestPayerEmail( 
                            /* [out][retval] */ __RPC__out ABI::Windows::ApplicationModel::Payments::PaymentOptionPresence *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RequestPayerEmail( 
                            /* [in] */ ABI::Windows::ApplicationModel::Payments::PaymentOptionPresence value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RequestPayerName( 
                            /* [out][retval] */ __RPC__out ABI::Windows::ApplicationModel::Payments::PaymentOptionPresence *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RequestPayerName( 
                            /* [in] */ ABI::Windows::ApplicationModel::Payments::PaymentOptionPresence value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RequestPayerPhoneNumber( 
                            /* [out][retval] */ __RPC__out ABI::Windows::ApplicationModel::Payments::PaymentOptionPresence *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RequestPayerPhoneNumber( 
                            /* [in] */ ABI::Windows::ApplicationModel::Payments::PaymentOptionPresence value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_RequestShipping( 
                            /* [out][retval] */ __RPC__out boolean *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_RequestShipping( 
                            /* [in] */ boolean value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ShippingType( 
                            /* [out][retval] */ __RPC__out ABI::Windows::ApplicationModel::Payments::PaymentShippingType *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ShippingType( 
                            /* [in] */ ABI::Windows::ApplicationModel::Payments::PaymentShippingType value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentOptions = __uuidof(IPaymentOptions);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptionsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestPayerEmail )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RequestPayerEmail )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [in] */ __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestPayerName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RequestPayerName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [in] */ __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestPayerPhoneNumber )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RequestPayerPhoneNumber )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [in] */ __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentOptionPresence value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_RequestShipping )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_RequestShipping )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShippingType )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentShippingType *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ShippingType )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions * This,
            /* [in] */ __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_get_RequestPayerEmail(This,value)	\
    ( (This)->lpVtbl -> get_RequestPayerEmail(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_put_RequestPayerEmail(This,value)	\
    ( (This)->lpVtbl -> put_RequestPayerEmail(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_get_RequestPayerName(This,value)	\
    ( (This)->lpVtbl -> get_RequestPayerName(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_put_RequestPayerName(This,value)	\
    ( (This)->lpVtbl -> put_RequestPayerName(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_get_RequestPayerPhoneNumber(This,value)	\
    ( (This)->lpVtbl -> get_RequestPayerPhoneNumber(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_put_RequestPayerPhoneNumber(This,value)	\
    ( (This)->lpVtbl -> put_RequestPayerPhoneNumber(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_get_RequestShipping(This,value)	\
    ( (This)->lpVtbl -> get_RequestShipping(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_put_RequestShipping(This,value)	\
    ( (This)->lpVtbl -> put_RequestShipping(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_get_ShippingType(This,value)	\
    ( (This)->lpVtbl -> get_ShippingType(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_put_ShippingType(This,value)	\
    ( (This)->lpVtbl -> put_ShippingType(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0077 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentRequest[] = L"Windows.ApplicationModel.Payments.IPaymentRequest";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0077 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0077_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0077_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentRequest */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("B74942E1-ED7B-47EB-BC08-78CC5D6896B6")
                    IPaymentRequest : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MerchantInfo( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentMerchantInfo **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Details( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MethodData( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Options( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentOptions **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentRequest = __uuidof(IPaymentRequest);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MerchantInfo )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Details )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MethodData )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CApplicationModel__CPayments__CPaymentMethodData **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Options )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_get_MerchantInfo(This,value)	\
    ( (This)->lpVtbl -> get_MerchantInfo(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_get_Details(This,value)	\
    ( (This)->lpVtbl -> get_Details(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_get_MethodData(This,value)	\
    ( (This)->lpVtbl -> get_MethodData(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_get_Options(This,value)	\
    ( (This)->lpVtbl -> get_Options(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0078 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentRequestChangedArgs[] = L"Windows.ApplicationModel.Payments.IPaymentRequestChangedArgs";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0078 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0078_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0078_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedArgs */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("C6145E44-CD8B-4BE4-B555-27C99194C0C5")
                    IPaymentRequestChangedArgs : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ChangeKind( 
                            /* [out][retval] */ __RPC__out ABI::Windows::ApplicationModel::Payments::PaymentRequestChangeKind *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ShippingAddress( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentAddress **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SelectedShippingOption( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE Acknowledge( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedResult *changeResult) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentRequestChangedArgs = __uuidof(IPaymentRequestChangedArgs);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ChangeKind )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestChangeKind *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShippingAddress )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SelectedShippingOption )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption **value);
        
        HRESULT ( STDMETHODCALLTYPE *Acknowledge )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs * This,
            /* [in] */ __RPC__in_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_get_ChangeKind(This,value)	\
    ( (This)->lpVtbl -> get_ChangeKind(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_get_ShippingAddress(This,value)	\
    ( (This)->lpVtbl -> get_ShippingAddress(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_get_SelectedShippingOption(This,value)	\
    ( (This)->lpVtbl -> get_SelectedShippingOption(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_Acknowledge(This,changeResult)	\
    ( (This)->lpVtbl -> Acknowledge(This,changeResult) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0079 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentRequestChangedResult[] = L"Windows.ApplicationModel.Payments.IPaymentRequestChangedResult";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0079 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0079_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0079_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedResult */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("DF699E5C-16C4-47AD-9401-8440EC0757DB")
                    IPaymentRequestChangedResult : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ChangeAcceptedByMerchant( 
                            /* [out][retval] */ __RPC__out boolean *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_ChangeAcceptedByMerchant( 
                            /* [in] */ boolean value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Message( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Message( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UpdatedPaymentDetails( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_UpdatedPaymentDetails( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails *value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentRequestChangedResult = __uuidof(IPaymentRequestChangedResult);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ChangeAcceptedByMerchant )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_ChangeAcceptedByMerchant )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [in] */ boolean value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Message )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Message )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UpdatedPaymentDetails )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_UpdatedPaymentDetails )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult * This,
            /* [in] */ __RPC__in_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_get_ChangeAcceptedByMerchant(This,value)	\
    ( (This)->lpVtbl -> get_ChangeAcceptedByMerchant(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_put_ChangeAcceptedByMerchant(This,value)	\
    ( (This)->lpVtbl -> put_ChangeAcceptedByMerchant(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_get_Message(This,value)	\
    ( (This)->lpVtbl -> get_Message(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_put_Message(This,value)	\
    ( (This)->lpVtbl -> put_Message(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_get_UpdatedPaymentDetails(This,value)	\
    ( (This)->lpVtbl -> get_UpdatedPaymentDetails(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_put_UpdatedPaymentDetails(This,value)	\
    ( (This)->lpVtbl -> put_UpdatedPaymentDetails(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0080 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentRequestChangedResultFactory[] = L"Windows.ApplicationModel.Payments.IPaymentRequestChangedResultFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0080 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0080_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0080_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedResultFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("08740F56-1D33-4431-814B-67EA24BF21DB")
                    IPaymentRequestChangedResultFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ boolean changeAcceptedByMerchant,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedResult **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithPaymentDetails( 
                            /* [in] */ boolean changeAcceptedByMerchant,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails *updatedPaymentDetails,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequestChangedResult **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentRequestChangedResultFactory = __uuidof(IPaymentRequestChangedResultFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory * This,
            /* [in] */ boolean changeAcceptedByMerchant,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResult **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithPaymentDetails )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory * This,
            /* [in] */ boolean changeAcceptedByMerchant,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails *updatedPaymentDetails,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_Create(This,changeAcceptedByMerchant,result)	\
    ( (This)->lpVtbl -> Create(This,changeAcceptedByMerchant,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_CreateWithPaymentDetails(This,changeAcceptedByMerchant,updatedPaymentDetails,result)	\
    ( (This)->lpVtbl -> CreateWithPaymentDetails(This,changeAcceptedByMerchant,updatedPaymentDetails,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestChangedResultFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0081 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentRequestFactory[] = L"Windows.ApplicationModel.Payments.IPaymentRequestFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0081 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0081_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0081_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentRequestFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("3E8A79DC-6B74-42D3-B103-F0DE35FB1848")
                    IPaymentRequestFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails *details,
                            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData *methodData,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequest **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithMerchantInfo( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails *details,
                            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData *methodData,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentMerchantInfo *merchantInfo,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequest **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithMerchantInfoAndOptions( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentDetails *details,
                            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData *methodData,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentMerchantInfo *merchantInfo,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentOptions *options,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentRequest **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentRequestFactory = __uuidof(IPaymentRequestFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails *details,
            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData *methodData,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithMerchantInfo )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails *details,
            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData *methodData,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo *merchantInfo,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequest **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithMerchantInfoAndOptions )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentDetails *details,
            /* [in] */ __RPC__in_opt __FIIterable_1_Windows__CApplicationModel__CPayments__CPaymentMethodData *methodData,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentMerchantInfo *merchantInfo,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentOptions *options,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_Create(This,details,methodData,result)	\
    ( (This)->lpVtbl -> Create(This,details,methodData,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_CreateWithMerchantInfo(This,details,methodData,merchantInfo,result)	\
    ( (This)->lpVtbl -> CreateWithMerchantInfo(This,details,methodData,merchantInfo,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_CreateWithMerchantInfoAndOptions(This,details,methodData,merchantInfo,options,result)	\
    ( (This)->lpVtbl -> CreateWithMerchantInfoAndOptions(This,details,methodData,merchantInfo,options,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0082 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentRequestSubmitResult[] = L"Windows.ApplicationModel.Payments.IPaymentRequestSubmitResult";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0082 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0082_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0082_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentRequestSubmitResult */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("7B9C3912-30F2-4E90-B249-8CE7D78FFE56")
                    IPaymentRequestSubmitResult : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Status( 
                            /* [out][retval] */ __RPC__out ABI::Windows::ApplicationModel::Payments::PaymentRequestStatus *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Response( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentResponse **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentRequestSubmitResult = __uuidof(IPaymentRequestSubmitResult);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResultVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Status )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestStatus *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Response )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult * This,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_get_Status(This,value)	\
    ( (This)->lpVtbl -> get_Status(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_get_Response(This,value)	\
    ( (This)->lpVtbl -> get_Response(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentRequestSubmitResult_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0083 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentResponse[] = L"Windows.ApplicationModel.Payments.IPaymentResponse";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0083 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0083_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0083_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentResponse */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("E1389457-8BD2-4888-9FA8-97985545108E")
                    IPaymentResponse : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PaymentToken( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentToken **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ShippingOption( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_ShippingAddress( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentAddress **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PayerEmail( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PayerName( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PayerPhoneNumber( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CompleteAsync( 
                            /* [in] */ ABI::Windows::ApplicationModel::Payments::PaymentRequestCompletionStatus status,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Foundation::IAsyncAction **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentResponse = __uuidof(IPaymentResponse);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponseVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PaymentToken )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShippingOption )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_ShippingAddress )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentAddress **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PayerEmail )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PayerName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PayerPhoneNumber )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        HRESULT ( STDMETHODCALLTYPE *CompleteAsync )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse * This,
            /* [in] */ __x_ABI_CWindows_CApplicationModel_CPayments_CPaymentRequestCompletionStatus status,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_get_PaymentToken(This,value)	\
    ( (This)->lpVtbl -> get_PaymentToken(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_get_ShippingOption(This,value)	\
    ( (This)->lpVtbl -> get_ShippingOption(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_get_ShippingAddress(This,value)	\
    ( (This)->lpVtbl -> get_ShippingAddress(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_get_PayerEmail(This,value)	\
    ( (This)->lpVtbl -> get_PayerEmail(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_get_PayerName(This,value)	\
    ( (This)->lpVtbl -> get_PayerName(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_get_PayerPhoneNumber(This,value)	\
    ( (This)->lpVtbl -> get_PayerPhoneNumber(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_CompleteAsync(This,status,result)	\
    ( (This)->lpVtbl -> CompleteAsync(This,status,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentResponse_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0084 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentShippingOption[] = L"Windows.ApplicationModel.Payments.IPaymentShippingOption";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0084 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0084_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0084_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("13372ADA-9753-4574-8966-93145A76C7F9")
                    IPaymentShippingOption : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Label( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Label( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Amount( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount **value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Amount( 
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Tag( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Tag( 
                            /* [in] */ __RPC__in HSTRING value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_IsSelected( 
                            /* [out][retval] */ __RPC__out boolean *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_IsSelected( 
                            /* [in] */ boolean value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentShippingOption = __uuidof(IPaymentShippingOption);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Label )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Label )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Amount )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount **value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Amount )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Tag )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Tag )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [in] */ __RPC__in HSTRING value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_IsSelected )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [out][retval] */ __RPC__out boolean *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_IsSelected )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption * This,
            /* [in] */ 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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_get_Label(This,value)	\
    ( (This)->lpVtbl -> get_Label(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_put_Label(This,value)	\
    ( (This)->lpVtbl -> put_Label(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_get_Amount(This,value)	\
    ( (This)->lpVtbl -> get_Amount(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_put_Amount(This,value)	\
    ( (This)->lpVtbl -> put_Amount(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_get_Tag(This,value)	\
    ( (This)->lpVtbl -> get_Tag(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_put_Tag(This,value)	\
    ( (This)->lpVtbl -> put_Tag(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_get_IsSelected(This,value)	\
    ( (This)->lpVtbl -> get_IsSelected(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_put_IsSelected(This,value)	\
    ( (This)->lpVtbl -> put_IsSelected(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0085 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentShippingOptionFactory[] = L"Windows.ApplicationModel.Payments.IPaymentShippingOptionFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0085 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0085_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0085_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentShippingOptionFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("5DE5F917-B2D7-446B-9D73-6123FBCA3BC6")
                    IPaymentShippingOptionFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in HSTRING label,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount *amount,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithSelected( 
                            /* [in] */ __RPC__in HSTRING label,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount *amount,
                            /* [in] */ boolean selected,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithSelectedAndTag( 
                            /* [in] */ __RPC__in HSTRING label,
                            /* [in] */ __RPC__in_opt ABI::Windows::ApplicationModel::Payments::IPaymentCurrencyAmount *amount,
                            /* [in] */ boolean selected,
                            /* [in] */ __RPC__in HSTRING tag,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentShippingOption **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentShippingOptionFactory = __uuidof(IPaymentShippingOptionFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This,
            /* [in] */ __RPC__in HSTRING label,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount *amount,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithSelected )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This,
            /* [in] */ __RPC__in HSTRING label,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount *amount,
            /* [in] */ boolean selected,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOption **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithSelectedAndTag )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory * This,
            /* [in] */ __RPC__in HSTRING label,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentCurrencyAmount *amount,
            /* [in] */ boolean selected,
            /* [in] */ __RPC__in HSTRING tag,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_Create(This,label,amount,result)	\
    ( (This)->lpVtbl -> Create(This,label,amount,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_CreateWithSelected(This,label,amount,selected,result)	\
    ( (This)->lpVtbl -> CreateWithSelected(This,label,amount,selected,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_CreateWithSelectedAndTag(This,label,amount,selected,tag,result)	\
    ( (This)->lpVtbl -> CreateWithSelectedAndTag(This,label,amount,selected,tag,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentShippingOptionFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0086 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentToken[] = L"Windows.ApplicationModel.Payments.IPaymentToken";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0086 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0086_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0086_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentToken */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("BBCAC013-CCD0-41F2-B2A1-0A2E4B5DCE25")
                    IPaymentToken : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_PaymentMethodId( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_JsonDetails( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentToken = __uuidof(IPaymentToken);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_PaymentMethodId )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_JsonDetails )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken * This,
            /* [out][retval] */ __RPC__deref_out_opt 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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_get_PaymentMethodId(This,value)	\
    ( (This)->lpVtbl -> get_PaymentMethodId(This,value) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_get_JsonDetails(This,value)	\
    ( (This)->lpVtbl -> get_JsonDetails(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0087 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_ApplicationModel_Payments_IPaymentTokenFactory[] = L"Windows.ApplicationModel.Payments.IPaymentTokenFactory";
#endif /* !defined(____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0087 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0087_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0087_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory */
/* [uuid][object] */ 



/* interface ABI::Windows::ApplicationModel::Payments::IPaymentTokenFactory */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace ApplicationModel {
                namespace Payments {
                    
                    MIDL_INTERFACE("988CD7AA-4753-4904-8373-DD7B08B995C1")
                    IPaymentTokenFactory : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Create( 
                            /* [in] */ __RPC__in HSTRING paymentMethodId,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentToken **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE CreateWithJsonDetails( 
                            /* [in] */ __RPC__in HSTRING paymentMethodId,
                            /* [in] */ __RPC__in HSTRING jsonDetails,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::ApplicationModel::Payments::IPaymentToken **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_IPaymentTokenFactory = __uuidof(IPaymentTokenFactory);

                    
                }  /* end namespace */
            }  /* end namespace */
        }  /* end namespace */
    }  /* end namespace */
    extern "C" { 
    
#else 	/* C style interface */

    typedef struct __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactoryVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory * This,
            /* [out] */ __RPC__out ULONG *iidCount,
            /* [size_is][size_is][out] */ __RPC__deref_out_ecount_full_opt(*iidCount) IID **iids);
        
        HRESULT ( STDMETHODCALLTYPE *GetRuntimeClassName )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Create )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory * This,
            /* [in] */ __RPC__in HSTRING paymentMethodId,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentToken **result);
        
        HRESULT ( STDMETHODCALLTYPE *CreateWithJsonDetails )( 
            __RPC__in __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory * This,
            /* [in] */ __RPC__in HSTRING paymentMethodId,
            /* [in] */ __RPC__in HSTRING jsonDetails,
            /* [out][retval] */ __RPC__deref_out_opt __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;
    };

    

#ifdef COBJMACROS


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_QueryInterface(This,riid,ppvObject)	\
    ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_AddRef(This)	\
    ( (This)->lpVtbl -> AddRef(This) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_Release(This)	\
    ( (This)->lpVtbl -> Release(This) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_GetIids(This,iidCount,iids)	\
    ( (This)->lpVtbl -> GetIids(This,iidCount,iids) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_GetRuntimeClassName(This,className)	\
    ( (This)->lpVtbl -> GetRuntimeClassName(This,className) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_GetTrustLevel(This,trustLevel)	\
    ( (This)->lpVtbl -> GetTrustLevel(This,trustLevel) ) 


#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_Create(This,paymentMethodId,result)	\
    ( (This)->lpVtbl -> Create(This,paymentMethodId,result) ) 

#define __x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_CreateWithJsonDetails(This,paymentMethodId,jsonDetails,result)	\
    ( (This)->lpVtbl -> CreateWithJsonDetails(This,paymentMethodId,jsonDetails,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CApplicationModel_CPayments_CIPaymentTokenFactory_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0088 */
/* [local] */ 

#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentAddress_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentAddress_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentAddress[] = L"Windows.ApplicationModel.Payments.PaymentAddress";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentCurrencyAmount_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentCurrencyAmount_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentCurrencyAmount[] = L"Windows.ApplicationModel.Payments.PaymentCurrencyAmount";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentDetails_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentDetails_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentDetails[] = L"Windows.ApplicationModel.Payments.PaymentDetails";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentDetailsModifier_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentDetailsModifier_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentDetailsModifier[] = L"Windows.ApplicationModel.Payments.PaymentDetailsModifier";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentItem_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentItem_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentItem[] = L"Windows.ApplicationModel.Payments.PaymentItem";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentMediator_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentMediator_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentMediator[] = L"Windows.ApplicationModel.Payments.PaymentMediator";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentMerchantInfo_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentMerchantInfo_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentMerchantInfo[] = L"Windows.ApplicationModel.Payments.PaymentMerchantInfo";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentMethodData_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentMethodData_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentMethodData[] = L"Windows.ApplicationModel.Payments.PaymentMethodData";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentOptions_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentOptions_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentOptions[] = L"Windows.ApplicationModel.Payments.PaymentOptions";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentRequest_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentRequest_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentRequest[] = L"Windows.ApplicationModel.Payments.PaymentRequest";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentRequestChangedArgs_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentRequestChangedArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentRequestChangedArgs[] = L"Windows.ApplicationModel.Payments.PaymentRequestChangedArgs";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentRequestChangedResult_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentRequestChangedResult_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentRequestChangedResult[] = L"Windows.ApplicationModel.Payments.PaymentRequestChangedResult";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentRequestSubmitResult_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentRequestSubmitResult_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentRequestSubmitResult[] = L"Windows.ApplicationModel.Payments.PaymentRequestSubmitResult";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentResponse_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentResponse_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentResponse[] = L"Windows.ApplicationModel.Payments.PaymentResponse";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentShippingOption_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentShippingOption_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentShippingOption[] = L"Windows.ApplicationModel.Payments.PaymentShippingOption";
#endif
#ifndef RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentToken_DEFINED
#define RUNTIMECLASS_Windows_ApplicationModel_Payments_PaymentToken_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_ApplicationModel_Payments_PaymentToken[] = L"Windows.ApplicationModel.Payments.PaymentToken";
#endif


/* interface __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0088 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0088_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Eapplicationmodel2Epayments_0000_0088_v0_0_s_ifspec;

/* Additional Prototypes for ALL interfaces */

unsigned long             __RPC_USER  HSTRING_UserSize(     __RPC__in unsigned long *, unsigned long            , __RPC__in HSTRING * ); 
unsigned char * __RPC_USER  HSTRING_UserMarshal(  __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HSTRING * ); 
unsigned char * __RPC_USER  HSTRING_UserUnmarshal(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HSTRING * ); 
void                      __RPC_USER  HSTRING_UserFree(     __RPC__in unsigned long *, __RPC__in HSTRING * ); 

unsigned long             __RPC_USER  HSTRING_UserSize64(     __RPC__in unsigned long *, unsigned long            , __RPC__in HSTRING * ); 
unsigned char * __RPC_USER  HSTRING_UserMarshal64(  __RPC__in unsigned long *, __RPC__inout_xcount(0) unsigned char *, __RPC__in HSTRING * ); 
unsigned char * __RPC_USER  HSTRING_UserUnmarshal64(__RPC__in unsigned long *, __RPC__in_xcount(0) unsigned char *, __RPC__out HSTRING * ); 
void                      __RPC_USER  HSTRING_UserFree64(     __RPC__in unsigned long *, __RPC__in HSTRING * ); 

/* end of Additional Prototypes */

#ifdef __cplusplus
}
#endif

#endif


