// 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.Enumeration.h"
#include "Windows.Storage.Streams.h"
// Importing Collections header
#include "Windows.Foundation.Collections.h"

/* Forward Declarations */
#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_CIGattCharacteristic2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult_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_CGenericAttributeProfile_CIGattPresentationFormat_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2 __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient_FWD_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__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult_FWD_DEFINED__

// Parameterized interface forward declarations (C)

// Collection interface definitions

typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__
    
typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus;

typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatusVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatusVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatusVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatusVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatusVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatusVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult_INTERFACE_DEFINED__
    
typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus;

typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatusVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatusVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatusVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatusVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatusVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatusVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult_INTERFACE_DEFINED__
    
typedef enum __x_ABI_CWindows_CDevices_CEnumeration_CDeviceAccessStatus __x_ABI_CWindows_CDevices_CEnumeration_CDeviceAccessStatus;

typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatusVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatusVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatusVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatusVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatusVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatusVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__
    
typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

#if !defined(____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

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

    typedef struct __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl;

    interface __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult;

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

    typedef struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl;

    interface __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult
    {
        CONST_VTBL struct __x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResultVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIAsyncOperationCompletedHandler_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient;

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

    typedef struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl;

    interface __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient
    {
        CONST_VTBL struct __x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterator_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient;

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

    typedef struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl;

    interface __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient
    {
        CONST_VTBL struct __x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIIterable_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServiceVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient;

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

    typedef struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl;

    interface __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient
    {
        CONST_VTBL struct __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClientVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat __x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat;

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

    typedef struct __x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        UINT32 index,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat** result);
    HRESULT (STDMETHODCALLTYPE* get_Size)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* GetView)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat** result);
    HRESULT (STDMETHODCALLTYPE* IndexOf)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* value,
        UINT32* index,
        boolean* result);
    HRESULT (STDMETHODCALLTYPE* SetAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        UINT32 index,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* value);
    HRESULT (STDMETHODCALLTYPE* InsertAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        UINT32 index,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* value);
    HRESULT (STDMETHODCALLTYPE* RemoveAt)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        UINT32 index);
    HRESULT (STDMETHODCALLTYPE* Append)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* value);
    HRESULT (STDMETHODCALLTYPE* RemoveAtEnd)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This);
    HRESULT (STDMETHODCALLTYPE* Clear)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This);
    HRESULT (STDMETHODCALLTYPE* GetMany)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        UINT32 startIndex,
        UINT32 itemsLength,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat** items,
        UINT32* result);
    HRESULT (STDMETHODCALLTYPE* ReplaceAll)(__x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat* This,
        UINT32 itemsLength,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat** items);

        END_INTERFACE
    } __x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl;

    interface __x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat
    {
        CONST_VTBL struct __x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormatVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FIReference_1_byte_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FIReference_1_byte_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FIReference_1_byte __x_ABI_C__FIReference_1_byte;

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

    typedef struct __x_ABI_C__FIReference_1_byteVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_C__FIReference_1_byteVtbl;

    interface __x_ABI_C__FIReference_1_byte
    {
        CONST_VTBL struct __x_ABI_C__FIReference_1_byteVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FIReference_1_byte_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectableVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* sender,
        IInspectable* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectableVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectableVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectableVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* sender,
        IInspectable* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectableVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectableVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectableVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* sender,
        IInspectable* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectableVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectableVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable_INTERFACE_DEFINED__
    
#if !defined(____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs_INTERFACE_DEFINED__

    typedef interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs;

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

    typedef struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* Invoke)(__x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* sender,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs* args);

        END_INTERFACE
    } __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgsVtbl;

    interface __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgsVtbl* lpVtbl;
    };

    
    #endif // ____x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs_INTERFACE_DEFINED__
    
typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode;

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId_FWD_DEFINED__

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothError __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothError;

#ifndef ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothLEDevice_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothLEDevice_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothLEDevice __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothLEDevice;

#endif // ____x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothLEDevice_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceAccessInformation_FWD_DEFINED__
#define ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceAccessInformation_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CDevices_CEnumeration_CIDeviceAccessInformation __x_ABI_CWindows_CDevices_CEnumeration_CIDeviceAccessInformation;

#endif // ____x_ABI_CWindows_CDevices_CEnumeration_CIDeviceAccessInformation_FWD_DEFINED__

typedef enum __x_ABI_CWindows_CFoundation_CAsyncStatus __x_ABI_CWindows_CFoundation_CAsyncStatus;

typedef struct __x_ABI_CWindows_CFoundation_CDateTime __x_ABI_CWindows_CFoundation_CDateTime;

#ifndef ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIDeferral __x_ABI_CWindows_CFoundation_CIDeferral;

#endif // ____x_ABI_CWindows_CFoundation_CIDeferral_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIAsyncInfo __x_ABI_CWindows_CFoundation_CIAsyncInfo;

#endif // ____x_ABI_CWindows_CFoundation_CIAsyncInfo_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIClosable __x_ABI_CWindows_CFoundation_CIClosable;

#endif // ____x_ABI_CWindows_CFoundation_CIClosable_FWD_DEFINED__

#ifndef ____x_ABI_CWindows_CFoundation_CIPropertyValue_FWD_DEFINED__
#define ____x_ABI_CWindows_CFoundation_CIPropertyValue_FWD_DEFINED__
    typedef interface __x_ABI_CWindows_CFoundation_CIPropertyValue __x_ABI_CWindows_CFoundation_CIPropertyValue;

#endif // ____x_ABI_CWindows_CFoundation_CIPropertyValue_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_CGenericAttributeProfile_CGattCharacteristicProperties __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties;

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattClientCharacteristicConfigurationDescriptorValue __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattClientCharacteristicConfigurationDescriptorValue;

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel;

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattRequestState __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattRequestState;

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus;

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSessionStatus __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSessionStatus;

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode;

typedef enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattWriteOption __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattWriteOption;

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_None = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_Broadcast = 0x1,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_Read = 0x2,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_WriteWithoutResponse = 0x4,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_Write = 0x8,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_Notify = 0x10,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_Indicate = 0x20,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_AuthenticatedSignedWrites = 0x40,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_ExtendedProperties = 0x80,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_ReliableWrites = 0x100,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties_WritableAuxiliaries = 0x200,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattClientCharacteristicConfigurationDescriptorValue
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattClientCharacteristicConfigurationDescriptorValue_None = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattClientCharacteristicConfigurationDescriptorValue_Notify = 1,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattClientCharacteristicConfigurationDescriptorValue_Indicate = 2,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus_Success = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus_Unreachable = 1,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus_ProtocolError = 2,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus_AccessDenied = 3,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus_Unspecified = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus_Success = 1,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus_AlreadyOpened = 2,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus_NotFound = 3,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus_SharingViolation = 4,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattOpenStatus_AccessDenied = 5,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel_Plain = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel_AuthenticationRequired = 1,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel_EncryptionRequired = 2,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel_EncryptionAndAuthenticationRequired = 3,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattRequestState
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattRequestState_Pending = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattRequestState_Completed = 1,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattRequestState_Canceled = 2,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus_Created = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus_Stopped = 1,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus_Started = 2,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus_Aborted = 3,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus_StartedWithoutAllAdvertisementData = 4,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSessionStatus
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSessionStatus_Closed = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSessionStatus_Active = 1,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode_Unspecified = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode_Exclusive = 1,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode_SharedReadOnly = 2,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode_SharedReadAndWrite = 3,
};

enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattWriteOption
    {
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattWriteOption_WriteWithResponse = 0,
    __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattWriteOption_WriteWithoutResponse = 1,
};

#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetDescriptors)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        GUID descriptorUuid,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor** value);
    HRESULT (STDMETHODCALLTYPE* get_CharacteristicProperties)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties* value);
    HRESULT (STDMETHODCALLTYPE* get_ProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* put_ProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel value);
    HRESULT (STDMETHODCALLTYPE* get_UserDescription)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Uuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_AttributeHandle)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        UINT16* value);
    HRESULT (STDMETHODCALLTYPE* get_PresentationFormats)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat** value);
    HRESULT (STDMETHODCALLTYPE* ReadValueAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult** value);
    HRESULT (STDMETHODCALLTYPE* ReadValueWithCacheModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult** value);
    HRESULT (STDMETHODCALLTYPE* WriteValueAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus** asyncOp);
    HRESULT (STDMETHODCALLTYPE* WriteValueWithOptionAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattWriteOption writeOption,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus** asyncOp);
    HRESULT (STDMETHODCALLTYPE* ReadClientCharacteristicConfigurationDescriptorAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadClientCharacteristicConfigurationDescriptorResult** asyncOp);
    HRESULT (STDMETHODCALLTYPE* WriteClientCharacteristicConfigurationDescriptorAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattClientCharacteristicConfigurationDescriptorValue clientCharacteristicConfigurationDescriptorValue,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus** asyncOp);
    HRESULT (STDMETHODCALLTYPE* add_ValueChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattValueChangedEventArgs* valueChangedHandler,
        EventRegistrationToken* valueChangedEventCookie);
    HRESULT (STDMETHODCALLTYPE* remove_ValueChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* This,
        EventRegistrationToken valueChangedEventCookie);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Service)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService** value);
    HRESULT (STDMETHODCALLTYPE* GetAllDescriptors)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor** descriptors);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetDescriptorsAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetDescriptorsWithCacheModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetDescriptorsForUuidAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
        GUID descriptorUuid,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetDescriptorsForUuidWithCacheModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
        GUID descriptorUuid,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptorsResult** operation);
    HRESULT (STDMETHODCALLTYPE* WriteValueWithResultAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult** operation);
    HRESULT (STDMETHODCALLTYPE* WriteValueWithResultAndOptionAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattWriteOption writeOption,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult** operation);
    HRESULT (STDMETHODCALLTYPE* WriteClientCharacteristicConfigurationDescriptorWithResultAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattClientCharacteristicConfigurationDescriptorValue clientCharacteristicConfigurationDescriptorValue,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic3_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* ConvertShortIdToUuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics* This,
        UINT16 shortId,
        GUID* characteristicUuid);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_BatteryLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_BloodPressureFeature)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_BloodPressureMeasurement)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_BodySensorLocation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CscFeature)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CscMeasurement)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GlucoseFeature)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GlucoseMeasurement)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GlucoseMeasurementContext)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_HeartRateControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_HeartRateMeasurement)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_IntermediateCuffPressure)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_IntermediateTemperature)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_MeasurementInterval)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_RecordAccessControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_RscFeature)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_RscMeasurement)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_SCControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_SensorLocation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TemperatureMeasurement)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TemperatureType)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics* This,
        GUID* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_AlertCategoryId)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_AlertCategoryIdBitMask)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_AlertLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_AlertNotificationControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_AlertStatus)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GapAppearance)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_BootKeyboardInputReport)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_BootKeyboardOutputReport)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_BootMouseInputReport)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CurrentTime)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CyclingPowerControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CyclingPowerFeature)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CyclingPowerMeasurement)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CyclingPowerVector)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_DateTime)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_DayDateTime)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_DayOfWeek)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GapDeviceName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_DstOffset)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ExactTime256)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_FirmwareRevisionString)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_HardwareRevisionString)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_HidControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_HidInformation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_Ieee1107320601RegulatoryCertificationDataList)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_LnControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_LnFeature)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_LocalTimeInformation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_LocationAndSpeed)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ManufacturerNameString)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ModelNumberString)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_Navigation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_NewAlert)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GapPeripheralPreferredConnectionParameters)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GapPeripheralPrivacyFlag)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_PnpId)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_PositionQuality)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ProtocolMode)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GapReconnectionAddress)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ReferenceTimeInformation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_Report)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ReportMap)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_RingerControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_RingerSetting)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ScanIntervalWindow)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ScanRefresh)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_SerialNumberString)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GattServiceChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_SoftwareRevisionString)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_SupportedNewAlertCategory)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_SupportUnreadAlertCategory)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_SystemId)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TimeAccuracy)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TimeSource)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TimeUpdateControlPoint)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TimeUpdateState)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TimeWithDst)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TimeZone)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TxPowerLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_UnreadAlertStatus)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2* This,
        GUID* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicUuidsStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Status)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus* value);
    HRESULT (STDMETHODCALLTYPE* get_ProtocolError)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This,
        __x_ABI_C__FIReference_1_byte** value);
    HRESULT (STDMETHODCALLTYPE* get_Characteristics)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristicsResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_SubscribedClient)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient** value);
    HRESULT (STDMETHODCALLTYPE* get_Status)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus* value);
    HRESULT (STDMETHODCALLTYPE* get_ProtocolError)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult* This,
        __x_ABI_C__FIReference_1_byte** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2Vtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattClientNotificationResult2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_ProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* put_ProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel value);
    HRESULT (STDMETHODCALLTYPE* get_Uuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_AttributeHandle)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
        UINT16* value);
    HRESULT (STDMETHODCALLTYPE* ReadValueAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult** value);
    HRESULT (STDMETHODCALLTYPE* ReadValueWithCacheModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadResult** value);
    HRESULT (STDMETHODCALLTYPE* WriteValueAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus** action);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* WriteValueWithResultAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptor2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* ConvertShortIdToUuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics* This,
        UINT16 shortId,
        GUID* descriptorUuid);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_CharacteristicAggregateFormat)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CharacteristicExtendedProperties)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CharacteristicPresentationFormat)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CharacteristicUserDescription)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ClientCharacteristicConfiguration)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ServerCharacteristicConfiguration)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics* This,
        GUID* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorUuidsStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Status)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus* value);
    HRESULT (STDMETHODCALLTYPE* get_ProtocolError)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This,
        __x_ABI_C__FIReference_1_byte** value);
    HRESULT (STDMETHODCALLTYPE* get_Descriptors)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDescriptor** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDescriptorsResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* GetCharacteristics)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
        GUID characteristicUuid,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic** value);
    HRESULT (STDMETHODCALLTYPE* GetIncludedServices)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
        GUID serviceUuid,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService** value);
    HRESULT (STDMETHODCALLTYPE* get_DeviceId)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_Uuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_AttributeHandle)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService* This,
        UINT16* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Device)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothLEDevice** value);
    HRESULT (STDMETHODCALLTYPE* get_ParentServices)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService** value);
    HRESULT (STDMETHODCALLTYPE* GetAllCharacteristics)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristic** characteristics);
    HRESULT (STDMETHODCALLTYPE* GetAllIncludedServices)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService** includedServices);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_DeviceAccessInformation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        __x_ABI_CWindows_CDevices_CEnumeration_CIDeviceAccessInformation** value);
    HRESULT (STDMETHODCALLTYPE* get_Session)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession** value);
    HRESULT (STDMETHODCALLTYPE* get_SharingMode)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode* value);
    HRESULT (STDMETHODCALLTYPE* RequestAccessAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CEnumeration__CDeviceAccessStatus** value);
    HRESULT (STDMETHODCALLTYPE* OpenAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode sharingMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattOpenStatus** operation);
    HRESULT (STDMETHODCALLTYPE* GetCharacteristicsAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetCharacteristicsWithCacheModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetCharacteristicsForUuidAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        GUID characteristicUuid,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetCharacteristicsForUuidWithCacheModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        GUID characteristicUuid,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCharacteristicsResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetIncludedServicesAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetIncludedServicesWithCacheModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetIncludedServicesForUuidAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        GUID serviceUuid,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult** operation);
    HRESULT (STDMETHODCALLTYPE* GetIncludedServicesForUuidWithCacheModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3* This,
        GUID serviceUuid,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceServicesResult** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceService3_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* FromIdAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This,
        HSTRING deviceId,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService** asyncOp);
    HRESULT (STDMETHODCALLTYPE* GetDeviceSelectorFromUuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This,
        GUID serviceUuid,
        HSTRING* selector);
    HRESULT (STDMETHODCALLTYPE* GetDeviceSelectorFromShortId)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This,
        UINT16 serviceShortId,
        HSTRING* selector);
    HRESULT (STDMETHODCALLTYPE* ConvertShortIdToUuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics* This,
        UINT16 shortId,
        GUID* serviceUuid);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* FromIdWithSharingModeAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
        HSTRING deviceId,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSharingMode sharingMode,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService** operation);
    HRESULT (STDMETHODCALLTYPE* GetDeviceSelectorForBluetoothDeviceId)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId* bluetoothDeviceId,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* GetDeviceSelectorForBluetoothDeviceIdWithCacheMode)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId* bluetoothDeviceId,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* GetDeviceSelectorForBluetoothDeviceIdAndUuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId* bluetoothDeviceId,
        GUID serviceUuid,
        HSTRING* result);
    HRESULT (STDMETHODCALLTYPE* GetDeviceSelectorForBluetoothDeviceIdAndUuidWithCacheMode)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId* bluetoothDeviceId,
        GUID serviceUuid,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CBluetoothCacheMode cacheMode,
        HSTRING* result);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServiceStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResultVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Status)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCommunicationStatus* value);
    HRESULT (STDMETHODCALLTYPE* get_ProtocolError)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This,
        __x_ABI_C__FIReference_1_byte** value);
    HRESULT (STDMETHODCALLTYPE* get_Services)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattDeviceService** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattDeviceServicesResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Uuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_StaticValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);
    HRESULT (STDMETHODCALLTYPE* get_CharacteristicProperties)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties* value);
    HRESULT (STDMETHODCALLTYPE* get_ReadProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* get_WriteProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* CreateDescriptorAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        GUID descriptorUuid,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* parameters,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptorResult** operation);
    HRESULT (STDMETHODCALLTYPE* get_Descriptors)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor** value);
    HRESULT (STDMETHODCALLTYPE* get_UserDescription)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_PresentationFormats)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat** value);
    HRESULT (STDMETHODCALLTYPE* get_SubscribedClients)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient** value);
    HRESULT (STDMETHODCALLTYPE* add_SubscribedClientsChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic_IInspectable* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_SubscribedClientsChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_ReadRequested)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_ReadRequested)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_WriteRequested)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_WriteRequested)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* NotifyValueAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult** operation);
    HRESULT (STDMETHODCALLTYPE* NotifyValueForSubscribedClientAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* subscribedClient,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattClientNotificationResult** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristic_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParametersVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_StaticValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value);
    HRESULT (STDMETHODCALLTYPE* get_StaticValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);
    HRESULT (STDMETHODCALLTYPE* put_CharacteristicProperties)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties value);
    HRESULT (STDMETHODCALLTYPE* get_CharacteristicProperties)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattCharacteristicProperties* value);
    HRESULT (STDMETHODCALLTYPE* put_ReadProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel value);
    HRESULT (STDMETHODCALLTYPE* get_ReadProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* put_WriteProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel value);
    HRESULT (STDMETHODCALLTYPE* get_WriteProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* put_UserDescription)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        HSTRING value);
    HRESULT (STDMETHODCALLTYPE* get_UserDescription)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        HSTRING* value);
    HRESULT (STDMETHODCALLTYPE* get_PresentationFormats)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* This,
        __x_ABI_C__FIVector_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattPresentationFormat** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParametersVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParametersVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Uuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_StaticValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);
    HRESULT (STDMETHODCALLTYPE* get_ReadProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* get_WriteProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* add_ReadRequested)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequestedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_ReadRequested)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_WriteRequested)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalDescriptor___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequestedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_WriteRequested)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor* This,
        EventRegistrationToken token);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptor_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParametersVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_StaticValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value);
    HRESULT (STDMETHODCALLTYPE* get_StaticValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);
    HRESULT (STDMETHODCALLTYPE* put_ReadProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel value);
    HRESULT (STDMETHODCALLTYPE* get_ReadProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);
    HRESULT (STDMETHODCALLTYPE* put_WriteProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel value);
    HRESULT (STDMETHODCALLTYPE* get_WriteProtectionLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattProtectionLevel* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParametersVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParametersVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorParameters_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalDescriptorResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalServiceVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Uuid)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* CreateCharacteristicAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This,
        GUID characteristicUuid,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalCharacteristicParameters* parameters,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristicResult** operation);
    HRESULT (STDMETHODCALLTYPE* get_Characteristics)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService* This,
        __x_ABI_C__FIVectorView_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattLocalCharacteristic** value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalServiceVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalServiceVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_FormatType)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Exponent)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
        INT32* value);
    HRESULT (STDMETHODCALLTYPE* get_Unit)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
        UINT16* value);
    HRESULT (STDMETHODCALLTYPE* get_Namespace)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Description)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat* This,
        UINT16* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStaticsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* FromParts)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2* This,
        BYTE formatType,
        INT32 exponent,
        UINT16 unit,
        BYTE namespaceId,
        UINT16 description,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormat** result);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Boolean)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Bit2)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Nibble)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UInt8)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UInt12)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UInt16)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UInt24)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UInt32)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UInt48)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UInt64)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UInt128)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SInt8)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SInt12)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SInt16)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SInt24)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SInt32)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SInt48)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SInt64)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SInt128)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Float32)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Float64)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_SFloat)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Float)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_DUInt16)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Utf8)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Utf16)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_Struct)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics* This,
        BYTE* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattPresentationFormatTypesStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_InvalidHandle)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_ReadNotPermitted)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_WriteNotPermitted)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_InvalidPdu)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_InsufficientAuthentication)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_RequestNotSupported)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_InvalidOffset)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_InsufficientAuthorization)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_PrepareQueueFull)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_AttributeNotFound)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_AttributeNotLong)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_InsufficientEncryptionKeySize)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_InvalidAttributeValueLength)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UnlikelyError)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_InsufficientEncryption)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_UnsupportedGroupType)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);
    HRESULT (STDMETHODCALLTYPE* get_InsufficientResources)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics* This,
        BYTE* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattProtocolErrorStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2Vtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadClientCharacteristicConfigurationDescriptorResult2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Offset)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
        UINT32* value);
    HRESULT (STDMETHODCALLTYPE* get_Length)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
        UINT32* value);
    HRESULT (STDMETHODCALLTYPE* get_State)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattRequestState* value);
    HRESULT (STDMETHODCALLTYPE* add_StateChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_StateChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* RespondWithValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value);
    HRESULT (STDMETHODCALLTYPE* RespondWithProtocolError)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest* This,
        BYTE protocolError);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequest_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Session)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession** value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);
    HRESULT (STDMETHODCALLTYPE* GetRequestAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattReadRequest** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadRequestedEventArgs_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2Vtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReadResult2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransactionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* WriteValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattCharacteristic* characteristic,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer* value);
    HRESULT (STDMETHODCALLTYPE* CommitAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattCommunicationStatus** asyncOp);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransactionVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransactionVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CommitWithResultAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteResult** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattReliableWriteTransaction2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattRequestStateChangedEventArgs_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Service)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattLocalService** value);
    HRESULT (STDMETHODCALLTYPE* get_AdvertisementStatus)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattServiceProviderAdvertisementStatus* value);
    HRESULT (STDMETHODCALLTYPE* add_AdvertisementStatusChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProvider___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderAdvertisementStatusChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_AdvertisementStatusChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* StartAdvertising)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This);
    HRESULT (STDMETHODCALLTYPE* StartAdvertisingWithParameters)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* parameters);
    HRESULT (STDMETHODCALLTYPE* StopAdvertising)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider* This);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProvider_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisementStatusChangedEventArgs_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParametersVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* put_IsConnectable)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_IsConnectable)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_IsDiscoverable)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_IsDiscoverable)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters* This,
        boolean* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParametersVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParametersVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2Vtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderAdvertisingParameters2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderResult_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* CreateAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics* This,
        GUID serviceUuid,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattServiceProviderResult** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceProviderStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Battery)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_BloodPressure)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CyclingSpeedAndCadence)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GenericAccess)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_GenericAttribute)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_Glucose)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_HealthThermometer)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_HeartRate)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_RunningSpeedAndCadence)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics* This,
        GUID* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2Vtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_AlertNotification)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CurrentTime)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_CyclingPower)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_DeviceInformation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_HumanInterfaceDevice)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ImmediateAlert)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_LinkLoss)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_LocationAndNavigation)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_NextDstChange)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_PhoneAlertStatus)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ReferenceTimeUpdate)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_ScanParameters)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);
    HRESULT (STDMETHODCALLTYPE* get_TxPower)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2* This,
        GUID* value);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2Vtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2Vtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattServiceUuidsStatics2_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_DeviceId)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId** value);
    HRESULT (STDMETHODCALLTYPE* get_CanMaintainConnection)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* put_MaintainConnection)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        boolean value);
    HRESULT (STDMETHODCALLTYPE* get_MaintainConnection)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        boolean* value);
    HRESULT (STDMETHODCALLTYPE* get_MaxPduSize)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        UINT16* value);
    HRESULT (STDMETHODCALLTYPE* get_SessionStatus)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattSessionStatus* value);
    HRESULT (STDMETHODCALLTYPE* add_MaxPduSizeChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession_IInspectable* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_MaxPduSizeChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* add_SessionStatusChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSessionStatusChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_SessionStatusChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession* This,
        EventRegistrationToken token);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStaticsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* FromDeviceIdAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CIBluetoothDeviceId* deviceId,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSession** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStaticsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStaticsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatics_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSessionStatusChangedEventArgs_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClientVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Session)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession** value);
    HRESULT (STDMETHODCALLTYPE* get_MaxNotificationSize)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This,
        UINT16* value);
    HRESULT (STDMETHODCALLTYPE* add_MaxNotificationSizeChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattSubscribedClient_IInspectable* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_MaxNotificationSizeChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient* This,
        EventRegistrationToken token);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClientVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClientVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSubscribedClient_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_CharacteristicValue)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);
    HRESULT (STDMETHODCALLTYPE* get_Timestamp)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs* This,
        struct __x_ABI_CWindows_CFoundation_CDateTime* timestamp);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattValueChangedEventArgs_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Value)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
        __x_ABI_CWindows_CStorage_CStreams_CIBuffer** value);
    HRESULT (STDMETHODCALLTYPE* get_Offset)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
        UINT32* value);
    HRESULT (STDMETHODCALLTYPE* get_Option)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattWriteOption* value);
    HRESULT (STDMETHODCALLTYPE* get_State)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
        enum __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CGattRequestState* value);
    HRESULT (STDMETHODCALLTYPE* add_StateChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
        __x_ABI_C__FITypedEventHandler_2___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattRequestStateChangedEventArgs* handler,
        EventRegistrationToken* token);
    HRESULT (STDMETHODCALLTYPE* remove_StateChanged)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
        EventRegistrationToken token);
    HRESULT (STDMETHODCALLTYPE* Respond)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This);
    HRESULT (STDMETHODCALLTYPE* RespondWithProtocolError)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest* This,
        BYTE protocolError);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequest_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgsVtbl
    {
        BEGIN_INTERFACE

        HRESULT (STDMETHODCALLTYPE* QueryInterface)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This,
            REFIID riid,
            void** ppvObject);
        ULONG (STDMETHODCALLTYPE* AddRef)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This);
        ULONG (STDMETHODCALLTYPE* Release)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This);
        HRESULT (STDMETHODCALLTYPE* GetIids)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This,
            ULONG* iidCount,
            IID** iids);
        HRESULT (STDMETHODCALLTYPE* GetRuntimeClassName)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This,
            HSTRING* className);
        HRESULT (STDMETHODCALLTYPE* GetTrustLevel)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This,
            TrustLevel* trustLevel);
        HRESULT (STDMETHODCALLTYPE* get_Session)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This,
        __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattSession** value);
    HRESULT (STDMETHODCALLTYPE* GetDeferral)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This,
        __x_ABI_CWindows_CFoundation_CIDeferral** value);
    HRESULT (STDMETHODCALLTYPE* GetRequestAsync)(__x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs* This,
        __x_ABI_C__FIAsyncOperation_1___x_ABI_CWindows__CDevices__CBluetooth__CGenericAttributeProfile__CGattWriteRequest** operation);

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgsVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgsVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteRequestedEventArgs_INTERFACE_DEFINED__) */
    
#if !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult_INTERFACE_DEFINED__)
    #define ____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult_INTERFACE_DEFINED__
    typedef struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResultVtbl
    {
        BEGIN_INTERFACE

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

        END_INTERFACE
    } __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResultVtbl;

    interface __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult
    {
        CONST_VTBL struct __x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResultVtbl* lpVtbl;
    };

    
    EXTERN_C const IID IID___x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult;
#endif /* !defined(____x_ABI_CWindows_CDevices_CBluetooth_CGenericAttributeProfile_CIGattWriteResult_INTERFACE_DEFINED__) */
    
