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

#pragma once
// Header files for imported files
#include <inspectable.h>
#include <EventToken.h>
#include <windowscontracts.h>
#include "Windows.Foundation.h"
#include "Windows.Devices.Bluetooth.h"
#include "Windows.Devices.Bluetooth.Advertisement.h"
#include "Windows.Devices.Bluetooth.GenericAttributeProfile.h"
#include "Windows.Devices.Bluetooth.Rfcomm.h"
#include "Windows.Networking.Sockets.h"
#include "Windows.Storage.Streams.h"
// Importing Collections header
#include "Windows.Foundation.Collections.h"

/* Forward Declarations */
#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2 __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation_FWD_DEFINED__

// Parameterized interface forward declarations (C)

// Collection interface definitions

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CAdvertisement_CIBluetoothLEAdvertisementReceivedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CAdvertisement_CIBluetoothLEAdvertisementReceivedEventArgs_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CAdvertisement_CIBluetoothLEAdvertisementReceivedEventArgs __x_ABI_CWindows_CDevices_CBluetooth_CAdvertisement_CIBluetoothLEAdvertisementReceivedEventArgs;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CAdvertisement_CIBluetoothLEAdvertisementReceivedEventArgs_FWD_DEFINED__

#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__
    
#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs_FWD_DEFINED__

#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection __x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection;

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

    typedef struct __x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Key)(__x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* get_Value)(__x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection** result);

        END_INTERFACE
    } __x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl;

    interface __x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection
    {
        CONST_VTBL struct __x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection __x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection __x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_C__FIKeyValuePair_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection;

#if !defined(____x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection;

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

    typedef struct __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* Lookup)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
        HSTRING key,
        __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* HasKey)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
        HSTRING key,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* Split)(__x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection* This,
        __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection** first,
        __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection** second);

        END_INTERFACE
    } __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl;

    interface __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection
    {
        CONST_VTBL struct __x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnectionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIMapView_2_HSTRING___x_ABI_CWindows__CDevices__CBluetooth__CBackground__CGattServiceProviderConnection_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__
    
typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CAdvertisement_CBluetoothLEAdvertisementPublisherStatus __x_ABI_CWindows_CDevices_CBluetooth_CAdvertisement_CBluetoothLEAdvertisementPublisherStatus;

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDevice_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDevice_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDevice __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDevice;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDevice_FWD_DEFINED__

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothError __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothError;

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothServiceCapabilities __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothServiceCapabilities;

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothSignalStrengthFilter_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothSignalStrengthFilter_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothSignalStrengthFilter __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothSignalStrengthFilter;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothSignalStrengthFilter_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CRfcomm_CIRfcommServiceId_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CRfcomm_CIRfcommServiceId_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CRfcomm_CIRfcommServiceId __x_ABI_CWindows_CDevices_CBluetooth_CRfcomm_CIRfcommServiceId;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CRfcomm_CIRfcommServiceId_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CNetworking_CSockets_CIStreamSocket_FWD_DEFINED__
#define ____x_ABI_CWindows_CNetworking_CSockets_CIStreamSocket_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CNetworking_CSockets_CIStreamSocket __x_ABI_CWindows_CNetworking_CSockets_CIStreamSocket;

#endif // ____x_ABI_CWindows_CNetworking_CSockets_CIStreamSocket_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CStorage_CStreams_CIBuffer_FWD_DEFINED__
#define ____x_ABI_CWindows_CStorage_CStreams_CIBuffer_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CStorage_CStreams_CIBuffer __x_ABI_CWindows_CStorage_CStreams_CIBuffer;

#endif // ____x_ABI_CWindows_CStorage_CStreams_CIBuffer_FWD_DEFINED__

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CBluetoothEventTriggeringMode __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CBluetoothEventTriggeringMode;

enum __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CBluetoothEventTriggeringMode
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CBluetoothEventTriggeringMode_Serial = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CBluetoothEventTriggeringMode_Batch = 1,
    __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CBluetoothEventTriggeringMode_KeepLatest = 2,
};

#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetailsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetailsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetailsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementPublisherTriggerDetails_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetailsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Error)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothError* value);
    HRESULT (STDMETHODCALLTYPE* get_Advertisements)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CAdvertisement__CBluetoothLEAdvertisementReceivedEventArgs** value);
    HRESULT (STDMETHODCALLTYPE* get_SignalStrengthFilter)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothSignalStrengthFilter** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetailsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetailsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIBluetoothLEAdvertisementWatcherTriggerDetails_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetailsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Characteristic)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic** value);
    HRESULT (STDMETHODCALLTYPE* get_Value)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetailsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetailsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Error)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothError* value);
    HRESULT (STDMETHODCALLTYPE* get_EventTriggeringMode)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CBluetoothEventTriggeringMode* value);
    HRESULT (STDMETHODCALLTYPE* get_ValueChangedEvents)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattCharacteristicNotificationTriggerDetails2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_TriggerId)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Service)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService** value);
    HRESULT (STDMETHODCALLTYPE* Start)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection* This);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnection_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStaticsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderConnectionStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetailsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetailsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetailsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIGattServiceProviderTriggerDetails_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetailsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Socket)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This,
        __x_ABI_CWindows_CNetworking_CSockets_CIStreamSocket** value);
    HRESULT (STDMETHODCALLTYPE* get_Incoming)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_RemoteDevice)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDevice** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetailsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetailsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommConnectionTriggerDetails_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformationVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_SdpRecord)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);
    HRESULT (STDMETHODCALLTYPE* put_SdpRecord)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value);
    HRESULT (STDMETHODCALLTYPE* get_LocalServiceId)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CRfcomm_CIRfcommServiceId** value);
    HRESULT (STDMETHODCALLTYPE* put_LocalServiceId)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CRfcomm_CIRfcommServiceId* value);
    HRESULT (STDMETHODCALLTYPE* get_ServiceCapabilities)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothServiceCapabilities* value);
    HRESULT (STDMETHODCALLTYPE* put_ServiceCapabilities)(__x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothServiceCapabilities value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformationVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformationVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommInboundConnectionInformation_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformationVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformationVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformationVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CBackground_CIRfcommOutboundConnectionInformation_INTERFACE_DEFINED__) */
    
