//
// Copyright (c) Microsoft Corporation. All rights reserved.
// 
//
// File generated by WinMDIDL version 8.00.0021
//

import "inspectable.idl";
import "AsyncInfo.idl";
import "EventToken.idl";
import "windowscontracts.idl";
import "Windows.Foundation.idl";
import "Windows.Graphics.Display.idl";

// Forward Declare
namespace Windows
{
    namespace Foundation
    {
        typedef struct DateTime DateTime;

        interface IAsyncAction;

        interface IClosable;

        typedef struct TimeSpan TimeSpan;

        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace Graphics
    {
        namespace Display
        {
            typedef enum DisplayOrientations DisplayOrientations;
        }
    }
}
namespace Windows
{
    namespace Devices
    {
        namespace Sensors
        {
            typedef enum AccelerometerReadingType AccelerometerReadingType;

            typedef enum ActivitySensorReadingConfidence ActivitySensorReadingConfidence;

            typedef enum ActivityType ActivityType;

            typedef enum HumanEngagement HumanEngagement;

            typedef enum HumanPresence HumanPresence;

            typedef enum MagnetometerAccuracy MagnetometerAccuracy;

            typedef enum OnlookerDetectionAction OnlookerDetectionAction;

            typedef enum OnlookerDetectionBackOnMode OnlookerDetectionBackOnMode;

            typedef enum PedometerStepKind PedometerStepKind;

            typedef enum SensorOptimizationGoal SensorOptimizationGoal;

            typedef enum SensorReadingType SensorReadingType;

            typedef enum SensorType SensorType;

            typedef enum SimpleOrientation SimpleOrientation;

            typedef struct LightSensorChromaticity LightSensorChromaticity;

            interface IAccelerometer;

            interface IAccelerometer2;

            interface IAccelerometer3;

            interface IAccelerometer4;

            interface IAccelerometer5;

            interface IAccelerometerDataThreshold;

            interface IAccelerometerDeviceId;

            interface IAccelerometerReading;

            interface IAccelerometerReading2;

            interface IAccelerometerReadingChangedEventArgs;

            interface IAccelerometerShakenEventArgs;

            interface IAccelerometerStatics;

            interface IAccelerometerStatics2;

            interface IAccelerometerStatics3;

            interface IActivitySensor;

            interface IActivitySensorReading;

            interface IActivitySensorReadingChangeReport;

            interface IActivitySensorReadingChangedEventArgs;

            interface IActivitySensorStatics;

            interface IActivitySensorTriggerDetails;

            interface IAdaptiveDimmingOptions;

            interface IAltimeter;

            interface IAltimeter2;

            interface IAltimeterReading;

            interface IAltimeterReading2;

            interface IAltimeterReadingChangedEventArgs;

            interface IAltimeterStatics;

            interface IBarometer;

            interface IBarometer2;

            interface IBarometer3;

            interface IBarometerDataThreshold;

            interface IBarometerReading;

            interface IBarometerReading2;

            interface IBarometerReadingChangedEventArgs;

            interface IBarometerStatics;

            interface IBarometerStatics2;

            interface ICompass;

            interface ICompass2;

            interface ICompass3;

            interface ICompass4;

            interface ICompassDataThreshold;

            interface ICompassDeviceId;

            interface ICompassReading;

            interface ICompassReading2;

            interface ICompassReadingChangedEventArgs;

            interface ICompassReadingHeadingAccuracy;

            interface ICompassStatics;

            interface ICompassStatics2;

            interface IDetectedPerson;

            interface IGyrometer;

            interface IGyrometer2;

            interface IGyrometer3;

            interface IGyrometer4;

            interface IGyrometerDataThreshold;

            interface IGyrometerDeviceId;

            interface IGyrometerReading;

            interface IGyrometerReading2;

            interface IGyrometerReadingChangedEventArgs;

            interface IGyrometerStatics;

            interface IGyrometerStatics2;

            interface IHeadOrientation;

            interface IHeadPosition;

            interface IHingeAngleReading;

            interface IHingeAngleSensor;

            interface IHingeAngleSensorReadingChangedEventArgs;

            interface IHingeAngleSensorStatics;

            interface IHumanPresenceFeatures;

            interface IHumanPresenceFeatures2;

            interface IHumanPresenceFeatures3;

            interface IHumanPresenceSensor;

            interface IHumanPresenceSensor2;

            interface IHumanPresenceSensor3;

            interface IHumanPresenceSensorExtension;

            interface IHumanPresenceSensorReading;

            interface IHumanPresenceSensorReading2;

            interface IHumanPresenceSensorReading3;

            interface IHumanPresenceSensorReadingChangedEventArgs;

            interface IHumanPresenceSensorReadingUpdate;

            interface IHumanPresenceSensorReadingUpdate2;

            interface IHumanPresenceSensorStatics;

            interface IHumanPresenceSensorStatics2;

            interface IHumanPresenceSettings;

            interface IHumanPresenceSettings2;

            interface IHumanPresenceSettings3;

            interface IHumanPresenceSettingsStatics;

            interface IInclinometer;

            interface IInclinometer2;

            interface IInclinometer3;

            interface IInclinometer4;

            interface IInclinometerDataThreshold;

            interface IInclinometerDeviceId;

            interface IInclinometerReading;

            interface IInclinometerReading2;

            interface IInclinometerReadingChangedEventArgs;

            interface IInclinometerReadingYawAccuracy;

            interface IInclinometerStatics;

            interface IInclinometerStatics2;

            interface IInclinometerStatics3;

            interface IInclinometerStatics4;

            interface ILightSensor;

            interface ILightSensor2;

            interface ILightSensor3;

            interface ILightSensor4;

            interface ILightSensorDataThreshold;

            interface ILightSensorDataThreshold2;

            interface ILightSensorDeviceId;

            interface ILightSensorReading;

            interface ILightSensorReading2;

            interface ILightSensorReading3;

            interface ILightSensorReadingChangedEventArgs;

            interface ILightSensorStatics;

            interface ILightSensorStatics2;

            interface ILockOnLeaveOptions;

            interface IMagnetometer;

            interface IMagnetometer2;

            interface IMagnetometer3;

            interface IMagnetometer4;

            interface IMagnetometerDataThreshold;

            interface IMagnetometerDeviceId;

            interface IMagnetometerReading;

            interface IMagnetometerReading2;

            interface IMagnetometerReadingChangedEventArgs;

            interface IMagnetometerStatics;

            interface IMagnetometerStatics2;

            interface IOnlookerDetectionOptions;

            interface IOrientationSensor;

            interface IOrientationSensor2;

            interface IOrientationSensor3;

            interface IOrientationSensorDeviceId;

            interface IOrientationSensorReading;

            interface IOrientationSensorReading2;

            interface IOrientationSensorReadingChangedEventArgs;

            interface IOrientationSensorReadingYawAccuracy;

            interface IOrientationSensorStatics;

            interface IOrientationSensorStatics2;

            interface IOrientationSensorStatics3;

            interface IOrientationSensorStatics4;

            interface IPedometer;

            interface IPedometer2;

            interface IPedometerDataThresholdFactory;

            interface IPedometerReading;

            interface IPedometerReadingChangedEventArgs;

            interface IPedometerStatics;

            interface IPedometerStatics2;

            interface IProximitySensor;

            interface IProximitySensorDataThresholdFactory;

            interface IProximitySensorReading;

            interface IProximitySensorReadingChangedEventArgs;

            interface IProximitySensorStatics;

            interface IProximitySensorStatics2;

            interface ISensorDataThreshold;

            interface ISensorDataThresholdTriggerDetails;

            interface ISensorQuaternion;

            interface ISensorRotationMatrix;

            interface ISimpleOrientationSensor;

            interface ISimpleOrientationSensor2;

            interface ISimpleOrientationSensorDeviceId;

            interface ISimpleOrientationSensorOrientationChangedEventArgs;

            interface ISimpleOrientationSensorStatics;

            interface ISimpleOrientationSensorStatics2;

            interface IWakeOnApproachOptions;

            runtimeclass Accelerometer;

            runtimeclass AccelerometerDataThreshold;

            runtimeclass AccelerometerReading;

            runtimeclass AccelerometerReadingChangedEventArgs;

            runtimeclass AccelerometerShakenEventArgs;

            runtimeclass ActivitySensor;

            runtimeclass ActivitySensorReading;

            runtimeclass ActivitySensorReadingChangeReport;

            runtimeclass ActivitySensorReadingChangedEventArgs;

            runtimeclass ActivitySensorTriggerDetails;

            runtimeclass AdaptiveDimmingOptions;

            runtimeclass Altimeter;

            runtimeclass AltimeterReading;

            runtimeclass AltimeterReadingChangedEventArgs;

            runtimeclass Barometer;

            runtimeclass BarometerDataThreshold;

            runtimeclass BarometerReading;

            runtimeclass BarometerReadingChangedEventArgs;

            runtimeclass Compass;

            runtimeclass CompassDataThreshold;

            runtimeclass CompassReading;

            runtimeclass CompassReadingChangedEventArgs;

            runtimeclass DetectedPerson;

            runtimeclass Gyrometer;

            runtimeclass GyrometerDataThreshold;

            runtimeclass GyrometerReading;

            runtimeclass GyrometerReadingChangedEventArgs;

            runtimeclass HeadOrientation;

            runtimeclass HeadPosition;

            runtimeclass HingeAngleReading;

            runtimeclass HingeAngleSensor;

            runtimeclass HingeAngleSensorReadingChangedEventArgs;

            runtimeclass HumanPresenceFeatures;

            runtimeclass HumanPresenceSensor;

            runtimeclass HumanPresenceSensorReading;

            runtimeclass HumanPresenceSensorReadingChangedEventArgs;

            runtimeclass HumanPresenceSensorReadingUpdate;

            runtimeclass HumanPresenceSettings;

            runtimeclass Inclinometer;

            runtimeclass InclinometerDataThreshold;

            runtimeclass InclinometerReading;

            runtimeclass InclinometerReadingChangedEventArgs;

            runtimeclass LightSensor;

            runtimeclass LightSensorDataThreshold;

            runtimeclass LightSensorReading;

            runtimeclass LightSensorReadingChangedEventArgs;

            runtimeclass LockOnLeaveOptions;

            runtimeclass Magnetometer;

            runtimeclass MagnetometerDataThreshold;

            runtimeclass MagnetometerReading;

            runtimeclass MagnetometerReadingChangedEventArgs;

            runtimeclass OnlookerDetectionOptions;

            runtimeclass OrientationSensor;

            runtimeclass OrientationSensorReading;

            runtimeclass OrientationSensorReadingChangedEventArgs;

            runtimeclass Pedometer;

            runtimeclass PedometerDataThreshold;

            runtimeclass PedometerReading;

            runtimeclass PedometerReadingChangedEventArgs;

            runtimeclass ProximitySensor;

            runtimeclass ProximitySensorDataThreshold;

            runtimeclass ProximitySensorDisplayOnOffController;

            runtimeclass ProximitySensorReading;

            runtimeclass ProximitySensorReadingChangedEventArgs;

            runtimeclass SensorDataThresholdTriggerDetails;

            runtimeclass SensorQuaternion;

            runtimeclass SensorRotationMatrix;

            runtimeclass SimpleOrientationSensor;

            runtimeclass SimpleOrientationSensorOrientationChangedEventArgs;

            runtimeclass WakeOnApproachOptions;
        }
    }
}

// Generic instantiations
namespace Windows
{
    namespace Devices
    {
        namespace Sensors
        {
            declare
            {
                interface Windows.Foundation.Collections.IIterable<Windows.Devices.Sensors.ActivitySensorReading*>;

                interface Windows.Foundation.Collections.IIterable<Windows.Devices.Sensors.ActivitySensorReadingChangeReport*>;

                interface Windows.Foundation.Collections.IIterable<Windows.Devices.Sensors.ActivityType>;

                interface Windows.Foundation.Collections.IIterable<Windows.Devices.Sensors.DetectedPerson*>;

                interface Windows.Foundation.Collections.IIterable<Windows.Devices.Sensors.PedometerReading*>;

                interface Windows.Foundation.Collections.IIterable<Windows.Devices.Sensors.ProximitySensorReading*>;

                interface Windows.Foundation.Collections.IIterable<Windows.Foundation.Collections.IKeyValuePair<Windows.Devices.Sensors.PedometerStepKind, Windows.Devices.Sensors.PedometerReading*>*>;

                interface Windows.Foundation.Collections.IIterator<Windows.Devices.Sensors.ActivitySensorReading*>;

                interface Windows.Foundation.Collections.IIterator<Windows.Devices.Sensors.ActivitySensorReadingChangeReport*>;

                interface Windows.Foundation.Collections.IIterator<Windows.Devices.Sensors.ActivityType>;

                interface Windows.Foundation.Collections.IIterator<Windows.Devices.Sensors.DetectedPerson*>;

                interface Windows.Foundation.Collections.IIterator<Windows.Devices.Sensors.PedometerReading*>;

                interface Windows.Foundation.Collections.IIterator<Windows.Devices.Sensors.ProximitySensorReading*>;

                interface Windows.Foundation.Collections.IIterator<Windows.Foundation.Collections.IKeyValuePair<Windows.Devices.Sensors.PedometerStepKind, Windows.Devices.Sensors.PedometerReading*>*>;

                interface Windows.Foundation.Collections.IKeyValuePair<Windows.Devices.Sensors.PedometerStepKind, Windows.Devices.Sensors.PedometerReading*>;

                interface Windows.Foundation.Collections.IMapView<Windows.Devices.Sensors.PedometerStepKind, Windows.Devices.Sensors.PedometerReading*>;

                interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ActivitySensorReading*>;

                interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ActivitySensorReadingChangeReport*>;

                interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ActivityType>;

                interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.DetectedPerson*>;

                interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.PedometerReading*>;

                interface Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ProximitySensorReading*>;

                interface Windows.Foundation.Collections.IVector<Windows.Devices.Sensors.ActivityType>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Accelerometer*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.ActivitySensor*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.ActivitySensorReading*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Barometer*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Compass*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Gyrometer*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HingeAngleReading*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HingeAngleSensor*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HumanPresenceFeatures*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HumanPresenceSensor*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HumanPresenceSettings*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Inclinometer*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.LightSensor*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Magnetometer*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.OrientationSensor*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Pedometer*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.SimpleOrientationSensor*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ActivitySensorReading*>*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.PedometerReading*>*>;

                interface Windows.Foundation.IReference<Windows.Devices.Sensors.HumanEngagement>;

                interface Windows.Foundation.IReference<Windows.Devices.Sensors.HumanPresence>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Accelerometer*, Windows.Devices.Sensors.AccelerometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Accelerometer*, Windows.Devices.Sensors.AccelerometerShakenEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.ActivitySensor*, Windows.Devices.Sensors.ActivitySensorReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Altimeter*, Windows.Devices.Sensors.AltimeterReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Barometer*, Windows.Devices.Sensors.BarometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Compass*, Windows.Devices.Sensors.CompassReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Gyrometer*, Windows.Devices.Sensors.GyrometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.HingeAngleSensor*, Windows.Devices.Sensors.HingeAngleSensorReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.HumanPresenceSensor*, Windows.Devices.Sensors.HumanPresenceSensorReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Inclinometer*, Windows.Devices.Sensors.InclinometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.LightSensor*, Windows.Devices.Sensors.LightSensorReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Magnetometer*, Windows.Devices.Sensors.MagnetometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.OrientationSensor*, Windows.Devices.Sensors.OrientationSensorReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Pedometer*, Windows.Devices.Sensors.PedometerReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.ProximitySensor*, Windows.Devices.Sensors.ProximitySensorReadingChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.SimpleOrientationSensor*, Windows.Devices.Sensors.SimpleOrientationSensorOrientationChangedEventArgs*>;
            }
        }
    }
}

// Type definition
namespace Windows
{
    namespace Devices
    {
        namespace Sensors
        {
            [contract(Windows.Foundation.UniversalApiContract, 3.0)]
            enum AccelerometerReadingType
            {
                Standard = 0,
                Linear   = 1,
                Gravity  = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum ActivitySensorReadingConfidence
            {
                High = 0,
                Low  = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum ActivityType
            {
                Unknown    = 0,
                Idle       = 1,
                Stationary = 2,
                Fidgeting  = 3,
                Walking    = 4,
                Running    = 5,
                InVehicle  = 6,
                Biking     = 7
            };

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            enum HumanEngagement
            {
                Unknown   = 0,
                Engaged   = 1,
                Unengaged = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            enum HumanPresence
            {
                Unknown    = 0,
                Present    = 1,
                NotPresent = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum MagnetometerAccuracy
            {
                Unknown     = 0,
                Unreliable  = 1,
                Approximate = 2,
                High        = 3
            };

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            enum OnlookerDetectionAction
            {
                Dim          = 0,
                Notify       = 1,
                DimAndNotify = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            enum OnlookerDetectionBackOnMode
            {
                Manually  = 0,
                OneHour   = 1,
                FourHours = 2,
                OneDay    = 3
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum PedometerStepKind
            {
                Unknown = 0,
                Walking = 1,
                Running = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 3.0)]
            enum SensorOptimizationGoal
            {
                Precision       = 0,
                PowerEfficiency = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum SensorReadingType
            {
                Absolute = 0,
                Relative = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            enum SensorType
            {
                Accelerometer             = 0,
                ActivitySensor            = 1,
                Barometer                 = 2,
                Compass                   = 3,
                CustomSensor              = 4,
                Gyroscope                 = 5,
                ProximitySensor           = 6,
                Inclinometer              = 7,
                LightSensor               = 8,
                OrientationSensor         = 9,
                Pedometer                 = 10,
                RelativeInclinometer      = 11,
                RelativeOrientationSensor = 12,
                SimpleOrientationSensor   = 13
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum SimpleOrientation
            {
                NotRotated                        = 0,
                Rotated90DegreesCounterclockwise  = 1,
                Rotated180DegreesCounterclockwise = 2,
                Rotated270DegreesCounterclockwise = 3,
                Faceup                            = 4,
                Facedown                          = 5
            };

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            struct LightSensorChromaticity
            {
                DOUBLE X;
                DOUBLE Y;
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(DF184548-2711-4DA7-8098-4B82205D3C7D)]
            interface IAccelerometer : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.AccelerometerReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Accelerometer*, Windows.Devices.Sensors.AccelerometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
                [eventadd] HRESULT Shaken([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Accelerometer*, Windows.Devices.Sensors.AccelerometerShakenEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT Shaken([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(E8F092EE-4964-401A-B602-220D7153C60A)]
            interface IAccelerometer2 : IInspectable
            {
                [propput] HRESULT ReadingTransform([in] Windows.Graphics.Display.DisplayOrientations value);
                [propget] HRESULT ReadingTransform([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(87E0022A-ED80-49EB-BF8A-A4EA31E5CD84)]
            interface IAccelerometer3 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 3.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(1D373C4F-42D3-45B2-8144-AB7FB665EB59)]
            interface IAccelerometer4 : IInspectable
            {
                [propget] HRESULT ReadingType([out] [retval] Windows.Devices.Sensors.AccelerometerReadingType* type);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(7E7E7021-DEF4-53A6-AF43-806FD538EDF6)]
            interface IAccelerometer5 : IInspectable
            {
                [propget] HRESULT ReportThreshold([out] [retval] Windows.Devices.Sensors.AccelerometerDataThreshold** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.AccelerometerDataThreshold)]
            [uuid(F92C1B68-6320-5577-879E-9942621C3DD9)]
            interface IAccelerometerDataThreshold : IInspectable
            {
                [propget] HRESULT XAxisInGForce([out] [retval] DOUBLE* value);
                [propput] HRESULT XAxisInGForce([in] DOUBLE value);
                [propget] HRESULT YAxisInGForce([out] [retval] DOUBLE* value);
                [propput] HRESULT YAxisInGForce([in] DOUBLE value);
                [propget] HRESULT ZAxisInGForce([out] [retval] DOUBLE* value);
                [propput] HRESULT ZAxisInGForce([in] DOUBLE value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(7EAC64A9-97D5-446D-AB5A-917DF9B96A2C)]
            interface IAccelerometerDeviceId : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.AccelerometerReading)]
            [uuid(B9FE7ACB-D351-40AF-8BB6-7AA9AE641FB7)]
            interface IAccelerometerReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT AccelerationX([out] [retval] DOUBLE* value);
                [propget] HRESULT AccelerationY([out] [retval] DOUBLE* value);
                [propget] HRESULT AccelerationZ([out] [retval] DOUBLE* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.AccelerometerReading)]
            [uuid(0A864AA2-15AE-4A40-BE55-DB58D7DE7389)]
            interface IAccelerometerReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.AccelerometerReadingChangedEventArgs)]
            [uuid(0095C65B-B6AC-475A-9F44-8B32D35A3F25)]
            interface IAccelerometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.AccelerometerReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.AccelerometerShakenEventArgs)]
            [uuid(95FF01D1-4A28-4F35-98E8-8178AAE4084A)]
            interface IAccelerometerShakenEventArgs : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(A5E28B74-5A87-4A2D-BECC-0F906EA061DD)]
            interface IAccelerometerStatics : IInspectable
            {
                [overload("GetDefault")] HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Accelerometer** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 3.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(C4C4842F-D86B-4685-B2D7-3396F798D57B)]
            interface IAccelerometerStatics2 : IInspectable
            {
                [overload("GetDefault")] HRESULT GetDefaultWithAccelerometerReadingType([in] Windows.Devices.Sensors.AccelerometerReadingType readingType, [out] [retval] Windows.Devices.Sensors.Accelerometer** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Accelerometer)]
            [uuid(9DE218CF-455D-4CF3-8200-70E1410340F8)]
            interface IAccelerometerStatics3 : IInspectable
            {
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Accelerometer*>** operation);
                HRESULT GetDeviceSelector([in] Windows.Devices.Sensors.AccelerometerReadingType readingType, [out] [retval] HSTRING* result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ActivitySensor)]
            [uuid(CD7A630C-FB5F-48EB-B09B-A2708D1C61EF)]
            interface IActivitySensor : IInspectable
            {
                HRESULT GetCurrentReadingAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.ActivitySensorReading*>** result);
                [propget] HRESULT SubscribedActivities([out] [retval] Windows.Foundation.Collections.IVector<Windows.Devices.Sensors.ActivityType>** value);
                [propget] HRESULT PowerInMilliwatts([out] [retval] DOUBLE* value);
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
                [propget] HRESULT SupportedActivities([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ActivityType>** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.ActivitySensor*, Windows.Devices.Sensors.ActivitySensorReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ActivitySensorReading)]
            [uuid(85125A96-1472-40A2-B2AE-E1EF29226C78)]
            interface IActivitySensorReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT Activity([out] [retval] Windows.Devices.Sensors.ActivityType* value);
                [propget] HRESULT Confidence([out] [retval] Windows.Devices.Sensors.ActivitySensorReadingConfidence* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ActivitySensorReadingChangeReport)]
            [uuid(4F3C2915-D93B-47BD-960A-F20FB2F322B9)]
            interface IActivitySensorReadingChangeReport : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.ActivitySensorReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ActivitySensorReadingChangedEventArgs)]
            [uuid(DE386717-AEB6-4EC7-946A-D9CC19B951EC)]
            interface IActivitySensorReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.ActivitySensorReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ActivitySensor)]
            [uuid(A71E0E9D-EE8B-45D1-B25B-08CC0DF92AB6)]
            interface IActivitySensorStatics : IInspectable
            {
                HRESULT GetDefaultAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.ActivitySensor*>** result);
                HRESULT GetDeviceSelector([out] [retval] HSTRING* value);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.ActivitySensor*>** result);
                [overload("GetSystemHistoryAsync")] HRESULT GetSystemHistoryAsync([in] Windows.Foundation.DateTime fromTime, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ActivitySensorReading*>*>** result);
                [overload("GetSystemHistoryAsync")] HRESULT GetSystemHistoryWithDurationAsync([in] Windows.Foundation.DateTime fromTime, [in] Windows.Foundation.TimeSpan duration, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ActivitySensorReading*>*>** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ActivitySensorTriggerDetails)]
            [uuid(2C9E6612-B9CA-4677-B263-243297F79D3A)]
            interface IActivitySensorTriggerDetails : IInspectable
            {
                HRESULT ReadReports([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ActivitySensorReadingChangeReport*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.AdaptiveDimmingOptions)]
            [uuid(D3213CF7-89B5-5732-B2A0-AEFE324F54E6)]
            interface IAdaptiveDimmingOptions : IInspectable
            {
                [propget] HRESULT AllowWhenExternalDisplayConnected([out] [retval] boolean* value);
                [propput] HRESULT AllowWhenExternalDisplayConnected([in] boolean value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Altimeter)]
            [uuid(72F057FD-8F04-49F1-B4A7-F4E363B701A2)]
            interface IAltimeter : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.AltimeterReading** value);
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Altimeter*, Windows.Devices.Sensors.AltimeterReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Altimeter)]
            [uuid(C9471BF9-2ADD-48F5-9F08-3D0C7660D938)]
            interface IAltimeter2 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.AltimeterReading)]
            [uuid(FBE8EF73-7F5E-48C8-AA1A-F1F3BEFC1144)]
            interface IAltimeterReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT AltitudeChangeInMeters([out] [retval] DOUBLE* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.AltimeterReading)]
            [uuid(543A1BD9-6D0B-42B2-BD69-BC8FAE0F782C)]
            interface IAltimeterReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.AltimeterReadingChangedEventArgs)]
            [uuid(7069D077-446D-47F7-998C-EBC23B45E4A2)]
            interface IAltimeterReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.AltimeterReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Altimeter)]
            [uuid(9EB4D7C3-E5AC-47CE-8EEF-D3718168C01F)]
            interface IAltimeterStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Altimeter** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Barometer)]
            [uuid(934475A8-78BF-452F-B017-F0209CE6DAB4)]
            interface IBarometer : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.BarometerReading** value);
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Barometer*, Windows.Devices.Sensors.BarometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Barometer)]
            [uuid(32BCC418-3EEB-4D04-9574-7633A8781F9F)]
            interface IBarometer2 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.Barometer)]
            [uuid(0E35F0EA-02B5-5A04-B03D-822084863A54)]
            interface IBarometer3 : IInspectable
            {
                [propget] HRESULT ReportThreshold([out] [retval] Windows.Devices.Sensors.BarometerDataThreshold** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.BarometerDataThreshold)]
            [uuid(076B952C-CB62-5A90-A0D1-F85E4A936394)]
            interface IBarometerDataThreshold : IInspectable
            {
                [propget] HRESULT Hectopascals([out] [retval] DOUBLE* value);
                [propput] HRESULT Hectopascals([in] DOUBLE value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.BarometerReading)]
            [uuid(F5B9D2E6-1DF6-4A1A-A7AD-321D4F5DB247)]
            interface IBarometerReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT StationPressureInHectopascals([out] [retval] DOUBLE* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.BarometerReading)]
            [uuid(85A244EB-90C5-4875-891C-3865B4C357E7)]
            interface IBarometerReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.BarometerReadingChangedEventArgs)]
            [uuid(3D84945F-037B-404F-9BBB-6232D69543C3)]
            interface IBarometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.BarometerReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Barometer)]
            [uuid(286B270A-02E3-4F86-84FC-FDD892B5940F)]
            interface IBarometerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Barometer** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Barometer)]
            [uuid(8FC6B1E7-95FF-44AC-878E-D65C8308C34C)]
            interface IBarometerStatics2 : IInspectable
            {
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Barometer*>** operation);
                HRESULT GetDeviceSelector([out] [retval] HSTRING* result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            [uuid(292FFA94-1B45-403C-BA06-B106DBA69A64)]
            interface ICompass : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.CompassReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Compass*, Windows.Devices.Sensors.CompassReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            [uuid(36F26D09-C7D7-434F-B461-979DDFC2322F)]
            interface ICompass2 : IInspectable
            {
                [propput] HRESULT ReadingTransform([in] Windows.Graphics.Display.DisplayOrientations value);
                [propget] HRESULT ReadingTransform([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            [uuid(A424801B-C5EA-4D45-A0EC-4B791F041A89)]
            interface ICompass3 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            [uuid(291E7F11-EC32-5DCC-BFCB-0BB39EBA5774)]
            interface ICompass4 : IInspectable
            {
                [propget] HRESULT ReportThreshold([out] [retval] Windows.Devices.Sensors.CompassDataThreshold** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.CompassDataThreshold)]
            [uuid(D15B52B3-D39D-5EC8-B2E4-F193E6AB34ED)]
            interface ICompassDataThreshold : IInspectable
            {
                [propget] HRESULT Degrees([out] [retval] DOUBLE* value);
                [propput] HRESULT Degrees([in] DOUBLE value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            [uuid(D181CA29-B085-4B1D-870A-4FF57BA74FD4)]
            interface ICompassDeviceId : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.CompassReading)]
            [uuid(82911128-513D-4DC9-B781-5EEDFBF02D0C)]
            interface ICompassReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT HeadingMagneticNorth([out] [retval] DOUBLE* value);
                [propget] HRESULT HeadingTrueNorth([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.CompassReading)]
            [uuid(B13A661E-51BB-4A12-BEDD-AD47FF87D2E8)]
            interface ICompassReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.CompassReadingChangedEventArgs)]
            [uuid(8F1549B0-E8BC-4C7E-B009-4E41DF137072)]
            interface ICompassReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.CompassReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.CompassReading)]
            [uuid(E761354E-8911-40F7-9E16-6ECC7DAEC5DE)]
            interface ICompassReadingHeadingAccuracy : IInspectable
            {
                [propget] HRESULT HeadingAccuracy([out] [retval] Windows.Devices.Sensors.MagnetometerAccuracy* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            [uuid(9ABC97DF-56EC-4C25-B54D-40A68BB5B269)]
            interface ICompassStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Compass** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Compass)]
            [uuid(0ACE0EAD-3BAA-4990-9CE4-BE0913754ED2)]
            interface ICompassStatics2 : IInspectable
            {
                HRESULT GetDeviceSelector([out] [retval] HSTRING* result);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Compass*>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.DetectedPerson)]
            [uuid(168CC0D9-3F05-5029-A0BF-CDCAB4BE3F9E)]
            interface IDetectedPerson : IInspectable
            {
                [propget] HRESULT Engagement([out] [retval] Windows.Devices.Sensors.HumanEngagement* value);
                [propget] HRESULT DistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
                [propget] HRESULT HeadOrientation([out] [retval] Windows.Devices.Sensors.HeadOrientation** value);
                [propget] HRESULT HeadPosition([out] [retval] Windows.Devices.Sensors.HeadPosition** value);
                [propget] HRESULT PersonId([out] [retval] Windows.Foundation.IReference<INT32>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            [uuid(FDB9A9C4-84B1-4CA2-9763-9B589506C70C)]
            interface IGyrometer : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.GyrometerReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Gyrometer*, Windows.Devices.Sensors.GyrometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            [uuid(63DF2443-8CE8-41C3-AC44-8698810B557F)]
            interface IGyrometer2 : IInspectable
            {
                [propput] HRESULT ReadingTransform([in] Windows.Graphics.Display.DisplayOrientations value);
                [propget] HRESULT ReadingTransform([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            [uuid(5D6F88D5-8FBC-4484-914B-528ADFD947B1)]
            interface IGyrometer3 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            [uuid(0628A60C-4C4B-5096-94E6-C356DF68BEF7)]
            interface IGyrometer4 : IInspectable
            {
                [propget] HRESULT ReportThreshold([out] [retval] Windows.Devices.Sensors.GyrometerDataThreshold** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.GyrometerDataThreshold)]
            [uuid(8648B31E-6E52-5259-BBAD-242A69DC38C8)]
            interface IGyrometerDataThreshold : IInspectable
            {
                [propget] HRESULT XAxisInDegreesPerSecond([out] [retval] DOUBLE* value);
                [propput] HRESULT XAxisInDegreesPerSecond([in] DOUBLE value);
                [propget] HRESULT YAxisInDegreesPerSecond([out] [retval] DOUBLE* value);
                [propput] HRESULT YAxisInDegreesPerSecond([in] DOUBLE value);
                [propget] HRESULT ZAxisInDegreesPerSecond([out] [retval] DOUBLE* value);
                [propput] HRESULT ZAxisInDegreesPerSecond([in] DOUBLE value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            [uuid(1EE5E978-89A2-4275-9E95-7126F4708760)]
            interface IGyrometerDeviceId : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.GyrometerReading)]
            [uuid(B3D6DE5C-1EE4-456F-9DE7-E2493B5C8E03)]
            interface IGyrometerReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT AngularVelocityX([out] [retval] DOUBLE* value);
                [propget] HRESULT AngularVelocityY([out] [retval] DOUBLE* value);
                [propget] HRESULT AngularVelocityZ([out] [retval] DOUBLE* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.GyrometerReading)]
            [uuid(16AFE13C-2B89-44BB-822B-D1E1556FF09B)]
            interface IGyrometerReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.GyrometerReadingChangedEventArgs)]
            [uuid(0FDF1895-6F9E-42CE-8D58-388C0AB8356D)]
            interface IGyrometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.GyrometerReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            [uuid(83B6E7C9-E49D-4B39-86E6-CD554BE4C5C1)]
            interface IGyrometerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Gyrometer** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Gyrometer)]
            [uuid(EF83F7A1-D700-4204-9613-79C6B161DF4E)]
            interface IGyrometerStatics2 : IInspectable
            {
                HRESULT GetDeviceSelector([out] [retval] HSTRING* result);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Gyrometer*>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.HeadOrientation)]
            [uuid(519F54A9-513E-55E8-9C35-3E8DA21DEE69)]
            interface IHeadOrientation : IInspectable
            {
                [propget] HRESULT RollInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
                [propget] HRESULT PitchInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
                [propget] HRESULT YawInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.HeadPosition)]
            [uuid(585AEB65-CF35-5E6D-A76A-37DB131E17DE)]
            interface IHeadPosition : IInspectable
            {
                [propget] HRESULT AzimuthInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
                [propget] HRESULT AltitudeInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 7.0)]
            [exclusiveto(Windows.Devices.Sensors.HingeAngleReading)]
            [uuid(A3CD45B9-1BF1-4F65-A704-E2DA04F182C0)]
            interface IHingeAngleReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT AngleInDegrees([out] [retval] DOUBLE* value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 7.0)]
            [exclusiveto(Windows.Devices.Sensors.HingeAngleSensor)]
            [uuid(E9D3BE02-BFDF-437F-8C29-88C77393D309)]
            interface IHingeAngleSensor : IInspectable
            {
                HRESULT GetCurrentReadingAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HingeAngleReading*>** value);
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
                [propget] HRESULT MinReportThresholdInDegrees([out] [retval] DOUBLE* value);
                [propget] HRESULT ReportThresholdInDegrees([out] [retval] DOUBLE* value);
                [propput] HRESULT ReportThresholdInDegrees([in] DOUBLE value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.HingeAngleSensor*, Windows.Devices.Sensors.HingeAngleSensorReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 7.0)]
            [exclusiveto(Windows.Devices.Sensors.HingeAngleSensorReadingChangedEventArgs)]
            [uuid(24D9558B-FAD0-42B8-A854-78923049A1BA)]
            interface IHingeAngleSensorReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.HingeAngleReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 7.0)]
            [exclusiveto(Windows.Devices.Sensors.HingeAngleSensor)]
            [uuid(B7B63910-FBB1-4123-89CE-4EA34EB0DFCA)]
            interface IHingeAngleSensorStatics : IInspectable
            {
                HRESULT GetDeviceSelector([out] [retval] HSTRING* result);
                HRESULT GetDefaultAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HingeAngleSensor*>** result);
                HRESULT GetRelatedToAdjacentPanelsAsync([in] HSTRING firstPanelId, [in] HSTRING secondPanelId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HingeAngleSensor*>** result);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HingeAngleSensor*>** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceFeatures)]
            [uuid(BDB09FDA-3244-557A-BD29-8B004F59F2CC)]
            interface IHumanPresenceFeatures : IInspectable
            {
                [propget] HRESULT SensorId([out] [retval] HSTRING* value);
                [propget] HRESULT SupportedWakeOrLockDistancesInMillimeters([out] [retval] Windows.Foundation.Collections.IVectorView<UINT32>** value);
                [propget] HRESULT IsWakeOnApproachSupported([out] [retval] boolean* value);
                [propget] HRESULT IsLockOnLeaveSupported([out] [retval] boolean* value);
                [deprecated("Use IsAdaptiveDimmingSupported instead of IsAttentionAwareDimmingSupported.", deprecate, Windows.Foundation.UniversalApiContract, 15.0)] [propget] HRESULT IsAttentionAwareDimmingSupported([out] [retval] boolean* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceFeatures)]
            [uuid(08A9CDDA-D929-5EC2-81E2-940BAFA089CF)]
            interface IHumanPresenceFeatures2 : IInspectable
            {
                [propget] HRESULT IsAdaptiveDimmingSupported([out] [retval] boolean* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceFeatures)]
            [uuid(ED4E03AA-5CA2-5C02-B783-262E91295619)]
            interface IHumanPresenceFeatures3 : IInspectable
            {
                [propget] HRESULT IsOnlookerDetectionSupported([out] [retval] boolean* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensor)]
            [uuid(2116788B-E389-5CC3-9A97-CB17BE1008BD)]
            interface IHumanPresenceSensor : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
                [propget] HRESULT MaxDetectableDistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
                [propget] HRESULT MinDetectableDistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.HumanPresenceSensorReading** result);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.HumanPresenceSensor*, Windows.Devices.Sensors.HumanPresenceSensorReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensor)]
            [uuid(F8833779-65FE-541A-B9D6-1E474A485E7A)]
            interface IHumanPresenceSensor2 : IInspectable
            {
                [propget] HRESULT IsPresenceSupported([out] [retval] boolean* value);
                [propget] HRESULT IsEngagementSupported([out] [retval] boolean* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensor)]
            [uuid(963F006D-090D-532C-9EAF-803A9F69285B)]
            interface IHumanPresenceSensor3 : IInspectable
            {
                [propget] HRESULT MaxDetectablePersons([out] [retval] INT32* value);
                [propget] HRESULT MinDetectableAzimuthInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
                [propget] HRESULT MaxDetectableAzimuthInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
                [propget] HRESULT MinDetectableAltitudeInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
                [propget] HRESULT MaxDetectableAltitudeInDegrees([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [uuid(3E526A71-2D1D-5D43-8A8E-A434A8242EF0)]
            interface IHumanPresenceSensorExtension : IInspectable
            {
                HRESULT Initialize([in] HSTRING deviceInterface);
                HRESULT Start();
                HRESULT ProcessReading([in] Windows.Devices.Sensors.HumanPresenceSensorReading* reading, [out] [retval] Windows.Devices.Sensors.HumanPresenceSensorReadingUpdate** result);
                HRESULT ProcessReadingTimeoutExpired([in] Windows.Devices.Sensors.HumanPresenceSensorReading* reading);
                HRESULT Stop();
                HRESULT Uninitialize();
                HRESULT Reset();
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensorReading)]
            [uuid(83533BF5-A85A-5D50-8BE4-6072D745A3BB)]
            interface IHumanPresenceSensorReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT Presence([out] [retval] Windows.Devices.Sensors.HumanPresence* value);
                [propget] HRESULT Engagement([out] [retval] Windows.Devices.Sensors.HumanEngagement* value);
                [propget] HRESULT DistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensorReading)]
            [uuid(C4F0E950-3BFF-53D6-A0F8-514EA3705C66)]
            interface IHumanPresenceSensorReading2 : IInspectable
            {
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensorReading)]
            [uuid(B876D918-F069-586F-90E3-7C6FA5C5D33A)]
            interface IHumanPresenceSensorReading3 : IInspectable
            {
                [propget] HRESULT OnlookerPresence([out] [retval] Windows.Devices.Sensors.HumanPresence* value);
                [propget] HRESULT DetectedPersons([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.DetectedPerson*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensorReadingChangedEventArgs)]
            [uuid(A9DC4583-FD69-5C5E-AB1F-942204EAE2DB)]
            interface IHumanPresenceSensorReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.HumanPresenceSensorReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensorReadingUpdate)]
            [uuid(42419C77-6D2F-55A0-9E01-C9CBE7B2D6DF)]
            interface IHumanPresenceSensorReadingUpdate : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.IReference<Windows.Foundation.DateTime>** value);
                [propput] HRESULT Timestamp([in] Windows.Foundation.IReference<Windows.Foundation.DateTime>* value);
                [propget] HRESULT Presence([out] [retval] Windows.Foundation.IReference<Windows.Devices.Sensors.HumanPresence>** value);
                [propput] HRESULT Presence([in] Windows.Foundation.IReference<Windows.Devices.Sensors.HumanPresence>* value);
                [propget] HRESULT Engagement([out] [retval] Windows.Foundation.IReference<Windows.Devices.Sensors.HumanEngagement>** value);
                [propput] HRESULT Engagement([in] Windows.Foundation.IReference<Windows.Devices.Sensors.HumanEngagement>* value);
                [propget] HRESULT DistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
                [propput] HRESULT DistanceInMillimeters([in] Windows.Foundation.IReference<UINT32>* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensorReadingUpdate)]
            [uuid(BB95A033-C688-546A-8E2D-B12642E7EFEB)]
            interface IHumanPresenceSensorReadingUpdate2 : IInspectable
            {
                [propget] HRESULT OnlookerPresence([out] [retval] Windows.Foundation.IReference<Windows.Devices.Sensors.HumanPresence>** value);
                [propput] HRESULT OnlookerPresence([in] Windows.Foundation.IReference<Windows.Devices.Sensors.HumanPresence>* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensor)]
            [uuid(2AE89842-DBA9-56B2-9F27-EAC69D621004)]
            interface IHumanPresenceSensorStatics : IInspectable
            {
                HRESULT GetDeviceSelector([out] [retval] HSTRING* result);
                HRESULT FromIdAsync([in] HSTRING sensorId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HumanPresenceSensor*>** operation);
                HRESULT GetDefaultAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HumanPresenceSensor*>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSensor)]
            [uuid(5DE35843-D260-5A87-995E-ACE91326E1C4)]
            interface IHumanPresenceSensorStatics2 : IInspectable
            {
                HRESULT FromId([in] HSTRING sensorId, [out] [retval] Windows.Devices.Sensors.HumanPresenceSensor** result);
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.HumanPresenceSensor** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSettings)]
            [uuid(EF4DAF5B-07B7-5EB6-86BB-B7FF49CE44FB)]
            interface IHumanPresenceSettings : IInspectable
            {
                [propget] HRESULT SensorId([out] [retval] HSTRING* value);
                [propput] HRESULT SensorId([in] HSTRING value);
                [propget] HRESULT IsWakeOnApproachEnabled([out] [retval] boolean* value);
                [propput] HRESULT IsWakeOnApproachEnabled([in] boolean value);
                [propget] HRESULT WakeOnApproachDistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
                [propput] HRESULT WakeOnApproachDistanceInMillimeters([in] Windows.Foundation.IReference<UINT32>* value);
                [propget] HRESULT IsLockOnLeaveEnabled([out] [retval] boolean* value);
                [propput] HRESULT IsLockOnLeaveEnabled([in] boolean value);
                [propget] HRESULT LockOnLeaveDistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
                [propput] HRESULT LockOnLeaveDistanceInMillimeters([in] Windows.Foundation.IReference<UINT32>* value);
                [propget] HRESULT LockOnLeaveTimeout([out] [retval] Windows.Foundation.TimeSpan* value);
                [propput] HRESULT LockOnLeaveTimeout([in] Windows.Foundation.TimeSpan value);
                [deprecated("Use IsAdaptiveDimmingEnabled instead of IsAttentionAwareDimmingEnabled.", deprecate, Windows.Foundation.UniversalApiContract, 15.0)] [propget] HRESULT IsAttentionAwareDimmingEnabled([out] [retval] boolean* value);
                [deprecated("Use IsAdaptiveDimmingEnabled instead of IsAttentionAwareDimmingEnabled.", deprecate, Windows.Foundation.UniversalApiContract, 15.0)] [propput] HRESULT IsAttentionAwareDimmingEnabled([in] boolean value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSettings)]
            [uuid(A26F705E-8696-5EB4-B9E1-26A508DE1CD4)]
            interface IHumanPresenceSettings2 : IInspectable
            {
                [propget] HRESULT IsAdaptiveDimmingEnabled([out] [retval] boolean* value);
                [propput] HRESULT IsAdaptiveDimmingEnabled([in] boolean value);
                [propget] HRESULT WakeOptions([out] [retval] Windows.Devices.Sensors.WakeOnApproachOptions** value);
                [propget] HRESULT DimmingOptions([out] [retval] Windows.Devices.Sensors.AdaptiveDimmingOptions** value);
                [propget] HRESULT LockOptions([out] [retval] Windows.Devices.Sensors.LockOnLeaveOptions** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSettings)]
            [uuid(89757226-ACC1-4F58-81DF-47F1D69537F2)]
            interface IHumanPresenceSettings3 : IInspectable
            {
                [propget] HRESULT IsOnlookerDetectionEnabled([out] [retval] boolean* value);
                [propput] HRESULT IsOnlookerDetectionEnabled([in] boolean value);
                [propget] HRESULT OnlookerDetectionOptions([out] [retval] Windows.Devices.Sensors.OnlookerDetectionOptions** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.HumanPresenceSettings)]
            [uuid(7F343202-E010-52C4-AF0C-04A8F1E033DA)]
            interface IHumanPresenceSettingsStatics : IInspectable
            {
                HRESULT GetCurrentSettingsAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HumanPresenceSettings*>** operation);
                HRESULT GetCurrentSettings([out] [retval] Windows.Devices.Sensors.HumanPresenceSettings** result);
                HRESULT UpdateSettingsAsync([in] Windows.Devices.Sensors.HumanPresenceSettings* settings, [out] [retval] Windows.Foundation.IAsyncAction** operation);
                HRESULT UpdateSettings([in] Windows.Devices.Sensors.HumanPresenceSettings* settings);
                HRESULT GetSupportedFeaturesForSensorIdAsync([in] HSTRING sensorId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.HumanPresenceFeatures*>** operation);
                HRESULT GetSupportedFeaturesForSensorId([in] HSTRING sensorId, [out] [retval] Windows.Devices.Sensors.HumanPresenceFeatures** result);
                HRESULT GetSupportedLockOnLeaveTimeouts([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Foundation.TimeSpan>** result);
                [eventadd] HRESULT SettingsChanged([in] Windows.Foundation.EventHandler<IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT SettingsChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(2648CA6F-2286-406F-9161-F0C4BD806EBF)]
            interface IInclinometer : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.InclinometerReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Inclinometer*, Windows.Devices.Sensors.InclinometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(029F3393-28B2-45F8-BB16-61E86A7FAE6E)]
            interface IInclinometer2 : IInspectable
            {
                [propput] HRESULT ReadingTransform([in] Windows.Graphics.Display.DisplayOrientations value);
                [propget] HRESULT ReadingTransform([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
                [propget] HRESULT ReadingType([out] [retval] Windows.Devices.Sensors.SensorReadingType* type);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(3A095004-D765-4384-A3D7-0283F3ABE6AE)]
            interface IInclinometer3 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(43852618-8FCA-548E-BBF5-5C50412B6AA4)]
            interface IInclinometer4 : IInspectable
            {
                [propget] HRESULT ReportThreshold([out] [retval] Windows.Devices.Sensors.InclinometerDataThreshold** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.InclinometerDataThreshold)]
            [uuid(F80A4783-7BFE-545E-BB60-A0EBC47BD2FB)]
            interface IInclinometerDataThreshold : IInspectable
            {
                [propget] HRESULT PitchInDegrees([out] [retval] FLOAT* value);
                [propput] HRESULT PitchInDegrees([in] FLOAT value);
                [propget] HRESULT RollInDegrees([out] [retval] FLOAT* value);
                [propput] HRESULT RollInDegrees([in] FLOAT value);
                [propget] HRESULT YawInDegrees([out] [retval] FLOAT* value);
                [propput] HRESULT YawInDegrees([in] FLOAT value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(01E91982-41FF-4406-AE83-62210FF16FE3)]
            interface IInclinometerDeviceId : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.InclinometerReading)]
            [uuid(9F44F055-B6F6-497F-B127-1A775E501458)]
            interface IInclinometerReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT PitchDegrees([out] [retval] FLOAT* value);
                [propget] HRESULT RollDegrees([out] [retval] FLOAT* value);
                [propget] HRESULT YawDegrees([out] [retval] FLOAT* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.InclinometerReading)]
            [uuid(4F164781-E90B-4658-8915-0103E08A805A)]
            interface IInclinometerReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.InclinometerReadingChangedEventArgs)]
            [uuid(4AE91DC1-E7EB-4938-8511-AE0D6B440438)]
            interface IInclinometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.InclinometerReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.InclinometerReading)]
            [uuid(B453E880-1FE3-4986-A257-E6ECE2723949)]
            interface IInclinometerReadingYawAccuracy : IInspectable
            {
                [propget] HRESULT YawAccuracy([out] [retval] Windows.Devices.Sensors.MagnetometerAccuracy* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(F22EC551-9C30-453A-8B49-3C3EEB33CB61)]
            interface IInclinometerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Inclinometer** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(043F9775-6A1E-499C-86E0-638C1A864B00)]
            interface IInclinometerStatics2 : IInspectable
            {
                HRESULT GetDefaultForRelativeReadings([out] [retval] Windows.Devices.Sensors.Inclinometer** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 3.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(BD9A4280-B91A-4829-9392-ABC0B6BDF2B4)]
            interface IInclinometerStatics3 : IInspectable
            {
                [overload("GetDefault")] HRESULT GetDefaultWithSensorReadingType([in] Windows.Devices.Sensors.SensorReadingType sensorReadingtype, [out] [retval] Windows.Devices.Sensors.Inclinometer** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Inclinometer)]
            [uuid(E8BA96F9-6E85-4A83-AED0-D7CDCC9856C8)]
            interface IInclinometerStatics4 : IInspectable
            {
                HRESULT GetDeviceSelector([in] Windows.Devices.Sensors.SensorReadingType readingType, [out] [retval] HSTRING* result);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Inclinometer*>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [uuid(F84C0718-0C54-47AE-922E-789F57FB03A0)]
            interface ILightSensor : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.LightSensorReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.LightSensor*, Windows.Devices.Sensors.LightSensorReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [uuid(486B24E8-A94C-4090-8F48-09F782A9F7D5)]
            interface ILightSensor2 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [uuid(4876D0FF-9F4C-5F72-ADBD-A3471B063C00)]
            interface ILightSensor3 : IInspectable
            {
                [propget] HRESULT ReportThreshold([out] [retval] Windows.Devices.Sensors.LightSensorDataThreshold** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [uuid(6167BE97-6390-404C-9C19-445311C6A1D3)]
            interface ILightSensor4 : IInspectable
            {
                HRESULT IsChromaticitySupported([out] [retval] boolean* supported);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensorDataThreshold)]
            [uuid(B160AFD1-878F-5492-9F2C-33DC3AE584A3)]
            interface ILightSensorDataThreshold : IInspectable
            {
                [propget] HRESULT LuxPercentage([out] [retval] FLOAT* value);
                [propput] HRESULT LuxPercentage([in] FLOAT value);
                [propget] HRESULT AbsoluteLux([out] [retval] FLOAT* value);
                [propput] HRESULT AbsoluteLux([in] FLOAT value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensorDataThreshold)]
            [uuid(6F040FBD-E08B-5B97-8F61-DD4EE66B1733)]
            interface ILightSensorDataThreshold2 : IInspectable
            {
                [propget] HRESULT Chromaticity([out] [retval] Windows.Devices.Sensors.LightSensorChromaticity* value);
                [propput] HRESULT Chromaticity([in] Windows.Devices.Sensors.LightSensorChromaticity value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [uuid(7FEE49F8-0AFB-4F51-87F0-6C26375CE94F)]
            interface ILightSensorDeviceId : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensorReading)]
            [uuid(FFDF6300-227C-4D2B-B302-FC0142485C68)]
            interface ILightSensorReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT IlluminanceInLux([out] [retval] FLOAT* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensorReading)]
            [uuid(B7512185-44A3-44C9-8190-9EF6DE0A8A74)]
            interface ILightSensorReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensorReading)]
            [uuid(F338EE06-96AF-4029-B530-61ACC05B7CFE)]
            interface ILightSensorReading3 : IInspectable
            {
                [propget] HRESULT Chromaticity([out] [retval] Windows.Devices.Sensors.LightSensorChromaticity* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensorReadingChangedEventArgs)]
            [uuid(A3A2F4CF-258B-420C-B8AB-8EDD601ECF50)]
            interface ILightSensorReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.LightSensorReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [uuid(45DB8C84-C3A8-471E-9A53-6457FAD87C0E)]
            interface ILightSensorStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.LightSensor** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.LightSensor)]
            [uuid(0EC0A650-DDC6-40AB-ACE3-EC3359D42C51)]
            interface ILightSensorStatics2 : IInspectable
            {
                HRESULT GetDeviceSelector([out] [retval] HSTRING* result);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.LightSensor*>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.LockOnLeaveOptions)]
            [uuid(3C6BF8BD-04C1-5829-8D4E-70521755B8BE)]
            interface ILockOnLeaveOptions : IInspectable
            {
                [propget] HRESULT AllowWhenExternalDisplayConnected([out] [retval] boolean* value);
                [propput] HRESULT AllowWhenExternalDisplayConnected([in] boolean value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Magnetometer)]
            [uuid(484F626E-D3C9-4111-B3F6-2CF1FAA418D5)]
            interface IMagnetometer : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.MagnetometerReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Magnetometer*, Windows.Devices.Sensors.MagnetometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Magnetometer)]
            [uuid(B4656C85-26F6-444B-A9E2-A23F966CD368)]
            interface IMagnetometer2 : IInspectable
            {
                [propput] HRESULT ReadingTransform([in] Windows.Graphics.Display.DisplayOrientations value);
                [propget] HRESULT ReadingTransform([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Magnetometer)]
            [uuid(BE93DB7C-A625-48EF-ACF7-FAC104832671)]
            interface IMagnetometer3 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.Magnetometer)]
            [uuid(DFB17901-3E0F-508F-B24B-F2BB75015F40)]
            interface IMagnetometer4 : IInspectable
            {
                [propget] HRESULT ReportThreshold([out] [retval] Windows.Devices.Sensors.MagnetometerDataThreshold** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [exclusiveto(Windows.Devices.Sensors.MagnetometerDataThreshold)]
            [uuid(D177CB01-9063-5FA5-B596-B445E9DC3401)]
            interface IMagnetometerDataThreshold : IInspectable
            {
                [propget] HRESULT XAxisMicroteslas([out] [retval] FLOAT* value);
                [propput] HRESULT XAxisMicroteslas([in] FLOAT value);
                [propget] HRESULT YAxisMicroteslas([out] [retval] FLOAT* value);
                [propput] HRESULT YAxisMicroteslas([in] FLOAT value);
                [propget] HRESULT ZAxisMicroteslas([out] [retval] FLOAT* value);
                [propput] HRESULT ZAxisMicroteslas([in] FLOAT value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Magnetometer)]
            [uuid(58B498C2-7E4B-404C-9FC5-5DE8B40EBAE3)]
            interface IMagnetometerDeviceId : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.MagnetometerReading)]
            [uuid(0C2CC40D-EBFD-4E5C-BB11-AFC29B3CAE61)]
            interface IMagnetometerReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT MagneticFieldX([out] [retval] FLOAT* value);
                [propget] HRESULT MagneticFieldY([out] [retval] FLOAT* value);
                [propget] HRESULT MagneticFieldZ([out] [retval] FLOAT* value);
                [propget] HRESULT DirectionalAccuracy([out] [retval] Windows.Devices.Sensors.MagnetometerAccuracy* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.MagnetometerReading)]
            [uuid(D4C95C61-61D9-404B-A328-066F177A1409)]
            interface IMagnetometerReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.MagnetometerReadingChangedEventArgs)]
            [uuid(17EAE872-2EB9-4EE7-8AD0-3127537D949B)]
            interface IMagnetometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.MagnetometerReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Magnetometer)]
            [uuid(853C64CC-0698-4DDA-A6DF-9CB9CC4AB40A)]
            interface IMagnetometerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.Magnetometer** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.Magnetometer)]
            [uuid(2C0819F0-FFC6-4F89-A06F-18FA10792933)]
            interface IMagnetometerStatics2 : IInspectable
            {
                HRESULT GetDeviceSelector([out] [retval] HSTRING* result);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Magnetometer*>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [exclusiveto(Windows.Devices.Sensors.OnlookerDetectionOptions)]
            [uuid(0412B36F-36E6-51E2-876E-65197CC53C12)]
            interface IOnlookerDetectionOptions : IInspectable
            {
                [propget] HRESULT Action([out] [retval] Windows.Devices.Sensors.OnlookerDetectionAction* value);
                [propput] HRESULT Action([in] Windows.Devices.Sensors.OnlookerDetectionAction value);
                [propget] HRESULT BackOnMode([out] [retval] Windows.Devices.Sensors.OnlookerDetectionBackOnMode* value);
                [propput] HRESULT BackOnMode([in] Windows.Devices.Sensors.OnlookerDetectionBackOnMode value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [uuid(5E354635-CF6B-4C63-ABD8-10252B0BF6EC)]
            interface IOrientationSensor : IInspectable
            {
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.OrientationSensorReading** value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.OrientationSensor*, Windows.Devices.Sensors.OrientationSensorReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [uuid(0D924CF9-2F1F-49C9-8042-4A1813D67760)]
            interface IOrientationSensor2 : IInspectable
            {
                [propput] HRESULT ReadingTransform([in] Windows.Graphics.Display.DisplayOrientations value);
                [propget] HRESULT ReadingTransform([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
                [propget] HRESULT ReadingType([out] [retval] Windows.Devices.Sensors.SensorReadingType* type);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [uuid(2CCE578D-646B-48C5-B7EE-44FDC4C6AAFD)]
            interface IOrientationSensor3 : IInspectable
            {
                [propput] HRESULT ReportLatency([in] UINT32 value);
                [propget] HRESULT ReportLatency([out] [retval] UINT32* value);
                [propget] HRESULT MaxBatchSize([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [uuid(5A69B648-4C29-49EC-B28F-EA1D117B66F0)]
            interface IOrientationSensorDeviceId : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensorReading)]
            [uuid(4756C993-6595-4897-BCC6-D537EE757564)]
            interface IOrientationSensorReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT RotationMatrix([out] [retval] Windows.Devices.Sensors.SensorRotationMatrix** value);
                [propget] HRESULT Quaternion([out] [retval] Windows.Devices.Sensors.SensorQuaternion** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensorReading)]
            [uuid(00576E5F-49F8-4C05-9E07-24FAC79408C3)]
            interface IOrientationSensorReading2 : IInspectable
            {
                [propget] HRESULT PerformanceCount([out] [retval] Windows.Foundation.IReference<Windows.Foundation.TimeSpan>** value);
                [propget] HRESULT Properties([out] [retval] Windows.Foundation.Collections.IMapView<HSTRING, IInspectable*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensorReadingChangedEventArgs)]
            [uuid(012C1186-C3BA-46BC-AE65-7A98996CBFB8)]
            interface IOrientationSensorReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.OrientationSensorReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensorReading)]
            [uuid(D1AC9824-3F5A-49A2-BC7B-1180BC38CD2B)]
            interface IOrientationSensorReadingYawAccuracy : IInspectable
            {
                [propget] HRESULT YawAccuracy([out] [retval] Windows.Devices.Sensors.MagnetometerAccuracy* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [uuid(10EF8712-FB4C-428A-898B-2765E409E669)]
            interface IOrientationSensorStatics : IInspectable
            {
                [overload("GetDefault")] HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.OrientationSensor** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [uuid(59DA0D0B-D40A-4C71-9276-8A272A0A6619)]
            interface IOrientationSensorStatics2 : IInspectable
            {
                HRESULT GetDefaultForRelativeReadings([out] [retval] Windows.Devices.Sensors.OrientationSensor** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 3.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [uuid(D82CE920-2777-40FF-9F59-D654B085F12F)]
            interface IOrientationSensorStatics3 : IInspectable
            {
                [overload("GetDefault")] HRESULT GetDefaultWithSensorReadingType([in] Windows.Devices.Sensors.SensorReadingType sensorReadingtype, [out] [retval] Windows.Devices.Sensors.OrientationSensor** result);
                [overload("GetDefault")] HRESULT GetDefaultWithSensorReadingTypeAndSensorOptimizationGoal([in] Windows.Devices.Sensors.SensorReadingType sensorReadingType, [in] Windows.Devices.Sensors.SensorOptimizationGoal optimizationGoal, [out] [retval] Windows.Devices.Sensors.OrientationSensor** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.Devices.Sensors.OrientationSensor)]
            [uuid(A67FEB55-2C85-4B28-A0FE-58C4B20495F5)]
            interface IOrientationSensorStatics4 : IInspectable
            {
                [overload("GetDeviceSelector")] HRESULT GetDeviceSelector([in] Windows.Devices.Sensors.SensorReadingType readingType, [out] [retval] HSTRING* result);
                [overload("GetDeviceSelector")] HRESULT GetDeviceSelectorWithSensorReadingTypeAndSensorOptimizationGoal([in] Windows.Devices.Sensors.SensorReadingType readingType, [in] Windows.Devices.Sensors.SensorOptimizationGoal optimizationGoal, [out] [retval] HSTRING* result);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.OrientationSensor*>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Pedometer)]
            [uuid(9A1E013D-3D98-45F8-8920-8E4ECACA5F97)]
            interface IPedometer : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
                [propget] HRESULT PowerInMilliwatts([out] [retval] DOUBLE* value);
                [propget] HRESULT MinimumReportInterval([out] [retval] UINT32* value);
                [propput] HRESULT ReportInterval([in] UINT32 value);
                [propget] HRESULT ReportInterval([out] [retval] UINT32* value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.Pedometer*, Windows.Devices.Sensors.PedometerReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.Devices.Sensors.Pedometer)]
            [uuid(E5A406DF-2B81-4ADD-B2FF-77AB6C98BA19)]
            interface IPedometer2 : IInspectable
            {
                HRESULT GetCurrentReadings([out] [retval] Windows.Foundation.Collections.IMapView<Windows.Devices.Sensors.PedometerStepKind, Windows.Devices.Sensors.PedometerReading*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.Devices.Sensors.PedometerDataThreshold)]
            [uuid(CBAD8F50-7A54-466B-9010-77A162FCA5D7)]
            interface IPedometerDataThresholdFactory : IInspectable
            {
                HRESULT Create([in] Windows.Devices.Sensors.Pedometer* sensor, [in] INT32 stepGoal, [out] [retval] Windows.Devices.Sensors.PedometerDataThreshold** threshold);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.PedometerReading)]
            [uuid(2245DCF4-A8E1-432F-896A-BE0DD9B02D24)]
            interface IPedometerReading : IInspectable
            {
                [propget] HRESULT StepKind([out] [retval] Windows.Devices.Sensors.PedometerStepKind* value);
                [propget] HRESULT CumulativeSteps([out] [retval] INT32* value);
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT CumulativeStepsDuration([out] [retval] Windows.Foundation.TimeSpan* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.PedometerReadingChangedEventArgs)]
            [uuid(F855E47E-ABBC-4456-86A8-25CF2B333742)]
            interface IPedometerReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.PedometerReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.Pedometer)]
            [uuid(82980A2F-4083-4DFB-B411-938EA0F4B946)]
            interface IPedometerStatics : IInspectable
            {
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Pedometer*>** operation);
                HRESULT GetDefaultAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.Pedometer*>** operation);
                HRESULT GetDeviceSelector([out] [retval] HSTRING* result);
                [overload("GetSystemHistoryAsync")] HRESULT GetSystemHistoryAsync([in] Windows.Foundation.DateTime fromTime, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.PedometerReading*>*>** operation);
                [overload("GetSystemHistoryAsync")] HRESULT GetSystemHistoryWithDurationAsync([in] Windows.Foundation.DateTime fromTime, [in] Windows.Foundation.TimeSpan duration, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.PedometerReading*>*>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.Devices.Sensors.Pedometer)]
            [uuid(79F5C6BB-CE0E-4133-B47E-8627EA72F677)]
            interface IPedometerStatics2 : IInspectable
            {
                HRESULT GetReadingsFromTriggerDetails([in] Windows.Devices.Sensors.SensorDataThresholdTriggerDetails* triggerDetails, [out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.PedometerReading*>** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ProximitySensor)]
            [uuid(54C076B8-ECFB-4944-B928-74FC504D47EE)]
            interface IProximitySensor : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
                [propget] HRESULT MaxDistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
                [propget] HRESULT MinDistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
                HRESULT GetCurrentReading([out] [retval] Windows.Devices.Sensors.ProximitySensorReading** value);
                [eventadd] HRESULT ReadingChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.ProximitySensor*, Windows.Devices.Sensors.ProximitySensorReadingChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ReadingChanged([in] EventRegistrationToken token);
                HRESULT CreateDisplayOnOffController([out] [retval] Windows.Devices.Sensors.ProximitySensorDisplayOnOffController** controller);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.Devices.Sensors.ProximitySensorDataThreshold)]
            [uuid(905AC121-6D27-4AD3-9DB5-6467F2A5AD9D)]
            interface IProximitySensorDataThresholdFactory : IInspectable
            {
                HRESULT Create([in] Windows.Devices.Sensors.ProximitySensor* sensor, [out] [retval] Windows.Devices.Sensors.ProximitySensorDataThreshold** threshold);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ProximitySensorReading)]
            [uuid(71228D59-132D-4D5F-8FF9-2F0DB8751CED)]
            interface IProximitySensorReading : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT IsDetected([out] [retval] boolean* value);
                [propget] HRESULT DistanceInMillimeters([out] [retval] Windows.Foundation.IReference<UINT32>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ProximitySensorReadingChangedEventArgs)]
            [uuid(CFC2F366-C3E8-40FD-8CC3-67E289004938)]
            interface IProximitySensorReadingChangedEventArgs : IInspectable
            {
                [propget] HRESULT Reading([out] [retval] Windows.Devices.Sensors.ProximitySensorReading** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.ProximitySensor)]
            [uuid(29186649-6269-4E57-A5AD-82BE80813392)]
            interface IProximitySensorStatics : IInspectable
            {
                HRESULT GetDeviceSelector([out] [retval] HSTRING* value);
                HRESULT FromId([in] HSTRING sensorId, [out] [retval] Windows.Devices.Sensors.ProximitySensor** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.Devices.Sensors.ProximitySensor)]
            [uuid(CBF473AE-E9CA-422F-AD67-4C3D25DF350C)]
            interface IProximitySensorStatics2 : IInspectable
            {
                HRESULT GetReadingsFromTriggerDetails([in] Windows.Devices.Sensors.SensorDataThresholdTriggerDetails* triggerDetails, [out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Devices.Sensors.ProximitySensorReading*>** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [uuid(54DAEC61-FE4B-4E07-B260-3A4CDFBE396E)]
            interface ISensorDataThreshold : IInspectable
            {
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.Devices.Sensors.SensorDataThresholdTriggerDetails)]
            [uuid(9106F1B7-E88D-48B1-BC90-619C7B349391)]
            interface ISensorDataThresholdTriggerDetails : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
                [propget] HRESULT SensorType([out] [retval] Windows.Devices.Sensors.SensorType* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.SensorQuaternion)]
            [uuid(C9C5C827-C71C-46E7-9DA3-36A193B232BC)]
            interface ISensorQuaternion : IInspectable
            {
                [propget] HRESULT W([out] [retval] FLOAT* value);
                [propget] HRESULT X([out] [retval] FLOAT* value);
                [propget] HRESULT Y([out] [retval] FLOAT* value);
                [propget] HRESULT Z([out] [retval] FLOAT* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.SensorRotationMatrix)]
            [uuid(0A3D5A67-22F4-4392-9538-65D0BD064AA6)]
            interface ISensorRotationMatrix : IInspectable
            {
                [propget] HRESULT M11([out] [retval] FLOAT* value);
                [propget] HRESULT M12([out] [retval] FLOAT* value);
                [propget] HRESULT M13([out] [retval] FLOAT* value);
                [propget] HRESULT M21([out] [retval] FLOAT* value);
                [propget] HRESULT M22([out] [retval] FLOAT* value);
                [propget] HRESULT M23([out] [retval] FLOAT* value);
                [propget] HRESULT M31([out] [retval] FLOAT* value);
                [propget] HRESULT M32([out] [retval] FLOAT* value);
                [propget] HRESULT M33([out] [retval] FLOAT* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensor)]
            [uuid(5FF53856-214A-4DEE-A3F9-616F1AB06FFD)]
            interface ISimpleOrientationSensor : IInspectable
            {
                HRESULT GetCurrentOrientation([out] [retval] Windows.Devices.Sensors.SimpleOrientation* value);
                [eventadd] HRESULT OrientationChanged([in] Windows.Foundation.TypedEventHandler<Windows.Devices.Sensors.SimpleOrientationSensor*, Windows.Devices.Sensors.SimpleOrientationSensorOrientationChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT OrientationChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensor)]
            [uuid(A277A798-8870-453E-8BD6-B8F5D8D7941B)]
            interface ISimpleOrientationSensor2 : IInspectable
            {
                [propput] HRESULT ReadingTransform([in] Windows.Graphics.Display.DisplayOrientations value);
                [propget] HRESULT ReadingTransform([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensor)]
            [uuid(FBC00ACB-3B76-41F6-8091-30EFE646D3CF)]
            interface ISimpleOrientationSensorDeviceId : IInspectable
            {
                [propget] HRESULT DeviceId([out] [retval] HSTRING* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensorOrientationChangedEventArgs)]
            [uuid(BCD5C660-23D4-4B4C-A22E-BA81ADE0C601)]
            interface ISimpleOrientationSensorOrientationChangedEventArgs : IInspectable
            {
                [propget] HRESULT Timestamp([out] [retval] Windows.Foundation.DateTime* value);
                [propget] HRESULT Orientation([out] [retval] Windows.Devices.Sensors.SimpleOrientation* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensor)]
            [uuid(72ED066F-70AA-40C6-9B1B-3433F7459B4E)]
            interface ISimpleOrientationSensorStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.Devices.Sensors.SimpleOrientationSensor** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 7.0)]
            [exclusiveto(Windows.Devices.Sensors.SimpleOrientationSensor)]
            [uuid(848F9C7F-B138-4E11-8910-A2A2A3B56D83)]
            interface ISimpleOrientationSensorStatics2 : IInspectable
            {
                HRESULT GetDeviceSelector([out] [retval] HSTRING* value);
                HRESULT FromIdAsync([in] HSTRING deviceId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.Devices.Sensors.SimpleOrientationSensor*>** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [exclusiveto(Windows.Devices.Sensors.WakeOnApproachOptions)]
            [uuid(F0B87AE7-7E1F-5EA5-814D-6B7E07DEFC2B)]
            interface IWakeOnApproachOptions : IInspectable
            {
                [propget] HRESULT AllowWhenExternalDisplayConnected([out] [retval] boolean* value);
                [propput] HRESULT AllowWhenExternalDisplayConnected([in] boolean value);
                [propget] HRESULT DisableWhenBatterySaverOn([out] [retval] boolean* value);
                [propput] HRESULT DisableWhenBatterySaverOn([in] boolean value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IAccelerometerStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IAccelerometerStatics2, Windows.Foundation.UniversalApiContract, 3.0)]
            [static(Windows.Devices.Sensors.IAccelerometerStatics3, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass Accelerometer
            {
                [default] interface Windows.Devices.Sensors.IAccelerometer;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IAccelerometerDeviceId;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IAccelerometer2;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IAccelerometer3;
                [contract(Windows.Foundation.UniversalApiContract, 3.0)] interface Windows.Devices.Sensors.IAccelerometer4;
                [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Sensors.IAccelerometer5;
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [marshaling_behavior(agile)]
            runtimeclass AccelerometerDataThreshold
            {
                [default] interface Windows.Devices.Sensors.IAccelerometerDataThreshold;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass AccelerometerReading
            {
                [default] interface Windows.Devices.Sensors.IAccelerometerReading;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IAccelerometerReading2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass AccelerometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IAccelerometerReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass AccelerometerShakenEventArgs
            {
                [default] interface Windows.Devices.Sensors.IAccelerometerShakenEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IActivitySensorStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [threading(both)]
            runtimeclass ActivitySensor
            {
                [default] interface Windows.Devices.Sensors.IActivitySensor;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ActivitySensorReading
            {
                [default] interface Windows.Devices.Sensors.IActivitySensorReading;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ActivitySensorReadingChangeReport
            {
                [default] interface Windows.Devices.Sensors.IActivitySensorReadingChangeReport;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ActivitySensorReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IActivitySensorReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ActivitySensorTriggerDetails
            {
                [default] interface Windows.Devices.Sensors.IActivitySensorTriggerDetails;
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            runtimeclass AdaptiveDimmingOptions
            {
                [default] interface Windows.Devices.Sensors.IAdaptiveDimmingOptions;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IAltimeterStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [threading(both)]
            runtimeclass Altimeter
            {
                [default] interface Windows.Devices.Sensors.IAltimeter;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IAltimeter2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            runtimeclass AltimeterReading
            {
                [default] interface Windows.Devices.Sensors.IAltimeterReading;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IAltimeterReading2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            runtimeclass AltimeterReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IAltimeterReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IBarometerStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IBarometerStatics2, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass Barometer
            {
                [default] interface Windows.Devices.Sensors.IBarometer;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IBarometer2;
                [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Sensors.IBarometer3;
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [marshaling_behavior(agile)]
            runtimeclass BarometerDataThreshold
            {
                [default] interface Windows.Devices.Sensors.IBarometerDataThreshold;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass BarometerReading
            {
                [default] interface Windows.Devices.Sensors.IBarometerReading;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IBarometerReading2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass BarometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IBarometerReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.ICompassStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.ICompassStatics2, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass Compass
            {
                [default] interface Windows.Devices.Sensors.ICompass;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.ICompassDeviceId;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.ICompass2;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.ICompass3;
                [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Sensors.ICompass4;
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [marshaling_behavior(agile)]
            runtimeclass CompassDataThreshold
            {
                [default] interface Windows.Devices.Sensors.ICompassDataThreshold;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass CompassReading
            {
                [default] interface Windows.Devices.Sensors.ICompassReading;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.ICompassReadingHeadingAccuracy;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.ICompassReading2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass CompassReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.ICompassReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [marshaling_behavior(agile)]
            runtimeclass DetectedPerson
            {
                [default] interface Windows.Devices.Sensors.IDetectedPerson;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IGyrometerStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IGyrometerStatics2, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass Gyrometer
            {
                [default] interface Windows.Devices.Sensors.IGyrometer;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IGyrometerDeviceId;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IGyrometer2;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IGyrometer3;
                [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Sensors.IGyrometer4;
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [marshaling_behavior(agile)]
            runtimeclass GyrometerDataThreshold
            {
                [default] interface Windows.Devices.Sensors.IGyrometerDataThreshold;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass GyrometerReading
            {
                [default] interface Windows.Devices.Sensors.IGyrometerReading;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IGyrometerReading2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass GyrometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IGyrometerReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [marshaling_behavior(agile)]
            runtimeclass HeadOrientation
            {
                [default] interface Windows.Devices.Sensors.IHeadOrientation;
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [marshaling_behavior(agile)]
            runtimeclass HeadPosition
            {
                [default] interface Windows.Devices.Sensors.IHeadPosition;
            }

            [contract(Windows.Foundation.UniversalApiContract, 7.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass HingeAngleReading
            {
                [default] interface Windows.Devices.Sensors.IHingeAngleReading;
            }

            [contract(Windows.Foundation.UniversalApiContract, 7.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IHingeAngleSensorStatics, Windows.Foundation.UniversalApiContract, 7.0)]
            [threading(both)]
            runtimeclass HingeAngleSensor
            {
                [default] interface Windows.Devices.Sensors.IHingeAngleSensor;
            }

            [contract(Windows.Foundation.UniversalApiContract, 7.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass HingeAngleSensorReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IHingeAngleSensorReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            runtimeclass HumanPresenceFeatures
            {
                [default] interface Windows.Devices.Sensors.IHumanPresenceFeatures;
                [contract(Windows.Foundation.UniversalApiContract, 15.0)] interface Windows.Devices.Sensors.IHumanPresenceFeatures2;
                [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Sensors.IHumanPresenceFeatures3;
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IHumanPresenceSensorStatics, Windows.Foundation.UniversalApiContract, 15.0)]
            [static(Windows.Devices.Sensors.IHumanPresenceSensorStatics2, Windows.Foundation.UniversalApiContract, 15.0)]
            [threading(both)]
            runtimeclass HumanPresenceSensor
            {
                [default] interface Windows.Devices.Sensors.IHumanPresenceSensor;
                [contract(Windows.Foundation.UniversalApiContract, 15.0)] interface Windows.Devices.Sensors.IHumanPresenceSensor2;
                [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Sensors.IHumanPresenceSensor3;
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            runtimeclass HumanPresenceSensorReading
            {
                [default] interface Windows.Devices.Sensors.IHumanPresenceSensorReading;
                [contract(Windows.Foundation.UniversalApiContract, 15.0)] interface Windows.Devices.Sensors.IHumanPresenceSensorReading2;
                [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Sensors.IHumanPresenceSensorReading3;
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            runtimeclass HumanPresenceSensorReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IHumanPresenceSensorReadingChangedEventArgs;
            }

            [activatable(Windows.Foundation.UniversalApiContract, 15.0)]
            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass HumanPresenceSensorReadingUpdate
            {
                [default] interface Windows.Devices.Sensors.IHumanPresenceSensorReadingUpdate;
                [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Sensors.IHumanPresenceSensorReadingUpdate2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IHumanPresenceSettingsStatics, Windows.Foundation.UniversalApiContract, 15.0)]
            [threading(both)]
            runtimeclass HumanPresenceSettings
            {
                [default] interface Windows.Devices.Sensors.IHumanPresenceSettings;
                [contract(Windows.Foundation.UniversalApiContract, 15.0)] interface Windows.Devices.Sensors.IHumanPresenceSettings2;
                [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Sensors.IHumanPresenceSettings3;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IInclinometerStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IInclinometerStatics2, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IInclinometerStatics3, Windows.Foundation.UniversalApiContract, 3.0)]
            [static(Windows.Devices.Sensors.IInclinometerStatics4, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass Inclinometer
            {
                [default] interface Windows.Devices.Sensors.IInclinometer;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IInclinometerDeviceId;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IInclinometer2;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IInclinometer3;
                [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Sensors.IInclinometer4;
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [marshaling_behavior(agile)]
            runtimeclass InclinometerDataThreshold
            {
                [default] interface Windows.Devices.Sensors.IInclinometerDataThreshold;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass InclinometerReading
            {
                [default] interface Windows.Devices.Sensors.IInclinometerReading;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IInclinometerReadingYawAccuracy;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IInclinometerReading2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass InclinometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IInclinometerReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.ILightSensorStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.ILightSensorStatics2, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass LightSensor
            {
                [default] interface Windows.Devices.Sensors.ILightSensor;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.ILightSensorDeviceId;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.ILightSensor2;
                [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Sensors.ILightSensor3;
                [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Sensors.ILightSensor4;
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [marshaling_behavior(agile)]
            runtimeclass LightSensorDataThreshold
            {
                [default] interface Windows.Devices.Sensors.ILightSensorDataThreshold;
                [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Sensors.ILightSensorDataThreshold2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass LightSensorReading
            {
                [default] interface Windows.Devices.Sensors.ILightSensorReading;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.ILightSensorReading2;
                [contract(Windows.Foundation.UniversalApiContract, 19.0)] interface Windows.Devices.Sensors.ILightSensorReading3;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass LightSensorReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.ILightSensorReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            runtimeclass LockOnLeaveOptions
            {
                [default] interface Windows.Devices.Sensors.ILockOnLeaveOptions;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IMagnetometerStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IMagnetometerStatics2, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass Magnetometer
            {
                [default] interface Windows.Devices.Sensors.IMagnetometer;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IMagnetometerDeviceId;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IMagnetometer2;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IMagnetometer3;
                [contract(Windows.Foundation.UniversalApiContract, 10.0)] interface Windows.Devices.Sensors.IMagnetometer4;
            }

            [contract(Windows.Foundation.UniversalApiContract, 10.0)]
            [marshaling_behavior(agile)]
            runtimeclass MagnetometerDataThreshold
            {
                [default] interface Windows.Devices.Sensors.IMagnetometerDataThreshold;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass MagnetometerReading
            {
                [default] interface Windows.Devices.Sensors.IMagnetometerReading;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IMagnetometerReading2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass MagnetometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IMagnetometerReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 19.0)]
            [marshaling_behavior(agile)]
            runtimeclass OnlookerDetectionOptions
            {
                [default] interface Windows.Devices.Sensors.IOnlookerDetectionOptions;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IOrientationSensorStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IOrientationSensorStatics2, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IOrientationSensorStatics3, Windows.Foundation.UniversalApiContract, 3.0)]
            [static(Windows.Devices.Sensors.IOrientationSensorStatics4, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass OrientationSensor
            {
                [default] interface Windows.Devices.Sensors.IOrientationSensor;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IOrientationSensorDeviceId;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IOrientationSensor2;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IOrientationSensor3;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass OrientationSensorReading
            {
                [default] interface Windows.Devices.Sensors.IOrientationSensorReading;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.IOrientationSensorReadingYawAccuracy;
                [contract(Windows.Foundation.UniversalApiContract, 5.0)] interface Windows.Devices.Sensors.IOrientationSensorReading2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass OrientationSensorReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IOrientationSensorReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IPedometerStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IPedometerStatics2, Windows.Foundation.UniversalApiContract, 2.0)]
            runtimeclass Pedometer
            {
                [default] interface Windows.Devices.Sensors.IPedometer;
                [contract(Windows.Foundation.UniversalApiContract, 2.0)] interface Windows.Devices.Sensors.IPedometer2;
            }

            [activatable(Windows.Devices.Sensors.IPedometerDataThresholdFactory, Windows.Foundation.UniversalApiContract, 2.0)]
            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass PedometerDataThreshold
            {
                [default] interface Windows.Devices.Sensors.ISensorDataThreshold;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            runtimeclass PedometerReading
            {
                [default] interface Windows.Devices.Sensors.IPedometerReading;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            runtimeclass PedometerReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IPedometerReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.IProximitySensorStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.IProximitySensorStatics2, Windows.Foundation.UniversalApiContract, 2.0)]
            [threading(both)]
            runtimeclass ProximitySensor
            {
                [default] interface Windows.Devices.Sensors.IProximitySensor;
            }

            [activatable(Windows.Devices.Sensors.IProximitySensorDataThresholdFactory, Windows.Foundation.UniversalApiContract, 2.0)]
            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ProximitySensorDataThreshold
            {
                [default] interface Windows.Devices.Sensors.ISensorDataThreshold;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ProximitySensorDisplayOnOffController
            {
                [default] interface Windows.Foundation.IClosable;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ProximitySensorReading
            {
                [default] interface Windows.Devices.Sensors.IProximitySensorReading;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass ProximitySensorReadingChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.IProximitySensorReadingChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass SensorDataThresholdTriggerDetails
            {
                [default] interface Windows.Devices.Sensors.ISensorDataThresholdTriggerDetails;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass SensorQuaternion
            {
                [default] interface Windows.Devices.Sensors.ISensorQuaternion;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass SensorRotationMatrix
            {
                [default] interface Windows.Devices.Sensors.ISensorRotationMatrix;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Devices.Sensors.ISimpleOrientationSensorStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            [static(Windows.Devices.Sensors.ISimpleOrientationSensorStatics2, Windows.Foundation.UniversalApiContract, 7.0)]
            [threading(both)]
            runtimeclass SimpleOrientationSensor
            {
                [default] interface Windows.Devices.Sensors.ISimpleOrientationSensor;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.ISimpleOrientationSensorDeviceId;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Devices.Sensors.ISimpleOrientationSensor2;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass SimpleOrientationSensorOrientationChangedEventArgs
            {
                [default] interface Windows.Devices.Sensors.ISimpleOrientationSensorOrientationChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 15.0)]
            [marshaling_behavior(agile)]
            runtimeclass WakeOnApproachOptions
            {
                [default] interface Windows.Devices.Sensors.IWakeOnApproachOptions;
            }
        }
    }
}
