//
// 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.idl";
import "Windows.Storage.Streams.idl";

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

        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace Graphics
    {
        typedef struct DisplayId DisplayId;
    }
}
namespace Windows
{
    namespace Storage
    {
        namespace Streams
        {
            interface IRandomAccessStream;
        }
    }
}
namespace Windows
{
    namespace Graphics
    {
        namespace Display
        {
            typedef enum AdvancedColorKind AdvancedColorKind;

            typedef enum DisplayBrightnessOverrideOptions DisplayBrightnessOverrideOptions;

            typedef enum DisplayBrightnessOverrideScenario DisplayBrightnessOverrideScenario;

            typedef enum DisplayBrightnessScenario DisplayBrightnessScenario;

            typedef enum DisplayColorOverrideScenario DisplayColorOverrideScenario;

            typedef enum DisplayOrientations DisplayOrientations;

            typedef enum HdrMetadataFormat HdrMetadataFormat;

            typedef enum ResolutionScale ResolutionScale;

            typedef struct NitRange NitRange;

            delegate DisplayPropertiesEventHandler;

            interface IAdvancedColorInfo;

            interface IBrightnessOverride;

            interface IBrightnessOverrideSettings;

            interface IBrightnessOverrideSettingsStatics;

            interface IBrightnessOverrideStatics;

            interface IColorOverrideSettings;

            interface IColorOverrideSettingsStatics;

            interface IDisplayEnhancementOverride;

            interface IDisplayEnhancementOverrideCapabilities;

            interface IDisplayEnhancementOverrideCapabilitiesChangedEventArgs;

            interface IDisplayEnhancementOverrideStatics;

            interface IDisplayInformation;

            interface IDisplayInformation2;

            interface IDisplayInformation3;

            interface IDisplayInformation4;

            interface IDisplayInformation5;

            interface IDisplayInformationStatics;

            interface IDisplayPropertiesStatics;

            interface IDisplayServices;

            interface IDisplayServicesStatics;

            runtimeclass AdvancedColorInfo;

            runtimeclass BrightnessOverride;

            runtimeclass BrightnessOverrideSettings;

            runtimeclass ColorOverrideSettings;

            runtimeclass DisplayEnhancementOverride;

            runtimeclass DisplayEnhancementOverrideCapabilities;

            runtimeclass DisplayEnhancementOverrideCapabilitiesChangedEventArgs;

            runtimeclass DisplayInformation;

            runtimeclass DisplayProperties;

            runtimeclass DisplayServices;
        }
    }
}

// Generic instantiations
namespace Windows
{
    namespace Graphics
    {
        namespace Display
        {
            declare
            {
                interface Windows.Foundation.Collections.IIterable<Windows.Graphics.Display.NitRange>;

                interface Windows.Foundation.Collections.IIterator<Windows.Graphics.Display.NitRange>;

                interface Windows.Foundation.Collections.IVectorView<Windows.Graphics.Display.NitRange>;

                interface Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.BrightnessOverride*, IInspectable*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayEnhancementOverride*, IInspectable*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayEnhancementOverride*, Windows.Graphics.Display.DisplayEnhancementOverrideCapabilitiesChangedEventArgs*>;

                interface Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayInformation*, IInspectable*>;
            }
        }
    }
}

// Type definition
namespace Windows
{
    namespace Graphics
    {
        namespace Display
        {
            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            enum AdvancedColorKind
            {
                StandardDynamicRange = 0,
                WideColorGamut       = 1,
                HighDynamicRange     = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [flags]
            enum DisplayBrightnessOverrideOptions
            {
                None                            = 0x0,
                UseDimmedPolicyWhenBatteryIsLow = 0x1
            };

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            enum DisplayBrightnessOverrideScenario
            {
                IdleBrightness           = 0,
                BarcodeReadingBrightness = 1,
                FullBrightness           = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum DisplayBrightnessScenario
            {
                DefaultBrightness        = 0,
                IdleBrightness           = 1,
                BarcodeReadingBrightness = 2,
                FullBrightness           = 3
            };

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            enum DisplayColorOverrideScenario
            {
                Accurate = 0
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [flags]
            enum DisplayOrientations
            {
                None             = 0x0,
                Landscape        = 0x1,
                Portrait         = 0x2,
                LandscapeFlipped = 0x4,
                PortraitFlipped  = 0x8
            };

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            enum HdrMetadataFormat
            {
                Hdr10     = 0,
                Hdr10Plus = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            enum ResolutionScale
            {
                Invalid         = 0,
                Scale100Percent = 100,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale120Percent = 120,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale125Percent = 125,
                Scale140Percent = 140,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale150Percent = 150,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale160Percent = 160,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale175Percent = 175,
                Scale180Percent = 180,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale200Percent = 200,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale225Percent = 225,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale250Percent = 250,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale300Percent = 300,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale350Percent = 350,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale400Percent = 400,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale450Percent = 450,
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                Scale500Percent = 500
            };

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            struct NitRange
            {
                FLOAT MinNits;
                FLOAT MaxNits;
                FLOAT StepSizeNits;
            };

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)]
            [uuid(DBDD8B01-F1A1-46D1-9EE3-543BCC995980)]
            delegate
                HRESULT DisplayPropertiesEventHandler([in] IInspectable* sender);

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.AdvancedColorInfo)]
            [uuid(8797DCFB-B229-4081-AE9A-2CC85E34AD6A)]
            interface IAdvancedColorInfo : IInspectable
            {
                [propget] HRESULT CurrentAdvancedColorKind([out] [retval] Windows.Graphics.Display.AdvancedColorKind* value);
                [propget] HRESULT RedPrimary([out] [retval] Windows.Foundation.Point* value);
                [propget] HRESULT GreenPrimary([out] [retval] Windows.Foundation.Point* value);
                [propget] HRESULT BluePrimary([out] [retval] Windows.Foundation.Point* value);
                [propget] HRESULT WhitePoint([out] [retval] Windows.Foundation.Point* value);
                [propget] HRESULT MaxLuminanceInNits([out] [retval] FLOAT* value);
                [propget] HRESULT MinLuminanceInNits([out] [retval] FLOAT* value);
                [propget] HRESULT MaxAverageFullFrameLuminanceInNits([out] [retval] FLOAT* value);
                [propget] HRESULT SdrWhiteLevelInNits([out] [retval] FLOAT* value);
                HRESULT IsHdrMetadataFormatCurrentlySupported([in] Windows.Graphics.Display.HdrMetadataFormat format, [out] [retval] boolean* result);
                HRESULT IsAdvancedColorKindAvailable([in] Windows.Graphics.Display.AdvancedColorKind kind, [out] [retval] boolean* result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.Graphics.Display.BrightnessOverride)]
            [uuid(96C9621A-C143-4392-BEDD-4A7E9574C8FD)]
            interface IBrightnessOverride : IInspectable
            {
                [propget] HRESULT IsSupported([out] [retval] boolean* value);
                [propget] HRESULT IsOverrideActive([out] [retval] boolean* value);
                [propget] HRESULT BrightnessLevel([out] [retval] DOUBLE* level);
                HRESULT SetBrightnessLevel([in] DOUBLE brightnessLevel, [in] Windows.Graphics.Display.DisplayBrightnessOverrideOptions options);
                HRESULT SetBrightnessScenario([in] Windows.Graphics.Display.DisplayBrightnessScenario scenario, [in] Windows.Graphics.Display.DisplayBrightnessOverrideOptions options);
                HRESULT GetLevelForScenario([in] Windows.Graphics.Display.DisplayBrightnessScenario scenario, [out] [retval] DOUBLE* brightnessLevel);
                HRESULT StartOverride();
                HRESULT StopOverride();
                [eventadd] HRESULT IsSupportedChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.BrightnessOverride*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT IsSupportedChanged([in] EventRegistrationToken token);
                [eventadd] HRESULT IsOverrideActiveChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.BrightnessOverride*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT IsOverrideActiveChanged([in] EventRegistrationToken token);
                [eventadd] HRESULT BrightnessLevelChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.BrightnessOverride*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT BrightnessLevelChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.BrightnessOverrideSettings)]
            [uuid(D112AB2A-7604-4DBA-BCF8-4B6F49502CB0)]
            interface IBrightnessOverrideSettings : IInspectable
            {
                [propget] HRESULT DesiredLevel([out] [retval] DOUBLE* value);
                [propget] HRESULT DesiredNits([out] [retval] FLOAT* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.BrightnessOverrideSettings)]
            [uuid(D487DC90-6F74-440B-B383-5FE96CF00B0F)]
            interface IBrightnessOverrideSettingsStatics : IInspectable
            {
                HRESULT CreateFromLevel([in] DOUBLE level, [out] [retval] Windows.Graphics.Display.BrightnessOverrideSettings** result);
                HRESULT CreateFromNits([in] FLOAT nits, [out] [retval] Windows.Graphics.Display.BrightnessOverrideSettings** result);
                HRESULT CreateFromDisplayBrightnessOverrideScenario([in] Windows.Graphics.Display.DisplayBrightnessOverrideScenario overrideScenario, [out] [retval] Windows.Graphics.Display.BrightnessOverrideSettings** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.Graphics.Display.BrightnessOverride)]
            [uuid(03A7B9ED-E1F1-4A68-A11F-946AD8CE5393)]
            interface IBrightnessOverrideStatics : IInspectable
            {
                HRESULT GetDefaultForSystem([out] [retval] Windows.Graphics.Display.BrightnessOverride** value);
                HRESULT GetForCurrentView([out] [retval] Windows.Graphics.Display.BrightnessOverride** value);
                HRESULT SaveForSystemAsync([in] Windows.Graphics.Display.BrightnessOverride* value, [out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.ColorOverrideSettings)]
            [uuid(FBEFA134-4A81-4C4D-A5B6-7D1B5C4BD00B)]
            interface IColorOverrideSettings : IInspectable
            {
                [propget] HRESULT DesiredDisplayColorOverrideScenario([out] [retval] Windows.Graphics.Display.DisplayColorOverrideScenario* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.ColorOverrideSettings)]
            [uuid(B068E05F-C41F-4AC9-AFAB-827AB6248F9A)]
            interface IColorOverrideSettingsStatics : IInspectable
            {
                HRESULT CreateFromDisplayColorOverrideScenario([in] Windows.Graphics.Display.DisplayColorOverrideScenario overrideScenario, [out] [retval] Windows.Graphics.Display.ColorOverrideSettings** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayEnhancementOverride)]
            [uuid(429594CF-D97A-4B02-A428-5C4292F7F522)]
            interface IDisplayEnhancementOverride : IInspectable
            {
                [propget] HRESULT ColorOverrideSettings([out] [retval] Windows.Graphics.Display.ColorOverrideSettings** value);
                [propput] HRESULT ColorOverrideSettings([in] Windows.Graphics.Display.ColorOverrideSettings* value);
                [propget] HRESULT BrightnessOverrideSettings([out] [retval] Windows.Graphics.Display.BrightnessOverrideSettings** value);
                [propput] HRESULT BrightnessOverrideSettings([in] Windows.Graphics.Display.BrightnessOverrideSettings* value);
                [propget] HRESULT CanOverride([out] [retval] boolean* value);
                [propget] HRESULT IsOverrideActive([out] [retval] boolean* value);
                HRESULT GetCurrentDisplayEnhancementOverrideCapabilities([out] [retval] Windows.Graphics.Display.DisplayEnhancementOverrideCapabilities** value);
                HRESULT RequestOverride();
                HRESULT StopOverride();
                [eventadd] HRESULT CanOverrideChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayEnhancementOverride*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT CanOverrideChanged([in] EventRegistrationToken token);
                [eventadd] HRESULT IsOverrideActiveChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayEnhancementOverride*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT IsOverrideActiveChanged([in] EventRegistrationToken token);
                [eventadd] HRESULT DisplayEnhancementOverrideCapabilitiesChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayEnhancementOverride*, Windows.Graphics.Display.DisplayEnhancementOverrideCapabilitiesChangedEventArgs*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT DisplayEnhancementOverrideCapabilitiesChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayEnhancementOverrideCapabilities)]
            [uuid(457060DE-EE5A-47B7-9918-1E51E812CCC8)]
            interface IDisplayEnhancementOverrideCapabilities : IInspectable
            {
                [propget] HRESULT IsBrightnessControlSupported([out] [retval] boolean* value);
                [propget] HRESULT IsBrightnessNitsControlSupported([out] [retval] boolean* value);
                HRESULT GetSupportedNitRanges([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.Graphics.Display.NitRange>** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayEnhancementOverrideCapabilitiesChangedEventArgs)]
            [uuid(DB61E664-15FA-49DA-8B77-07DBD2AF585D)]
            interface IDisplayEnhancementOverrideCapabilitiesChangedEventArgs : IInspectable
            {
                [propget] HRESULT Capabilities([out] [retval] Windows.Graphics.Display.DisplayEnhancementOverrideCapabilities** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayEnhancementOverride)]
            [uuid(CF5B7EC1-9791-4453-B013-29B6F778E519)]
            interface IDisplayEnhancementOverrideStatics : IInspectable
            {
                HRESULT GetForCurrentView([out] [retval] Windows.Graphics.Display.DisplayEnhancementOverride** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayInformation)]
            [uuid(BED112AE-ADC3-4DC9-AE65-851F4D7D4799)]
            interface IDisplayInformation : IInspectable
            {
                [propget] HRESULT CurrentOrientation([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
                [propget] HRESULT NativeOrientation([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
                [eventadd] HRESULT OrientationChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayInformation*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT OrientationChanged([in] EventRegistrationToken token);
                [propget] HRESULT ResolutionScale([out] [retval] Windows.Graphics.Display.ResolutionScale* value);
                [propget] HRESULT LogicalDpi([out] [retval] FLOAT* value);
                [propget] HRESULT RawDpiX([out] [retval] FLOAT* value);
                [propget] HRESULT RawDpiY([out] [retval] FLOAT* value);
                [eventadd] HRESULT DpiChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayInformation*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT DpiChanged([in] EventRegistrationToken token);
                [propget] HRESULT StereoEnabled([out] [retval] boolean* value);
                [eventadd] HRESULT StereoEnabledChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayInformation*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT StereoEnabledChanged([in] EventRegistrationToken token);
                HRESULT GetColorProfileAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Storage.Streams.IRandomAccessStream*>** asyncInfo);
                [eventadd] HRESULT ColorProfileChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayInformation*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT ColorProfileChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayInformation)]
            [uuid(4DCD0021-FAD1-4B8E-8EDF-775887B8BF19)]
            interface IDisplayInformation2 : IInspectable
                requires
                    Windows.Graphics.Display.IDisplayInformation
            {
                [propget] HRESULT RawPixelsPerViewPixel([out] [retval] DOUBLE* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 2.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayInformation)]
            [uuid(DB15011D-0F09-4466-8FF3-11DE9A3C929A)]
            interface IDisplayInformation3 : IInspectable
            {
                [propget] HRESULT DiagonalSizeInInches([out] [retval] Windows.Foundation.IReference<DOUBLE>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 3.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayInformation)]
            [uuid(C972CE2F-1242-46BE-B536-E1AAFE9E7ACF)]
            interface IDisplayInformation4 : IInspectable
            {
                [propget] HRESULT ScreenWidthInRawPixels([out] [retval] UINT32* value);
                [propget] HRESULT ScreenHeightInRawPixels([out] [retval] UINT32* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayInformation)]
            [uuid(3A5442DC-2CDE-4A8D-80D1-21DC5ADCC1AA)]
            interface IDisplayInformation5 : IInspectable
            {
                HRESULT GetAdvancedColorInfo([out] [retval] Windows.Graphics.Display.AdvancedColorInfo** value);
                [eventadd] HRESULT AdvancedColorInfoChanged([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayInformation*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT AdvancedColorInfoChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayInformation)]
            [uuid(C6A02A6C-D452-44DC-BA07-96F3C6ADF9D1)]
            interface IDisplayInformationStatics : IInspectable
            {
                HRESULT GetForCurrentView([out] [retval] Windows.Graphics.Display.DisplayInformation** current);
                [propget] HRESULT AutoRotationPreferences([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
                [propput] HRESULT AutoRotationPreferences([in] Windows.Graphics.Display.DisplayOrientations value);
                [eventadd] HRESULT DisplayContentsInvalidated([in] Windows.Foundation.TypedEventHandler<Windows.Graphics.Display.DisplayInformation*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT DisplayContentsInvalidated([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayProperties)]
            [uuid(6937ED8D-30EA-4DED-8271-4553FF02F68A)]
            interface IDisplayPropertiesStatics : IInspectable
            {
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propget] HRESULT CurrentOrientation([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propget] HRESULT NativeOrientation([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propget] HRESULT AutoRotationPreferences([out] [retval] Windows.Graphics.Display.DisplayOrientations* value);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propput] HRESULT AutoRotationPreferences([in] Windows.Graphics.Display.DisplayOrientations value);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventadd] HRESULT OrientationChanged([in] Windows.Graphics.Display.DisplayPropertiesEventHandler* handler, [out] [retval] EventRegistrationToken* token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventremove] HRESULT OrientationChanged([in] EventRegistrationToken token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propget] HRESULT ResolutionScale([out] [retval] Windows.Graphics.Display.ResolutionScale* value);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propget] HRESULT LogicalDpi([out] [retval] FLOAT* value);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventadd] HRESULT LogicalDpiChanged([in] Windows.Graphics.Display.DisplayPropertiesEventHandler* handler, [out] [retval] EventRegistrationToken* token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventremove] HRESULT LogicalDpiChanged([in] EventRegistrationToken token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [propget] HRESULT StereoEnabled([out] [retval] boolean* value);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventadd] HRESULT StereoEnabledChanged([in] Windows.Graphics.Display.DisplayPropertiesEventHandler* handler, [out] [retval] EventRegistrationToken* token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventremove] HRESULT StereoEnabledChanged([in] EventRegistrationToken token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] HRESULT GetColorProfileAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Storage.Streams.IRandomAccessStream*>** asyncInfo);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventadd] HRESULT ColorProfileChanged([in] Windows.Graphics.Display.DisplayPropertiesEventHandler* handler, [out] [retval] EventRegistrationToken* token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventremove] HRESULT ColorProfileChanged([in] EventRegistrationToken token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventadd] HRESULT DisplayContentsInvalidated([in] Windows.Graphics.Display.DisplayPropertiesEventHandler* handler, [out] [retval] EventRegistrationToken* token);
                [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)] [eventremove] HRESULT DisplayContentsInvalidated([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 12.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayServices)]
            [uuid(1B54F32B-890D-5747-BD26-FDBDEB0C8A71)]
            interface IDisplayServices : IInspectable
            {
            }

            [contract(Windows.Foundation.UniversalApiContract, 12.0)]
            [exclusiveto(Windows.Graphics.Display.DisplayServices)]
            [uuid(DC2096BF-730A-5560-B461-91C13D692E0C)]
            interface IDisplayServicesStatics : IInspectable
            {
                HRESULT FindAll([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.Graphics.DisplayId** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass AdvancedColorInfo
            {
                [default] interface Windows.Graphics.Display.IAdvancedColorInfo;
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Graphics.Display.IBrightnessOverrideStatics, Windows.Foundation.UniversalApiContract, 4.0)]
            [threading(both)]
            runtimeclass BrightnessOverride
            {
                [default] interface Windows.Graphics.Display.IBrightnessOverride;
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Graphics.Display.IBrightnessOverrideSettingsStatics, Windows.Foundation.UniversalApiContract, 6.0)]
            [threading(both)]
            runtimeclass BrightnessOverrideSettings
            {
                [default] interface Windows.Graphics.Display.IBrightnessOverrideSettings;
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Graphics.Display.IColorOverrideSettingsStatics, Windows.Foundation.UniversalApiContract, 6.0)]
            [threading(both)]
            runtimeclass ColorOverrideSettings
            {
                [default] interface Windows.Graphics.Display.IColorOverrideSettings;
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Graphics.Display.IDisplayEnhancementOverrideStatics, Windows.Foundation.UniversalApiContract, 6.0)]
            [threading(both)]
            runtimeclass DisplayEnhancementOverride
            {
                [default] interface Windows.Graphics.Display.IDisplayEnhancementOverride;
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass DisplayEnhancementOverrideCapabilities
            {
                [default] interface Windows.Graphics.Display.IDisplayEnhancementOverrideCapabilities;
            }

            [contract(Windows.Foundation.UniversalApiContract, 6.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass DisplayEnhancementOverrideCapabilitiesChangedEventArgs
            {
                [default] interface Windows.Graphics.Display.IDisplayEnhancementOverrideCapabilitiesChangedEventArgs;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Graphics.Display.IDisplayInformationStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            runtimeclass DisplayInformation
            {
                [default] interface Windows.Graphics.Display.IDisplayInformation;
                [contract(Windows.Foundation.UniversalApiContract, 1.0)] interface Windows.Graphics.Display.IDisplayInformation2;
                [contract(Windows.Foundation.UniversalApiContract, 2.0)] interface Windows.Graphics.Display.IDisplayInformation3;
                [contract(Windows.Foundation.UniversalApiContract, 3.0)] interface Windows.Graphics.Display.IDisplayInformation4;
                [contract(Windows.Foundation.UniversalApiContract, 6.0)] interface Windows.Graphics.Display.IDisplayInformation5;
            }

            [contract(Windows.Foundation.UniversalApiContract, 1.0)]
            [deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.", deprecate, Windows.Foundation.UniversalApiContract, 1.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Graphics.Display.IDisplayPropertiesStatics, Windows.Foundation.UniversalApiContract, 1.0)]
            runtimeclass DisplayProperties
            {
            }

            [contract(Windows.Foundation.UniversalApiContract, 12.0)]
            [marshaling_behavior(agile)]
            [static(Windows.Graphics.Display.IDisplayServicesStatics, Windows.Foundation.UniversalApiContract, 12.0)]
            [threading(both)]
            runtimeclass DisplayServices
            {
                [default] interface Windows.Graphics.Display.IDisplayServices;
            }
        }
    }
}
