

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


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

#pragma warning( disable: 4049 )  /* more than 64k source lines */


/* 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 __windows2Edevices2Esmartcards_h__
#define __windows2Edevices2Esmartcards_h__

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

/* Forward Declarations */ 

#ifndef ____FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define ____FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
typedef interface __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard;

#endif 	/* ____FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__ */


#ifndef ____FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define ____FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
typedef interface __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard;

#endif 	/* ____FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__ */


#ifndef ____FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define ____FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
typedef interface __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard;

#endif 	/* ____FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__ */


#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext;

#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext;

#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_FWD_DEFINED__ */


#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning;

#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning;

#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_FWD_DEFINED__ */


#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader;

#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader;

#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_FWD_DEFINED__ */


#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus;

#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus;

#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_FWD_DEFINED__ */


#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus;

#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_FWD_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_FWD_DEFINED__
typedef interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus;

#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_FWD_DEFINED__ */


#ifndef ____FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
typedef interface __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard;

#endif 	/* ____FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__ */


#ifndef ____FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define ____FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
typedef interface __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard;

#endif 	/* ____FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__ */


#ifndef ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs;

#endif 	/* ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_FWD_DEFINED__ */


#ifndef ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_FWD_DEFINED__
#define ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_FWD_DEFINED__
typedef interface __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs;

#endif 	/* ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardPinResetHandler;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardReaderStatics;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardReader;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ICardAddedEventArgs;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ICardRemovedEventArgs;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCard;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardProvisioningStatics;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardProvisioning;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardPinResetRequest;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardPinResetDeferral;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardPinPolicy;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_FWD_DEFINED__ */


#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_FWD_DEFINED__
typedef interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext;

#ifdef __cplusplus
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                interface ISmartCardChallengeContext;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

#endif /* __cplusplus */

#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_FWD_DEFINED__ */


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

#ifdef __cplusplus
extern "C"{
#endif 


/* interface __MIDL_itf_windows2Edevices2Esmartcards_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 Devices {
namespace SmartCards {
class SmartCard;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
interface ISmartCard;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0000 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0000_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0581 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0581 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0581_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0581_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0001 */
/* [local] */ 

#ifndef DEF___FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#define DEF___FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("86b29903-916e-5817-bc96-df324475e31a"))
IIterator<ABI::Windows::Devices::SmartCards::SmartCard*> : IIterator_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCard*, ABI::Windows::Devices::SmartCards::ISmartCard*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterator`1<Windows.Devices.SmartCards.SmartCard>"; }
};
typedef IIterator<ABI::Windows::Devices::SmartCards::SmartCard*> __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_t;
#define ____FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard ABI::Windows::Foundation::Collections::__FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0001 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0001_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0001_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0582 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0582 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0582_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0582_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0002 */
/* [local] */ 

#ifndef DEF___FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#define DEF___FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("a32c5202-d113-535f-880e-50f3e5121ef8"))
IIterable<ABI::Windows::Devices::SmartCards::SmartCard*> : IIterable_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCard*, ABI::Windows::Devices::SmartCards::ISmartCard*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IIterable`1<Windows.Devices.SmartCards.SmartCard>"; }
};
typedef IIterable<ABI::Windows::Devices::SmartCards::SmartCard*> __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_t;
#define ____FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard ABI::Windows::Foundation::Collections::__FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0002 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0002_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0002_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0583 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0583 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0583_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0583_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0003 */
/* [local] */ 

#ifndef DEF___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#define DEF___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation { namespace Collections {
template <>
struct __declspec(uuid("4bee6991-3508-5f03-a2f4-90a5ddb26bd8"))
IVectorView<ABI::Windows::Devices::SmartCards::SmartCard*> : IVectorView_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCard*, ABI::Windows::Devices::SmartCards::ISmartCard*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.Collections.IVectorView`1<Windows.Devices.SmartCards.SmartCard>"; }
};
typedef IVectorView<ABI::Windows::Devices::SmartCards::SmartCard*> __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_t;
#define ____FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard ABI::Windows::Foundation::Collections::__FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_t

/* ABI */ } /* Windows */ } /* Foundation */ } /* Collections */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
class SmartCardChallengeContext;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
interface ISmartCardChallengeContext;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0003 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0003_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0003_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0584 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0584 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0584_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0584_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0004 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("96b172f6-dedb-5f3e-af90-7b0f10219352"))
IAsyncOperationCompletedHandler<ABI::Windows::Devices::SmartCards::SmartCardChallengeContext*> : IAsyncOperationCompletedHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCardChallengeContext*, ABI::Windows::Devices::SmartCards::ISmartCardChallengeContext*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Devices.SmartCards.SmartCardChallengeContext>"; }
};
typedef IAsyncOperationCompletedHandler<ABI::Windows::Devices::SmartCards::SmartCardChallengeContext*> __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0004 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0004_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0004_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0585 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0585 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0585_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0585_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0005 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_USE
#define DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("1c650663-3f68-599b-b9d4-c350f13ee4e4"))
IAsyncOperation<ABI::Windows::Devices::SmartCards::SmartCardChallengeContext*> : IAsyncOperation_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCardChallengeContext*, ABI::Windows::Devices::SmartCards::ISmartCardChallengeContext*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Devices.SmartCards.SmartCardChallengeContext>"; }
};
typedef IAsyncOperation<ABI::Windows::Devices::SmartCards::SmartCardChallengeContext*> __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_t;
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
class SmartCardProvisioning;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
interface ISmartCardProvisioning;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0005 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0005_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0005_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0586 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0586 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0586_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0586_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0006 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("7a2e58dc-22ee-5cb8-83cc-a7a61b9dcd2c"))
IAsyncOperationCompletedHandler<ABI::Windows::Devices::SmartCards::SmartCardProvisioning*> : IAsyncOperationCompletedHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCardProvisioning*, ABI::Windows::Devices::SmartCards::ISmartCardProvisioning*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Devices.SmartCards.SmartCardProvisioning>"; }
};
typedef IAsyncOperationCompletedHandler<ABI::Windows::Devices::SmartCards::SmartCardProvisioning*> __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0006 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0006_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0006_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0587 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0587 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0587_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0587_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0007 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_USE
#define DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("6184fc80-b752-5ce8-a136-f57174bb9309"))
IAsyncOperation<ABI::Windows::Devices::SmartCards::SmartCardProvisioning*> : IAsyncOperation_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCardProvisioning*, ABI::Windows::Devices::SmartCards::ISmartCardProvisioning*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Devices.SmartCards.SmartCardProvisioning>"; }
};
typedef IAsyncOperation<ABI::Windows::Devices::SmartCards::SmartCardProvisioning*> __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_t;
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
class SmartCardReader;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
interface ISmartCardReader;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0007 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0007_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0007_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0588 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0588 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0588_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0588_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0008 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("20d3244d-375a-5f7d-8944-164fdfed4239"))
IAsyncOperationCompletedHandler<ABI::Windows::Devices::SmartCards::SmartCardReader*> : IAsyncOperationCompletedHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCardReader*, ABI::Windows::Devices::SmartCards::ISmartCardReader*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Devices.SmartCards.SmartCardReader>"; }
};
typedef IAsyncOperationCompletedHandler<ABI::Windows::Devices::SmartCards::SmartCardReader*> __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0008 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0008_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0008_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0589 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0589 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0589_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0589_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0009 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_USE
#define DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("036a830d-bbca-5cb9-977f-b29ea3042149"))
IAsyncOperation<ABI::Windows::Devices::SmartCards::SmartCardReader*> : IAsyncOperation_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCardReader*, ABI::Windows::Devices::SmartCards::ISmartCardReader*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Devices.SmartCards.SmartCardReader>"; }
};
typedef IAsyncOperation<ABI::Windows::Devices::SmartCards::SmartCardReader*> __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_t;
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_t

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

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
enum SmartCardReaderStatus;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0009 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0009_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0009_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0590 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0590 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0590_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0590_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0010 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3d7e6ea9-e739-555c-9c02-07396c5321f5"))
IAsyncOperationCompletedHandler<enum ABI::Windows::Devices::SmartCards::SmartCardReaderStatus> : IAsyncOperationCompletedHandler_impl<enum ABI::Windows::Devices::SmartCards::SmartCardReaderStatus> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Devices.SmartCards.SmartCardReaderStatus>"; }
};
typedef IAsyncOperationCompletedHandler<enum ABI::Windows::Devices::SmartCards::SmartCardReaderStatus> __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0010 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0010_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0010_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0591 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0591 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0591_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0591_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0011 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_USE
#define DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("5ae402fa-1f22-5570-a0c8-b2320adedb81"))
IAsyncOperation<enum ABI::Windows::Devices::SmartCards::SmartCardReaderStatus> : IAsyncOperation_impl<enum ABI::Windows::Devices::SmartCards::SmartCardReaderStatus> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Devices.SmartCards.SmartCardReaderStatus>"; }
};
typedef IAsyncOperation<enum ABI::Windows::Devices::SmartCards::SmartCardReaderStatus> __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_t;
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_t

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

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
enum SmartCardStatus;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0011 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0011_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0011_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0592 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0592 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0592_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0592_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0012 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("bdaf4a41-3b4a-56b0-aeec-fee71cc7f328"))
IAsyncOperationCompletedHandler<enum ABI::Windows::Devices::SmartCards::SmartCardStatus> : IAsyncOperationCompletedHandler_impl<enum ABI::Windows::Devices::SmartCards::SmartCardStatus> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Devices.SmartCards.SmartCardStatus>"; }
};
typedef IAsyncOperationCompletedHandler<enum ABI::Windows::Devices::SmartCards::SmartCardStatus> __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0012 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0012_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0012_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0593 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0593 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0593_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0593_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0013 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_USE
#define DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("e2223376-8cf6-51bd-9907-1344aa665e5d"))
IAsyncOperation<enum ABI::Windows::Devices::SmartCards::SmartCardStatus> : IAsyncOperation_impl<enum ABI::Windows::Devices::SmartCards::SmartCardStatus> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Devices.SmartCards.SmartCardStatus>"; }
};
typedef IAsyncOperation<enum ABI::Windows::Devices::SmartCards::SmartCardStatus> __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_t;
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0013 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0013_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0013_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0594 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0594 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0594_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0594_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0014 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#define DEF___FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("bfea3fad-411e-5721-88f5-92c9b9fbbe14"))
IAsyncOperationCompletedHandler<__FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard*> : IAsyncOperationCompletedHandler_impl<__FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Foundation.Collections.IVectorView`1<Windows.Devices.SmartCards.SmartCard>>"; }
};
typedef IAsyncOperationCompletedHandler<__FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard*> __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_t;
#define ____FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0014 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0014_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0014_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0595 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0595 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0595_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0595_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0015 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#define DEF___FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3b2691b2-fc5e-59ff-8c6f-e6dd29a967fc"))
IAsyncOperation<__FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard*> : IAsyncOperation_impl<__FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Foundation.Collections.IVectorView`1<Windows.Devices.SmartCards.SmartCard>>"; }
};
typedef IAsyncOperation<__FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard*> __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_t;
#define ____FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_FWD_DEFINED__
#define __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard ABI::Windows::Foundation::__FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
class CardAddedEventArgs;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
interface ICardAddedEventArgs;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0015 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0015_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0015_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0596 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0596 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0596_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0596_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0016 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("d36f2db9-5674-5f74-9f69-3cdc4559999f"))
ITypedEventHandler<ABI::Windows::Devices::SmartCards::SmartCardReader*,ABI::Windows::Devices::SmartCards::CardAddedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCardReader*, ABI::Windows::Devices::SmartCards::ISmartCardReader*>,ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::CardAddedEventArgs*, ABI::Windows::Devices::SmartCards::ICardAddedEventArgs*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.TypedEventHandler`2<Windows.Devices.SmartCards.SmartCardReader, Windows.Devices.SmartCards.CardAddedEventArgs>"; }
};
typedef ITypedEventHandler<ABI::Windows::Devices::SmartCards::SmartCardReader*,ABI::Windows::Devices::SmartCards::CardAddedEventArgs*> __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_t;
#define ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_FWD_DEFINED__
#define __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_USE */
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
class CardRemovedEventArgs;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
interface ICardRemovedEventArgs;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0016 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0016_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0016_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0597 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0597 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0597_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0597_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0017 */
/* [local] */ 

#ifndef DEF___FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_USE
#define DEF___FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("69da07c6-b266-5a1c-937c-d82b4a8232c6"))
ITypedEventHandler<ABI::Windows::Devices::SmartCards::SmartCardReader*,ABI::Windows::Devices::SmartCards::CardRemovedEventArgs*> : ITypedEventHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::SmartCardReader*, ABI::Windows::Devices::SmartCards::ISmartCardReader*>,ABI::Windows::Foundation::Internal::AggregateType<ABI::Windows::Devices::SmartCards::CardRemovedEventArgs*, ABI::Windows::Devices::SmartCards::ICardRemovedEventArgs*>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.TypedEventHandler`2<Windows.Devices.SmartCards.SmartCardReader, Windows.Devices.SmartCards.CardRemovedEventArgs>"; }
};
typedef ITypedEventHandler<ABI::Windows::Devices::SmartCards::SmartCardReader*,ABI::Windows::Devices::SmartCards::CardRemovedEventArgs*> __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_t;
#define ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_FWD_DEFINED__
#define __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs ABI::Windows::Foundation::__FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_t

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

#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Storage {
namespace Streams {
interface IBuffer;
} /*Streams*/
} /*Storage*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0017 */
/* [local] */ 





extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0017_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0017_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0598 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0598 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0598_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0598_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0018 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIBuffer_USE
#define DEF___FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIBuffer_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("51c3d2fd-b8a1-5620-b746-7ee6d533aca3"))
IAsyncOperationCompletedHandler<ABI::Windows::Storage::Streams::IBuffer*> : IAsyncOperationCompletedHandler_impl<ABI::Windows::Storage::Streams::IBuffer*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Windows.Storage.Streams.IBuffer>"; }
};
typedef IAsyncOperationCompletedHandler<ABI::Windows::Storage::Streams::IBuffer*> __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIBuffer_t;
#define ____FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIBuffer_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIBuffer ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_Windows__CStorage__CStreams__CIBuffer_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0018 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0018_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0018_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0599 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0599 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0599_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0599_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0019 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_Windows__CStorage__CStreams__CIBuffer_USE
#define DEF___FIAsyncOperation_1_Windows__CStorage__CStreams__CIBuffer_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3bee8834-b9a7-5a80-a746-5ef097227878"))
IAsyncOperation<ABI::Windows::Storage::Streams::IBuffer*> : IAsyncOperation_impl<ABI::Windows::Storage::Streams::IBuffer*> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IBuffer>"; }
};
typedef IAsyncOperation<ABI::Windows::Storage::Streams::IBuffer*> __FIAsyncOperation_1_Windows__CStorage__CStreams__CIBuffer_t;
#define ____FIAsyncOperation_1_Windows__CStorage__CStreams__CIBuffer_FWD_DEFINED__
#define __FIAsyncOperation_1_Windows__CStorage__CStreams__CIBuffer ABI::Windows::Foundation::__FIAsyncOperation_1_Windows__CStorage__CStreams__CIBuffer_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0019 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0019_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0019_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0600 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0600 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0600_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0600_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0020 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_boolean_USE
#define DEF___FIAsyncOperationCompletedHandler_1_boolean_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("c1d3d1a2-ae17-5a5f-b5a2-bdcc8844889a"))
IAsyncOperationCompletedHandler<bool> : IAsyncOperationCompletedHandler_impl<ABI::Windows::Foundation::Internal::AggregateType<bool, boolean>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Boolean>"; }
};
typedef IAsyncOperationCompletedHandler<bool> __FIAsyncOperationCompletedHandler_1_boolean_t;
#define ____FIAsyncOperationCompletedHandler_1_boolean_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_boolean ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_boolean_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0020 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0020_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0020_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0601 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0601 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0601_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0601_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0021 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_boolean_USE
#define DEF___FIAsyncOperation_1_boolean_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("cdb5efb3-5788-509d-9be1-71ccb8a3362a"))
IAsyncOperation<bool> : IAsyncOperation_impl<ABI::Windows::Foundation::Internal::AggregateType<bool, boolean>> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Boolean>"; }
};
typedef IAsyncOperation<bool> __FIAsyncOperation_1_boolean_t;
#define ____FIAsyncOperation_1_boolean_FWD_DEFINED__
#define __FIAsyncOperation_1_boolean ABI::Windows::Foundation::__FIAsyncOperation_1_boolean_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0021 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0021_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0021_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0602 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0602 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0602_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0602_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0022 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_GUID_USE
#define DEF___FIAsyncOperationCompletedHandler_1_GUID_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("5233899b-ba7e-504f-bb83-ceebac62decf"))
IAsyncOperationCompletedHandler<GUID> : IAsyncOperationCompletedHandler_impl<GUID> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<Guid>"; }
};
typedef IAsyncOperationCompletedHandler<GUID> __FIAsyncOperationCompletedHandler_1_GUID_t;
#define ____FIAsyncOperationCompletedHandler_1_GUID_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_GUID ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_GUID_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0022 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0022_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0022_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0603 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0603 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0603_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0603_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0023 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_GUID_USE
#define DEF___FIAsyncOperation_1_GUID_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("6607bc41-294b-5975-9c3f-4b49836d0916"))
IAsyncOperation<GUID> : IAsyncOperation_impl<GUID> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<Guid>"; }
};
typedef IAsyncOperation<GUID> __FIAsyncOperation_1_GUID_t;
#define ____FIAsyncOperation_1_GUID_FWD_DEFINED__
#define __FIAsyncOperation_1_GUID ABI::Windows::Foundation::__FIAsyncOperation_1_GUID_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0023 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0023_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0023_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0604 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0604 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0604_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0604_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0024 */
/* [local] */ 

#ifndef DEF___FIAsyncOperationCompletedHandler_1_HSTRING_USE
#define DEF___FIAsyncOperationCompletedHandler_1_HSTRING_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("b79a741f-7fb5-50ae-9e99-911201ec3d41"))
IAsyncOperationCompletedHandler<HSTRING> : IAsyncOperationCompletedHandler_impl<HSTRING> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.AsyncOperationCompletedHandler`1<String>"; }
};
typedef IAsyncOperationCompletedHandler<HSTRING> __FIAsyncOperationCompletedHandler_1_HSTRING_t;
#define ____FIAsyncOperationCompletedHandler_1_HSTRING_FWD_DEFINED__
#define __FIAsyncOperationCompletedHandler_1_HSTRING ABI::Windows::Foundation::__FIAsyncOperationCompletedHandler_1_HSTRING_t

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0024 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0024_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0024_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0605 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0605 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0605_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0605_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0025 */
/* [local] */ 

#ifndef DEF___FIAsyncOperation_1_HSTRING_USE
#define DEF___FIAsyncOperation_1_HSTRING_USE
#if defined(__cplusplus) && !defined(RO_NO_TEMPLATE_NAME)
} /*extern "C"*/ 
namespace ABI { namespace Windows { namespace Foundation {
template <>
struct __declspec(uuid("3e1fe603-f897-5263-b328-0806426b8a79"))
IAsyncOperation<HSTRING> : IAsyncOperation_impl<HSTRING> {
static const wchar_t* z_get_rc_name_impl() {
return L"Windows.Foundation.IAsyncOperation`1<String>"; }
};
typedef IAsyncOperation<HSTRING> __FIAsyncOperation_1_HSTRING_t;
#define ____FIAsyncOperation_1_HSTRING_FWD_DEFINED__
#define __FIAsyncOperation_1_HSTRING ABI::Windows::Foundation::__FIAsyncOperation_1_HSTRING_t

/* ABI */ } /* Windows */ } /* Foundation */ }
extern "C" {
#endif //__cplusplus
#endif /* DEF___FIAsyncOperation_1_HSTRING_USE */
#if defined(__cplusplus)
}
#endif // defined(__cplusplus)
#include <Windows.Foundation.h>
#if !defined(__windows2Estorage2Estreams_h__)
#include <Windows.Storage.Streams.h>
#endif // !defined(__windows2Estorage2Estreams_h__)
#if defined(__cplusplus)
extern "C" {
#endif // defined(__cplusplus)
#if !defined(__cplusplus)
typedef struct __x_ABI_CWindows_CFoundation_CDateTime __x_ABI_CWindows_CFoundation_CDateTime;

#endif


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

typedef enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderKind __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderKind;


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


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

typedef enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderStatus __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderStatus;


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


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

typedef enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardStatus __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardStatus;


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


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

typedef enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption;


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


#endif






#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
class SmartCardPinPolicy;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
class SmartCardPinResetRequest;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif
#ifdef __cplusplus
namespace ABI {
namespace Windows {
namespace Devices {
namespace SmartCards {
class SmartCardPinResetDeferral;
} /*SmartCards*/
} /*Devices*/
} /*Windows*/
}
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0025 */
/* [local] */ 


#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Foundation {
            
            typedef struct DateTime DateTime;
            
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif



#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                
                typedef enum SmartCardReaderKind SmartCardReaderKind;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                
                typedef enum SmartCardReaderStatus SmartCardReaderStatus;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                
                typedef enum SmartCardStatus SmartCardStatus;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus

} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                
                typedef enum SmartCardPinCharacterPolicyOption SmartCardPinCharacterPolicyOption;
                
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif









extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0025_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0025_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0606 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0606 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0606_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0606_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0026 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0026 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0026_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0026_v0_0_s_ifspec;

#ifndef ____FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__
#define ____FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("86b29903-916e-5817-bc96-df324475e31a")
    __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard : public IInspectable
    {
    public:
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Current( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCard **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::Devices::SmartCards::ISmartCard **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCardVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * 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__CDevices__CSmartCards__CSmartCard * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Current )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard **current);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_HasCurrent )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *MoveNext )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [retval][out] */ __RPC__out boolean *hasCurrent);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCardVtbl;

    interface __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard
    {
        CONST_VTBL struct __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCardVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0027 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0027 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0027_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0027_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0607 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0607 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0607_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0607_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0028 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0028 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0028_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0028_v0_0_s_ifspec;

#ifndef ____FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__
#define ____FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("a32c5202-d113-535f-880e-50f3e5121ef8")
    __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE First( 
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard **first) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCardVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard * 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__CDevices__CSmartCards__CSmartCard * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *First )( 
            __RPC__in __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIIterator_1_Windows__CDevices__CSmartCards__CSmartCard **first);
        
        END_INTERFACE
    } __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCardVtbl;

    interface __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard
    {
        CONST_VTBL struct __FIIterable_1_Windows__CDevices__CSmartCards__CSmartCardVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0029 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIIterable_1_Windows__CDevices__CSmartCards__CSmartCard */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0029 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0029_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0029_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0608 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0608 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0608_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0608_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0030 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0030 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0030_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0030_v0_0_s_ifspec;

#ifndef ____FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__
#define ____FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("4bee6991-3508-5f03-a2f4-90a5ddb26bd8")
    __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard : public IInspectable
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE GetAt( 
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCard **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::Devices::SmartCards::ISmartCard *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::Devices::SmartCards::ISmartCard **items,
            /* [retval][out] */ __RPC__out unsigned int *actual) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCardVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * 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__CDevices__CSmartCards__CSmartCard * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetAt )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ unsigned int index,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard **item);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Size )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [retval][out] */ __RPC__out unsigned int *size);
        
        HRESULT ( STDMETHODCALLTYPE *IndexOf )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard *item,
            /* [out] */ __RPC__out unsigned int *index,
            /* [retval][out] */ __RPC__out boolean *found);
        
        HRESULT ( STDMETHODCALLTYPE *GetMany )( 
            __RPC__in __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ unsigned int startIndex,
            /* [in] */ unsigned int capacity,
            /* [size_is][length_is][out] */ __RPC__out_ecount_part(capacity, *actual) __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard **items,
            /* [retval][out] */ __RPC__out unsigned int *actual);
        
        END_INTERFACE
    } __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCardVtbl;

    interface __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard
    {
        CONST_VTBL struct __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCardVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0031 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0031 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0031_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0031_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0609 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0609 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0609_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0609_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0032 */
/* [local] */ 

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



/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0032 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0032_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0032_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("96b172f6-dedb-5f3e-af90-7b0f10219352")
    __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

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

    interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContextVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0033 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0033 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0033_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0033_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0610 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0610 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0610_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0610_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0034 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0034 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0034_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0034_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("1c650663-3f68-599b-b9d4-c350f13ee4e4")
    __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCardChallengeContext **results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContextVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext * 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__CDevices__CSmartCards__CSmartCardChallengeContext * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext **results);
        
        END_INTERFACE
    } __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContextVtbl;

    interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext
    {
        CONST_VTBL struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContextVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0035 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0035 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0035_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0035_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0611 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0611 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0611_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0611_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0036 */
/* [local] */ 

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



/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0036 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0036_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0036_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("7a2e58dc-22ee-5cb8-83cc-a7a61b9dcd2c")
    __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

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

    interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioningVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0037 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0037 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0037_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0037_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0612 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0612 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0612_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0612_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0038 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0038 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0038_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0038_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("6184fc80-b752-5ce8-a136-f57174bb9309")
    __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCardProvisioning **results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioningVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning * 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__CDevices__CSmartCards__CSmartCardProvisioning * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning **results);
        
        END_INTERFACE
    } __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioningVtbl;

    interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning
    {
        CONST_VTBL struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioningVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0039 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0039 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0039_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0039_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0613 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0613 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0613_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0613_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0040 */
/* [local] */ 

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



/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0040 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0040_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0040_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("20d3244d-375a-5f7d-8944-164fdfed4239")
    __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

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

    interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0041 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0041 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0041_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0041_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0614 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0614 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0614_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0614_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0042 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0042 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0042_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0042_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("036a830d-bbca-5cb9-977f-b29ea3042149")
    __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCardReader **results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader * 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__CDevices__CSmartCards__CSmartCardReader * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReader **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader * This,
            /* [retval][out] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader **results);
        
        END_INTERFACE
    } __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderVtbl;

    interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader
    {
        CONST_VTBL struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0043 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0043 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0043_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0043_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0615 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0615 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0615_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0615_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0044 */
/* [local] */ 

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



/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0044 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0044_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0044_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3d7e6ea9-e739-555c-9c02-07396c5321f5")
    __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

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

    interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatusVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0045 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0045 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0045_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0045_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0616 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0616 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0616_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0616_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0046 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0046 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0046_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0046_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("5ae402fa-1f22-5570-a0c8-b2320adedb81")
    __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__out enum ABI::Windows::Devices::SmartCards::SmartCardReaderStatus *results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatusVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus * 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__CDevices__CSmartCards__CSmartCardReaderStatus * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus * This,
            /* [retval][out] */ __RPC__out enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderStatus *results);
        
        END_INTERFACE
    } __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatusVtbl;

    interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus
    {
        CONST_VTBL struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatusVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0047 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0047 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0047_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0047_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0617 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0617 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0617_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0617_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0048 */
/* [local] */ 

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



/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0048 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0048_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0048_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("bdaf4a41-3b4a-56b0-aeec-fee71cc7f328")
    __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

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

    interface __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatusVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0049 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0049 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0049_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0049_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0618 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0618 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0618_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0618_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0050 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0050 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0050_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0050_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("e2223376-8cf6-51bd-9907-1344aa665e5d")
    __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__out enum ABI::Windows::Devices::SmartCards::SmartCardStatus *results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatusVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus * 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__CDevices__CSmartCards__CSmartCardStatus * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1_Windows__CDevices__CSmartCards__CSmartCardStatus **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus * This,
            /* [retval][out] */ __RPC__out enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardStatus *results);
        
        END_INTERFACE
    } __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatusVtbl;

    interface __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus
    {
        CONST_VTBL struct __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatusVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0051 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0051 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0051_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0051_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0619 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0619 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0619_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0619_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0052 */
/* [local] */ 

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



/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0052 */
/* [local] */ 




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0052_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0052_v0_0_s_ifspec;

#ifndef ____FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__
#define ____FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("bfea3fad-411e-5721-88f5-92c9b9fbbe14")
    __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard *asyncInfo,
            /* [in] */ AsyncStatus status) = 0;
        
    };
    
    
#else 	/* C style interface */

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

    interface __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard
    {
        CONST_VTBL struct __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCardVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0053 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0053 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0053_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0053_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0620 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0620 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0620_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0620_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0054 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0054 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0054_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0054_v0_0_s_ifspec;

#ifndef ____FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__
#define ____FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("3b2691b2-fc5e-59ff-8c6f-e6dd29a967fc")
    __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard : public IInspectable
    {
    public:
        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Completed( 
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard *handler) = 0;
        
        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Completed( 
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard **handler) = 0;
        
        virtual HRESULT STDMETHODCALLTYPE GetResults( 
            /* [retval][out] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard **results) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCardVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * 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___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Completed )( 
            __RPC__in __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [in] */ __RPC__in_opt __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard *handler);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Completed )( 
            __RPC__in __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIAsyncOperationCompletedHandler_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard **handler);
        
        HRESULT ( STDMETHODCALLTYPE *GetResults )( 
            __RPC__in __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard * This,
            /* [retval][out] */ __RPC__deref_out_opt __FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard **results);
        
        END_INTERFACE
    } __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCardVtbl;

    interface __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard
    {
        CONST_VTBL struct __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCardVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


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

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

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

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0055 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0055 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0055_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0055_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0621 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0621 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0621_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0621_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0056 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0056 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0056_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0056_v0_0_s_ifspec;

#ifndef ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("d36f2db9-5674-5f74-9f69-3cdc4559999f")
    __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCardReader *sender,
            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ICardAddedEventArgs *e) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader *sender,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs *e);
        
        END_INTERFACE
    } __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgsVtbl;

    interface __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs
    {
        CONST_VTBL struct __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_Invoke(This,sender,e)	\
    ( (This)->lpVtbl -> Invoke(This,sender,e) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0057 */
/* [local] */ 

#endif /* pinterface */
#endif /* DEF___FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0057 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0057_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0057_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0622 */




/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0622 */




extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0622_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0622_v0_0_s_ifspec;

/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0058 */
/* [local] */ 

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


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0058 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0058_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0058_v0_0_s_ifspec;

#ifndef ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_INTERFACE_DEFINED__
#define ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_INTERFACE_DEFINED__

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



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


EXTERN_C const IID IID___FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    
    MIDL_INTERFACE("69da07c6-b266-5a1c-937c-d82b4a8232c6")
    __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs : public IUnknown
    {
    public:
        virtual HRESULT STDMETHODCALLTYPE Invoke( 
            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCardReader *sender,
            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ICardRemovedEventArgs *e) = 0;
        
    };
    
    
#else 	/* C style interface */

    typedef struct __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader *sender,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs *e);
        
        END_INTERFACE
    } __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgsVtbl;

    interface __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs
    {
        CONST_VTBL struct __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_Invoke(This,sender,e)	\
    ( (This)->lpVtbl -> Invoke(This,sender,e) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0059 */
/* [local] */ 

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

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderKind
    {
        SmartCardReaderKind_Any	= 0,
        SmartCardReaderKind_Generic	= 1,
        SmartCardReaderKind_Tpm	= 2,
        SmartCardReaderKind_Nfc	= 3,
        SmartCardReaderKind_Uicc	= 4
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderStatus
    {
        SmartCardReaderStatus_Disconnected	= 0,
        SmartCardReaderStatus_Ready	= 1,
        SmartCardReaderStatus_Exclusive	= 2
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardStatus
    {
        SmartCardStatus_Disconnected	= 0,
        SmartCardStatus_Ready	= 1,
        SmartCardStatus_Shared	= 2,
        SmartCardStatus_Exclusive	= 3,
        SmartCardStatus_Unresponsive	= 4
    } ;
#endif /* end if !defined(__cplusplus) */

#endif
#if !defined(__cplusplus)

#if !defined(__cplusplus)
/* [v1_enum] */ 
enum __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption
    {
        SmartCardPinCharacterPolicyOption_Allow	= 0,
        SmartCardPinCharacterPolicyOption_RequireAtLeastOne	= 1,
        SmartCardPinCharacterPolicyOption_Disallow	= 2
    } ;
#endif /* end if !defined(__cplusplus) */

#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0059 */
/* [local] */ 

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                
                /* [v1_enum] */ 
                enum SmartCardReaderKind
                    {
                        SmartCardReaderKind_Any	= 0,
                        SmartCardReaderKind_Generic	= 1,
                        SmartCardReaderKind_Tpm	= 2,
                        SmartCardReaderKind_Nfc	= 3,
                        SmartCardReaderKind_Uicc	= 4
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                
                /* [v1_enum] */ 
                enum SmartCardReaderStatus
                    {
                        SmartCardReaderStatus_Disconnected	= 0,
                        SmartCardReaderStatus_Ready	= 1,
                        SmartCardReaderStatus_Exclusive	= 2
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                
                /* [v1_enum] */ 
                enum SmartCardStatus
                    {
                        SmartCardStatus_Disconnected	= 0,
                        SmartCardStatus_Ready	= 1,
                        SmartCardStatus_Shared	= 2,
                        SmartCardStatus_Exclusive	= 3,
                        SmartCardStatus_Unresponsive	= 4
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif

#ifdef __cplusplus
} /* end extern "C" */
namespace ABI {
    namespace Windows {
        namespace Devices {
            namespace SmartCards {
                
                /* [v1_enum] */ 
                enum SmartCardPinCharacterPolicyOption
                    {
                        SmartCardPinCharacterPolicyOption_Allow	= 0,
                        SmartCardPinCharacterPolicyOption_RequireAtLeastOne	= 1,
                        SmartCardPinCharacterPolicyOption_Disallow	= 2
                    } ;
            } /* end namespace */
        } /* end namespace */
    } /* end namespace */
} /* end namespace */

extern "C" { 
#endif



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0059_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0059_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardPinResetHandler */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("138D5E40-F3BC-4A5C-B41D-4B4EF684E237")
                    ISmartCardPinResetHandler : public IUnknown
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Invoke( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCardProvisioning *sender,
                            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCardPinResetRequest *request) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardPinResetHandler = __uuidof(ISmartCardPinResetHandler);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandlerVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler * This);
        
        HRESULT ( STDMETHODCALLTYPE *Invoke )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning *sender,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest *request);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandlerVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandlerVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler_Invoke(This,sender,request)	\
    ( (This)->lpVtbl -> Invoke(This,sender,request) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0060 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCardReaderStatics[] = L"Windows.Devices.SmartCards.ISmartCardReaderStatics";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0060 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0060_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0060_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardReaderStatics */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("103C04E1-A1CA-48F2-A281-5B6F669AF107")
                    ISmartCardReaderStatics : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE GetDeviceSelector( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *selector) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetDeviceSelectorWithKind( 
                            /* [in] */ ABI::Windows::Devices::SmartCards::SmartCardReaderKind kind,
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *selector) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE FromIdAsync( 
                            /* [in] */ __RPC__in HSTRING deviceId,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardReaderStatics = __uuidof(ISmartCardReaderStatics);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStaticsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics * 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_CDevices_CSmartCards_CISmartCardReaderStatics * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeviceSelector )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *selector);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeviceSelectorWithKind )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics * This,
            /* [in] */ __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderKind kind,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *selector);
        
        HRESULT ( STDMETHODCALLTYPE *FromIdAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics * This,
            /* [in] */ __RPC__in HSTRING deviceId,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReader **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStaticsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_GetDeviceSelector(This,selector)	\
    ( (This)->lpVtbl -> GetDeviceSelector(This,selector) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_GetDeviceSelectorWithKind(This,kind,selector)	\
    ( (This)->lpVtbl -> GetDeviceSelectorWithKind(This,kind,selector) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_FromIdAsync(This,deviceId,result)	\
    ( (This)->lpVtbl -> FromIdAsync(This,deviceId,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderStatics_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0061 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCardReader[] = L"Windows.Devices.SmartCards.ISmartCardReader";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0061 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0061_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0061_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardReader */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("1074B4E0-54C2-4DF0-817A-14C14378F06C")
                    ISmartCardReader : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_DeviceId( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Name( 
                            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Kind( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Devices::SmartCards::SmartCardReaderKind *value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetStatusAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE FindAllCardsAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE add_CardAdded( 
                            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs *handler,
                            /* [out][retval] */ __RPC__out EventRegistrationToken *token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE remove_CardAdded( 
                            /* [in] */ EventRegistrationToken token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE add_CardRemoved( 
                            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs *handler,
                            /* [out][retval] */ __RPC__out EventRegistrationToken *token) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE remove_CardRemoved( 
                            /* [in] */ EventRegistrationToken token) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardReader = __uuidof(ISmartCardReader);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * 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_CDevices_CSmartCards_CISmartCardReader * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_DeviceId )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Name )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [out][retval] */ __RPC__deref_out_opt HSTRING *value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Kind )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardReaderKind *value);
        
        HRESULT ( STDMETHODCALLTYPE *GetStatusAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardReaderStatus **result);
        
        HRESULT ( STDMETHODCALLTYPE *FindAllCardsAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1___FIVectorView_1_Windows__CDevices__CSmartCards__CSmartCard **result);
        
        HRESULT ( STDMETHODCALLTYPE *add_CardAdded )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardAddedEventArgs *handler,
            /* [out][retval] */ __RPC__out EventRegistrationToken *token);
        
        HRESULT ( STDMETHODCALLTYPE *remove_CardAdded )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [in] */ EventRegistrationToken token);
        
        HRESULT ( STDMETHODCALLTYPE *add_CardRemoved )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [in] */ __RPC__in_opt __FITypedEventHandler_2_Windows__CDevices__CSmartCards__CSmartCardReader_Windows__CDevices__CSmartCards__CCardRemovedEventArgs *handler,
            /* [out][retval] */ __RPC__out EventRegistrationToken *token);
        
        HRESULT ( STDMETHODCALLTYPE *remove_CardRemoved )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader * This,
            /* [in] */ EventRegistrationToken token);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReaderVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_get_DeviceId(This,value)	\
    ( (This)->lpVtbl -> get_DeviceId(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_get_Name(This,value)	\
    ( (This)->lpVtbl -> get_Name(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_get_Kind(This,value)	\
    ( (This)->lpVtbl -> get_Kind(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_GetStatusAsync(This,result)	\
    ( (This)->lpVtbl -> GetStatusAsync(This,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_FindAllCardsAsync(This,result)	\
    ( (This)->lpVtbl -> FindAllCardsAsync(This,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_add_CardAdded(This,handler,token)	\
    ( (This)->lpVtbl -> add_CardAdded(This,handler,token) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_remove_CardAdded(This,token)	\
    ( (This)->lpVtbl -> remove_CardAdded(This,token) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_add_CardRemoved(This,handler,token)	\
    ( (This)->lpVtbl -> add_CardRemoved(This,handler,token) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_remove_CardRemoved(This,token)	\
    ( (This)->lpVtbl -> remove_CardRemoved(This,token) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0062 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ICardAddedEventArgs[] = L"Windows.Devices.SmartCards.ICardAddedEventArgs";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0062 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0062_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0062_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ICardAddedEventArgs */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("18BBEF98-F18B-4DD3-B118-DFB2C8E23CC6")
                    ICardAddedEventArgs : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SmartCard( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCard **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ICardAddedEventArgs = __uuidof(ICardAddedEventArgs);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs * 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_CDevices_CSmartCards_CICardAddedEventArgs * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SmartCard )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgsVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_get_SmartCard(This,value)	\
    ( (This)->lpVtbl -> get_SmartCard(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CICardAddedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0063 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ICardRemovedEventArgs[] = L"Windows.Devices.SmartCards.ICardRemovedEventArgs";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0063 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0063_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0063_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ICardRemovedEventArgs */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("15331AAF-22D7-4945-AFC9-03B46F42A6CD")
                    ICardRemovedEventArgs : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SmartCard( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCard **value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ICardRemovedEventArgs = __uuidof(ICardRemovedEventArgs);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs * 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_CDevices_CSmartCards_CICardRemovedEventArgs * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SmartCard )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard **value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgsVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_get_SmartCard(This,value)	\
    ( (This)->lpVtbl -> get_SmartCard(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CICardRemovedEventArgs_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0064 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCard[] = L"Windows.Devices.SmartCards.ISmartCard";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0064 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0064_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0064_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCard */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCard;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("1B718871-6434-43F4-B55A-6A29623870AA")
                    ISmartCard : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Reader( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCardReader **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetStatusAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetAnswerToResetAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CStorage__CStreams__CIBuffer **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCard = __uuidof(ISmartCard);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard * 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_CDevices_CSmartCards_CISmartCard * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Reader )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardReader **value);
        
        HRESULT ( STDMETHODCALLTYPE *GetStatusAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardStatus **result);
        
        HRESULT ( STDMETHODCALLTYPE *GetAnswerToResetAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CStorage__CStreams__CIBuffer **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_get_Reader(This,value)	\
    ( (This)->lpVtbl -> get_Reader(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_GetStatusAsync(This,result)	\
    ( (This)->lpVtbl -> GetStatusAsync(This,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_GetAnswerToResetAsync(This,result)	\
    ( (This)->lpVtbl -> GetAnswerToResetAsync(This,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCard_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0065 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCardProvisioningStatics[] = L"Windows.Devices.SmartCards.ISmartCardProvisioningStatics";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0065 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0065_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0065_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardProvisioningStatics */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("13882848-0D13-4E70-9735-51DAECA5254F")
                    ISmartCardProvisioningStatics : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE FromSmartCardAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCard *card,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE RequestVirtualSmartCardCreationAsync( 
                            /* [in] */ __RPC__in HSTRING friendlyName,
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *administrativeKey,
                            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCardPinPolicy *pinPolicy,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE RequestVirtualSmartCardCreationAsyncWithCardId( 
                            /* [in] */ __RPC__in HSTRING friendlyName,
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *administrativeKey,
                            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCardPinPolicy *pinPolicy,
                            /* [in] */ GUID cardId,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE RequestVirtualSmartCardDeletionAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCard *card,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_boolean **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardProvisioningStatics = __uuidof(ISmartCardProvisioningStatics);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStaticsVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * 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_CDevices_CSmartCards_CISmartCardProvisioningStatics * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *FromSmartCardAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard *card,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning **result);
        
        HRESULT ( STDMETHODCALLTYPE *RequestVirtualSmartCardCreationAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * This,
            /* [in] */ __RPC__in HSTRING friendlyName,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *administrativeKey,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy *pinPolicy,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning **result);
        
        HRESULT ( STDMETHODCALLTYPE *RequestVirtualSmartCardCreationAsyncWithCardId )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * This,
            /* [in] */ __RPC__in HSTRING friendlyName,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *administrativeKey,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy *pinPolicy,
            /* [in] */ GUID cardId,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardProvisioning **result);
        
        HRESULT ( STDMETHODCALLTYPE *RequestVirtualSmartCardDeletionAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard *card,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_boolean **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStaticsVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_FromSmartCardAsync(This,card,result)	\
    ( (This)->lpVtbl -> FromSmartCardAsync(This,card,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_RequestVirtualSmartCardCreationAsync(This,friendlyName,administrativeKey,pinPolicy,result)	\
    ( (This)->lpVtbl -> RequestVirtualSmartCardCreationAsync(This,friendlyName,administrativeKey,pinPolicy,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_RequestVirtualSmartCardCreationAsyncWithCardId(This,friendlyName,administrativeKey,pinPolicy,cardId,result)	\
    ( (This)->lpVtbl -> RequestVirtualSmartCardCreationAsyncWithCardId(This,friendlyName,administrativeKey,pinPolicy,cardId,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_RequestVirtualSmartCardDeletionAsync(This,card,result)	\
    ( (This)->lpVtbl -> RequestVirtualSmartCardDeletionAsync(This,card,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningStatics_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0066 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCardProvisioning[] = L"Windows.Devices.SmartCards.ISmartCardProvisioning";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0066 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0066_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0066_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardProvisioning */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("19EEEDBD-1FAB-477C-B712-1A2C5AF1FD6E")
                    ISmartCardProvisioning : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SmartCard( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCard **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetIdAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_GUID **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetNameAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_HSTRING **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetChallengeContextAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE RequestPinChangeAsync( 
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_boolean **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE RequestPinResetAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Devices::SmartCards::ISmartCardPinResetHandler *handler,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_boolean **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardProvisioning = __uuidof(ISmartCardProvisioning);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * 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_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SmartCard )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCard **value);
        
        HRESULT ( STDMETHODCALLTYPE *GetIdAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_GUID **result);
        
        HRESULT ( STDMETHODCALLTYPE *GetNameAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_HSTRING **result);
        
        HRESULT ( STDMETHODCALLTYPE *GetChallengeContextAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_Windows__CDevices__CSmartCards__CSmartCardChallengeContext **result);
        
        HRESULT ( STDMETHODCALLTYPE *RequestPinChangeAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_boolean **result);
        
        HRESULT ( STDMETHODCALLTYPE *RequestPinResetAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetHandler *handler,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_boolean **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioningVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_get_SmartCard(This,value)	\
    ( (This)->lpVtbl -> get_SmartCard(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_GetIdAsync(This,result)	\
    ( (This)->lpVtbl -> GetIdAsync(This,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_GetNameAsync(This,result)	\
    ( (This)->lpVtbl -> GetNameAsync(This,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_GetChallengeContextAsync(This,result)	\
    ( (This)->lpVtbl -> GetChallengeContextAsync(This,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_RequestPinChangeAsync(This,result)	\
    ( (This)->lpVtbl -> RequestPinChangeAsync(This,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_RequestPinResetAsync(This,handler,result)	\
    ( (This)->lpVtbl -> RequestPinResetAsync(This,handler,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardProvisioning_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0067 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCardPinResetRequest[] = L"Windows.Devices.SmartCards.ISmartCardPinResetRequest";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0067 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0067_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0067_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardPinResetRequest */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("12FE3C4D-5FB9-4E8E-9FF6-61F475124FEF")
                    ISmartCardPinResetRequest : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Challenge( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Storage::Streams::IBuffer **value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Deadline( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Foundation::DateTime *value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE GetDeferral( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Devices::SmartCards::ISmartCardPinResetDeferral **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE SetResponse( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *response) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardPinResetRequest = __uuidof(ISmartCardPinResetRequest);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequestVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * 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_CDevices_CSmartCards_CISmartCardPinResetRequest * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Challenge )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer **value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Deadline )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CFoundation_CDateTime *value);
        
        HRESULT ( STDMETHODCALLTYPE *GetDeferral )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral **result);
        
        HRESULT ( STDMETHODCALLTYPE *SetResponse )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *response);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequestVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequestVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_get_Challenge(This,value)	\
    ( (This)->lpVtbl -> get_Challenge(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_get_Deadline(This,value)	\
    ( (This)->lpVtbl -> get_Deadline(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_GetDeferral(This,result)	\
    ( (This)->lpVtbl -> GetDeferral(This,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_SetResponse(This,response)	\
    ( (This)->lpVtbl -> SetResponse(This,response) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetRequest_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0068 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCardPinResetDeferral[] = L"Windows.Devices.SmartCards.ISmartCardPinResetDeferral";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0068 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0068_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0068_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardPinResetDeferral */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("18C94AAC-7805-4004-85E4-BBEFAC8F6884")
                    ISmartCardPinResetDeferral : public IInspectable
                    {
                    public:
                        virtual HRESULT STDMETHODCALLTYPE Complete( void) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardPinResetDeferral = __uuidof(ISmartCardPinResetDeferral);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferralVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral * 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_CDevices_CSmartCards_CISmartCardPinResetDeferral * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        HRESULT ( STDMETHODCALLTYPE *Complete )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral * This);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferralVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferralVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_Complete(This)	\
    ( (This)->lpVtbl -> Complete(This) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinResetDeferral_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0069 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCardPinPolicy[] = L"Windows.Devices.SmartCards.ISmartCardPinPolicy";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0069 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0069_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0069_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardPinPolicy */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("183CE184-4DB6-4841-AC9E-2AC1F39B7304")
                    ISmartCardPinPolicy : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MinLength( 
                            /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MinLength( 
                            /* [in] */ UINT32 value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_MaxLength( 
                            /* [out][retval] */ __RPC__out UINT32 *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_MaxLength( 
                            /* [in] */ UINT32 value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_UppercaseLetters( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Devices::SmartCards::SmartCardPinCharacterPolicyOption *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_UppercaseLetters( 
                            /* [in] */ ABI::Windows::Devices::SmartCards::SmartCardPinCharacterPolicyOption value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_LowercaseLetters( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Devices::SmartCards::SmartCardPinCharacterPolicyOption *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_LowercaseLetters( 
                            /* [in] */ ABI::Windows::Devices::SmartCards::SmartCardPinCharacterPolicyOption value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Digits( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Devices::SmartCards::SmartCardPinCharacterPolicyOption *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_Digits( 
                            /* [in] */ ABI::Windows::Devices::SmartCards::SmartCardPinCharacterPolicyOption value) = 0;
                        
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_SpecialCharacters( 
                            /* [out][retval] */ __RPC__out ABI::Windows::Devices::SmartCards::SmartCardPinCharacterPolicyOption *value) = 0;
                        
                        virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_SpecialCharacters( 
                            /* [in] */ ABI::Windows::Devices::SmartCards::SmartCardPinCharacterPolicyOption value) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardPinPolicy = __uuidof(ISmartCardPinPolicy);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicyVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * 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_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MinLength )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MinLength )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [in] */ UINT32 value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_MaxLength )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [out][retval] */ __RPC__out UINT32 *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_MaxLength )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [in] */ UINT32 value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_UppercaseLetters )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_UppercaseLetters )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [in] */ __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_LowercaseLetters )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_LowercaseLetters )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [in] */ __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Digits )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_Digits )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [in] */ __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption value);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_SpecialCharacters )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [out][retval] */ __RPC__out __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption *value);
        
        /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_SpecialCharacters )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy * This,
            /* [in] */ __x_ABI_CWindows_CDevices_CSmartCards_CSmartCardPinCharacterPolicyOption value);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicyVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicyVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_get_MinLength(This,value)	\
    ( (This)->lpVtbl -> get_MinLength(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_put_MinLength(This,value)	\
    ( (This)->lpVtbl -> put_MinLength(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_get_MaxLength(This,value)	\
    ( (This)->lpVtbl -> get_MaxLength(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_put_MaxLength(This,value)	\
    ( (This)->lpVtbl -> put_MaxLength(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_get_UppercaseLetters(This,value)	\
    ( (This)->lpVtbl -> get_UppercaseLetters(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_put_UppercaseLetters(This,value)	\
    ( (This)->lpVtbl -> put_UppercaseLetters(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_get_LowercaseLetters(This,value)	\
    ( (This)->lpVtbl -> get_LowercaseLetters(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_put_LowercaseLetters(This,value)	\
    ( (This)->lpVtbl -> put_LowercaseLetters(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_get_Digits(This,value)	\
    ( (This)->lpVtbl -> get_Digits(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_put_Digits(This,value)	\
    ( (This)->lpVtbl -> put_Digits(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_get_SpecialCharacters(This,value)	\
    ( (This)->lpVtbl -> get_SpecialCharacters(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_put_SpecialCharacters(This,value)	\
    ( (This)->lpVtbl -> put_SpecialCharacters(This,value) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardPinPolicy_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0070 */
/* [local] */ 

#if !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_INTERFACE_DEFINED__)
extern const __declspec(selectany) _Null_terminated_ WCHAR InterfaceName_Windows_Devices_SmartCards_ISmartCardChallengeContext[] = L"Windows.Devices.SmartCards.ISmartCardChallengeContext";
#endif /* !defined(____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_INTERFACE_DEFINED__) */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0070 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0070_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0070_v0_0_s_ifspec;

#ifndef ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_INTERFACE_DEFINED__
#define ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_INTERFACE_DEFINED__

/* interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext */
/* [uuid][object] */ 



/* interface ABI::Windows::Devices::SmartCards::ISmartCardChallengeContext */
/* [uuid][object] */ 


EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext;

#if defined(__cplusplus) && !defined(CINTERFACE)
    } /* end extern "C" */
    namespace ABI {
        namespace Windows {
            namespace Devices {
                namespace SmartCards {
                    
                    MIDL_INTERFACE("192A5319-C9C4-4947-81CC-44794A61EF91")
                    ISmartCardChallengeContext : public IInspectable
                    {
                    public:
                        virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_Challenge( 
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Storage::Streams::IBuffer **value) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE VerifyResponseAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *response,
                            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_boolean **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE ProvisionAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *response,
                            /* [in] */ boolean formatCard,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Foundation::IAsyncAction **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE ProvisionAsyncWithNewCardId( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *response,
                            /* [in] */ boolean formatCard,
                            /* [in] */ GUID newCardId,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Foundation::IAsyncAction **result) = 0;
                        
                        virtual HRESULT STDMETHODCALLTYPE ChangeAdministrativeKeyAsync( 
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *response,
                            /* [in] */ __RPC__in_opt ABI::Windows::Storage::Streams::IBuffer *newAdministrativeKey,
                            /* [out][retval] */ __RPC__deref_out_opt ABI::Windows::Foundation::IAsyncAction **result) = 0;
                        
                    };

                    extern const __declspec(selectany) IID & IID_ISmartCardChallengeContext = __uuidof(ISmartCardChallengeContext);

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

    typedef struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContextVtbl
    {
        BEGIN_INTERFACE
        
        HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This,
            /* [in] */ __RPC__in REFIID riid,
            /* [annotation][iid_is][out] */ 
            _COM_Outptr_  void **ppvObject);
        
        ULONG ( STDMETHODCALLTYPE *AddRef )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This);
        
        ULONG ( STDMETHODCALLTYPE *Release )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This);
        
        HRESULT ( STDMETHODCALLTYPE *GetIids )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * 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_CDevices_CSmartCards_CISmartCardChallengeContext * This,
            /* [out] */ __RPC__deref_out_opt HSTRING *className);
        
        HRESULT ( STDMETHODCALLTYPE *GetTrustLevel )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This,
            /* [out] */ __RPC__out TrustLevel *trustLevel);
        
        /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_Challenge )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer **value);
        
        HRESULT ( STDMETHODCALLTYPE *VerifyResponseAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *response,
            /* [out][retval] */ __RPC__deref_out_opt __FIAsyncOperation_1_boolean **result);
        
        HRESULT ( STDMETHODCALLTYPE *ProvisionAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *response,
            /* [in] */ boolean formatCard,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CFoundation_CIAsyncAction **result);
        
        HRESULT ( STDMETHODCALLTYPE *ProvisionAsyncWithNewCardId )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *response,
            /* [in] */ boolean formatCard,
            /* [in] */ GUID newCardId,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CFoundation_CIAsyncAction **result);
        
        HRESULT ( STDMETHODCALLTYPE *ChangeAdministrativeKeyAsync )( 
            __RPC__in __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext * This,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *response,
            /* [in] */ __RPC__in_opt __x_ABI_CWindows_CStorage_CStreams_CIBuffer *newAdministrativeKey,
            /* [out][retval] */ __RPC__deref_out_opt __x_ABI_CWindows_CFoundation_CIAsyncAction **result);
        
        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContextVtbl;

    interface __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContextVtbl *lpVtbl;
    };

    

#ifdef COBJMACROS


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

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

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


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

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

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


#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_get_Challenge(This,value)	\
    ( (This)->lpVtbl -> get_Challenge(This,value) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_VerifyResponseAsync(This,response,result)	\
    ( (This)->lpVtbl -> VerifyResponseAsync(This,response,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_ProvisionAsync(This,response,formatCard,result)	\
    ( (This)->lpVtbl -> ProvisionAsync(This,response,formatCard,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_ProvisionAsyncWithNewCardId(This,response,formatCard,newCardId,result)	\
    ( (This)->lpVtbl -> ProvisionAsyncWithNewCardId(This,response,formatCard,newCardId,result) ) 

#define __x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_ChangeAdministrativeKeyAsync(This,response,newAdministrativeKey,result)	\
    ( (This)->lpVtbl -> ChangeAdministrativeKeyAsync(This,response,newAdministrativeKey,result) ) 

#endif /* COBJMACROS */


#endif 	/* C style interface */




#endif 	/* ____x_ABI_CWindows_CDevices_CSmartCards_CISmartCardChallengeContext_INTERFACE_DEFINED__ */


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0071 */
/* [local] */ 

#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardReader_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardReader_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_SmartCardReader[] = L"Windows.Devices.SmartCards.SmartCardReader";
#endif
#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_SmartCard_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_SmartCard_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_SmartCard[] = L"Windows.Devices.SmartCards.SmartCard";
#endif
#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_CardAddedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_CardAddedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_CardAddedEventArgs[] = L"Windows.Devices.SmartCards.CardAddedEventArgs";
#endif
#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_CardRemovedEventArgs_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_CardRemovedEventArgs_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_CardRemovedEventArgs[] = L"Windows.Devices.SmartCards.CardRemovedEventArgs";
#endif
#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardProvisioning_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardProvisioning_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_SmartCardProvisioning[] = L"Windows.Devices.SmartCards.SmartCardProvisioning";
#endif
#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardPinPolicy_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardPinPolicy_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_SmartCardPinPolicy[] = L"Windows.Devices.SmartCards.SmartCardPinPolicy";
#endif
#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardChallengeContext_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardChallengeContext_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_SmartCardChallengeContext[] = L"Windows.Devices.SmartCards.SmartCardChallengeContext";
#endif
#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardPinResetRequest_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardPinResetRequest_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_SmartCardPinResetRequest[] = L"Windows.Devices.SmartCards.SmartCardPinResetRequest";
#endif
#ifndef RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardPinResetDeferral_DEFINED
#define RUNTIMECLASS_Windows_Devices_SmartCards_SmartCardPinResetDeferral_DEFINED
extern const __declspec(selectany) _Null_terminated_ WCHAR RuntimeClass_Windows_Devices_SmartCards_SmartCardPinResetDeferral[] = L"Windows.Devices.SmartCards.SmartCardPinResetDeferral";
#endif


/* interface __MIDL_itf_windows2Edevices2Esmartcards_0000_0071 */
/* [local] */ 



extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0071_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_windows2Edevices2Esmartcards_0000_0071_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


