# WARNING: Please don't edit this file. It was generated by Python/WinRT v3.2.0

import datetime
import sys
import types
import typing
import uuid as _uuid
from builtins import property as _property

import winrt._winrt
import winrt.system
import winrt.windows.foundation as windows_foundation
import winrt.windows.foundation.collections as windows_foundation_collections
import winrt.windows.graphics as windows_graphics
import winrt.windows.storage.streams as windows_storage_streams

from winrt.windows.graphics.display import AdvancedColorKind, DisplayBrightnessOverrideOptions, DisplayBrightnessOverrideScenario, DisplayBrightnessScenario, DisplayColorOverrideScenario, DisplayOrientations, HdrMetadataFormat, ResolutionScale
from winrt.windows.graphics.display import DisplayPropertiesEventHandler

Self = typing.TypeVar('Self')

@typing.final
class NitRange:
    @_property
    def min_nits(self) -> winrt.system.Single: ...
    @_property
    def max_nits(self) -> winrt.system.Single: ...
    @_property
    def step_size_nits(self) -> winrt.system.Single: ...
    def __new__(cls, min_nits: winrt.system.Single = 0, max_nits: winrt.system.Single = 0, step_size_nits: winrt.system.Single = 0) -> NitRange: ...
    def __replace__(self, /, **changes: typing.Any) -> NitRange: ...
    def unpack(self) -> typing.Tuple[winrt.system.Single, winrt.system.Single, winrt.system.Single]: ...

@typing.final
class AdvancedColorInfo(winrt.system.Object):
    # System.Boolean Windows.Graphics.Display.AdvancedColorInfo::IsAdvancedColorKindAvailable(Windows.Graphics.Display.AdvancedColorKind)
    def is_advanced_color_kind_available(self, kind: AdvancedColorKind, /) -> bool: ...
    # System.Boolean Windows.Graphics.Display.AdvancedColorInfo::IsHdrMetadataFormatCurrentlySupported(Windows.Graphics.Display.HdrMetadataFormat)
    def is_hdr_metadata_format_currently_supported(self, format: HdrMetadataFormat, /) -> bool: ...
    # Windows.Foundation.Point Windows.Graphics.Display.AdvancedColorInfo::get_BluePrimary()
    @_property
    def blue_primary(self) -> windows_foundation.Point: ...
    # Windows.Graphics.Display.AdvancedColorKind Windows.Graphics.Display.AdvancedColorInfo::get_CurrentAdvancedColorKind()
    @_property
    def current_advanced_color_kind(self) -> AdvancedColorKind: ...
    # Windows.Foundation.Point Windows.Graphics.Display.AdvancedColorInfo::get_GreenPrimary()
    @_property
    def green_primary(self) -> windows_foundation.Point: ...
    # System.Single Windows.Graphics.Display.AdvancedColorInfo::get_MaxAverageFullFrameLuminanceInNits()
    @_property
    def max_average_full_frame_luminance_in_nits(self) -> winrt.system.Single: ...
    # System.Single Windows.Graphics.Display.AdvancedColorInfo::get_MaxLuminanceInNits()
    @_property
    def max_luminance_in_nits(self) -> winrt.system.Single: ...
    # System.Single Windows.Graphics.Display.AdvancedColorInfo::get_MinLuminanceInNits()
    @_property
    def min_luminance_in_nits(self) -> winrt.system.Single: ...
    # Windows.Foundation.Point Windows.Graphics.Display.AdvancedColorInfo::get_RedPrimary()
    @_property
    def red_primary(self) -> windows_foundation.Point: ...
    # System.Single Windows.Graphics.Display.AdvancedColorInfo::get_SdrWhiteLevelInNits()
    @_property
    def sdr_white_level_in_nits(self) -> winrt.system.Single: ...
    # Windows.Foundation.Point Windows.Graphics.Display.AdvancedColorInfo::get_WhitePoint()
    @_property
    def white_point(self) -> windows_foundation.Point: ...

@typing.final
class BrightnessOverride_Static(winrt._winrt.IInspectable_Static):
    # Windows.Graphics.Display.BrightnessOverride Windows.Graphics.Display.BrightnessOverride::GetDefaultForSystem()
    def get_default_for_system(cls) -> BrightnessOverride: ...
    # Windows.Graphics.Display.BrightnessOverride Windows.Graphics.Display.BrightnessOverride::GetForCurrentView()
    def get_for_current_view(cls) -> BrightnessOverride: ...
    # Windows.Foundation.IAsyncOperation`1<System.Boolean> Windows.Graphics.Display.BrightnessOverride::SaveForSystemAsync(Windows.Graphics.Display.BrightnessOverride)
    def save_for_system_async(cls, value: BrightnessOverride, /) -> windows_foundation.IAsyncOperation[bool]: ...

@typing.final
class BrightnessOverride(winrt.system.Object, metaclass=BrightnessOverride_Static):
    # System.Double Windows.Graphics.Display.BrightnessOverride::GetLevelForScenario(Windows.Graphics.Display.DisplayBrightnessScenario)
    def get_level_for_scenario(self, scenario: DisplayBrightnessScenario, /) -> winrt.system.Double: ...
    # System.Void Windows.Graphics.Display.BrightnessOverride::SetBrightnessLevel(System.Double,Windows.Graphics.Display.DisplayBrightnessOverrideOptions)
    def set_brightness_level(self, brightness_level: winrt.system.Double, options: DisplayBrightnessOverrideOptions, /) -> None: ...
    # System.Void Windows.Graphics.Display.BrightnessOverride::SetBrightnessScenario(Windows.Graphics.Display.DisplayBrightnessScenario,Windows.Graphics.Display.DisplayBrightnessOverrideOptions)
    def set_brightness_scenario(self, scenario: DisplayBrightnessScenario, options: DisplayBrightnessOverrideOptions, /) -> None: ...
    # System.Void Windows.Graphics.Display.BrightnessOverride::StartOverride()
    def start_override(self) -> None: ...
    # System.Void Windows.Graphics.Display.BrightnessOverride::StopOverride()
    def stop_override(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.BrightnessOverride::add_BrightnessLevelChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.BrightnessOverride,System.Object>)
    def add_brightness_level_changed(self, handler: windows_foundation.TypedEventHandler[BrightnessOverride, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.BrightnessOverride::remove_BrightnessLevelChanged(Windows.Foundation.EventRegistrationToken)
    def remove_brightness_level_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.BrightnessOverride::add_IsOverrideActiveChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.BrightnessOverride,System.Object>)
    def add_is_override_active_changed(self, handler: windows_foundation.TypedEventHandler[BrightnessOverride, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.BrightnessOverride::remove_IsOverrideActiveChanged(Windows.Foundation.EventRegistrationToken)
    def remove_is_override_active_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.BrightnessOverride::add_IsSupportedChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.BrightnessOverride,System.Object>)
    def add_is_supported_changed(self, handler: windows_foundation.TypedEventHandler[BrightnessOverride, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.BrightnessOverride::remove_IsSupportedChanged(Windows.Foundation.EventRegistrationToken)
    def remove_is_supported_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # System.Double Windows.Graphics.Display.BrightnessOverride::get_BrightnessLevel()
    @_property
    def brightness_level(self) -> winrt.system.Double: ...
    # System.Boolean Windows.Graphics.Display.BrightnessOverride::get_IsOverrideActive()
    @_property
    def is_override_active(self) -> bool: ...
    # System.Boolean Windows.Graphics.Display.BrightnessOverride::get_IsSupported()
    @_property
    def is_supported(self) -> bool: ...

@typing.final
class BrightnessOverrideSettings_Static(winrt._winrt.IInspectable_Static):
    # Windows.Graphics.Display.BrightnessOverrideSettings Windows.Graphics.Display.BrightnessOverrideSettings::CreateFromDisplayBrightnessOverrideScenario(Windows.Graphics.Display.DisplayBrightnessOverrideScenario)
    def create_from_display_brightness_override_scenario(cls, override_scenario: DisplayBrightnessOverrideScenario, /) -> BrightnessOverrideSettings: ...
    # Windows.Graphics.Display.BrightnessOverrideSettings Windows.Graphics.Display.BrightnessOverrideSettings::CreateFromLevel(System.Double)
    def create_from_level(cls, level: winrt.system.Double, /) -> BrightnessOverrideSettings: ...
    # Windows.Graphics.Display.BrightnessOverrideSettings Windows.Graphics.Display.BrightnessOverrideSettings::CreateFromNits(System.Single)
    def create_from_nits(cls, nits: winrt.system.Single, /) -> BrightnessOverrideSettings: ...

@typing.final
class BrightnessOverrideSettings(winrt.system.Object, metaclass=BrightnessOverrideSettings_Static):
    # System.Double Windows.Graphics.Display.BrightnessOverrideSettings::get_DesiredLevel()
    @_property
    def desired_level(self) -> winrt.system.Double: ...
    # System.Single Windows.Graphics.Display.BrightnessOverrideSettings::get_DesiredNits()
    @_property
    def desired_nits(self) -> winrt.system.Single: ...

@typing.final
class ColorOverrideSettings_Static(winrt._winrt.IInspectable_Static):
    # Windows.Graphics.Display.ColorOverrideSettings Windows.Graphics.Display.ColorOverrideSettings::CreateFromDisplayColorOverrideScenario(Windows.Graphics.Display.DisplayColorOverrideScenario)
    def create_from_display_color_override_scenario(cls, override_scenario: DisplayColorOverrideScenario, /) -> ColorOverrideSettings: ...

@typing.final
class ColorOverrideSettings(winrt.system.Object, metaclass=ColorOverrideSettings_Static):
    # Windows.Graphics.Display.DisplayColorOverrideScenario Windows.Graphics.Display.ColorOverrideSettings::get_DesiredDisplayColorOverrideScenario()
    @_property
    def desired_display_color_override_scenario(self) -> DisplayColorOverrideScenario: ...

@typing.final
class DisplayEnhancementOverride_Static(winrt._winrt.IInspectable_Static):
    # Windows.Graphics.Display.DisplayEnhancementOverride Windows.Graphics.Display.DisplayEnhancementOverride::GetForCurrentView()
    def get_for_current_view(cls) -> DisplayEnhancementOverride: ...

@typing.final
class DisplayEnhancementOverride(winrt.system.Object, metaclass=DisplayEnhancementOverride_Static):
    # Windows.Graphics.Display.DisplayEnhancementOverrideCapabilities Windows.Graphics.Display.DisplayEnhancementOverride::GetCurrentDisplayEnhancementOverrideCapabilities()
    def get_current_display_enhancement_override_capabilities(self) -> DisplayEnhancementOverrideCapabilities: ...
    # System.Void Windows.Graphics.Display.DisplayEnhancementOverride::RequestOverride()
    def request_override(self) -> None: ...
    # System.Void Windows.Graphics.Display.DisplayEnhancementOverride::StopOverride()
    def stop_override(self) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayEnhancementOverride::add_CanOverrideChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayEnhancementOverride,System.Object>)
    def add_can_override_changed(self, handler: windows_foundation.TypedEventHandler[DisplayEnhancementOverride, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayEnhancementOverride::remove_CanOverrideChanged(Windows.Foundation.EventRegistrationToken)
    def remove_can_override_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayEnhancementOverride::add_DisplayEnhancementOverrideCapabilitiesChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayEnhancementOverride,Windows.Graphics.Display.DisplayEnhancementOverrideCapabilitiesChangedEventArgs>)
    def add_display_enhancement_override_capabilities_changed(self, handler: windows_foundation.TypedEventHandler[DisplayEnhancementOverride, DisplayEnhancementOverrideCapabilitiesChangedEventArgs], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayEnhancementOverride::remove_DisplayEnhancementOverrideCapabilitiesChanged(Windows.Foundation.EventRegistrationToken)
    def remove_display_enhancement_override_capabilities_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayEnhancementOverride::add_IsOverrideActiveChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayEnhancementOverride,System.Object>)
    def add_is_override_active_changed(self, handler: windows_foundation.TypedEventHandler[DisplayEnhancementOverride, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayEnhancementOverride::remove_IsOverrideActiveChanged(Windows.Foundation.EventRegistrationToken)
    def remove_is_override_active_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Graphics.Display.ColorOverrideSettings Windows.Graphics.Display.DisplayEnhancementOverride::get_ColorOverrideSettings()
    @_property
    def color_override_settings(self) -> ColorOverrideSettings: ...
    # System.Void Windows.Graphics.Display.DisplayEnhancementOverride::put_ColorOverrideSettings(Windows.Graphics.Display.ColorOverrideSettings)
    @color_override_settings.setter
    def color_override_settings(self, value: ColorOverrideSettings) -> None: ...
    # Windows.Graphics.Display.BrightnessOverrideSettings Windows.Graphics.Display.DisplayEnhancementOverride::get_BrightnessOverrideSettings()
    @_property
    def brightness_override_settings(self) -> BrightnessOverrideSettings: ...
    # System.Void Windows.Graphics.Display.DisplayEnhancementOverride::put_BrightnessOverrideSettings(Windows.Graphics.Display.BrightnessOverrideSettings)
    @brightness_override_settings.setter
    def brightness_override_settings(self, value: BrightnessOverrideSettings) -> None: ...
    # System.Boolean Windows.Graphics.Display.DisplayEnhancementOverride::get_CanOverride()
    @_property
    def can_override(self) -> bool: ...
    # System.Boolean Windows.Graphics.Display.DisplayEnhancementOverride::get_IsOverrideActive()
    @_property
    def is_override_active(self) -> bool: ...

@typing.final
class DisplayEnhancementOverrideCapabilities(winrt.system.Object):
    # Windows.Foundation.Collections.IVectorView`1<Windows.Graphics.Display.NitRange> Windows.Graphics.Display.DisplayEnhancementOverrideCapabilities::GetSupportedNitRanges()
    def get_supported_nit_ranges(self) -> typing.Sequence[NitRange]: ...
    # System.Boolean Windows.Graphics.Display.DisplayEnhancementOverrideCapabilities::get_IsBrightnessControlSupported()
    @_property
    def is_brightness_control_supported(self) -> bool: ...
    # System.Boolean Windows.Graphics.Display.DisplayEnhancementOverrideCapabilities::get_IsBrightnessNitsControlSupported()
    @_property
    def is_brightness_nits_control_supported(self) -> bool: ...

@typing.final
class DisplayEnhancementOverrideCapabilitiesChangedEventArgs(winrt.system.Object):
    # Windows.Graphics.Display.DisplayEnhancementOverrideCapabilities Windows.Graphics.Display.DisplayEnhancementOverrideCapabilitiesChangedEventArgs::get_Capabilities()
    @_property
    def capabilities(self) -> DisplayEnhancementOverrideCapabilities: ...

@typing.final
class DisplayInformation_Static(winrt._winrt.IInspectable_Static):
    # Windows.Graphics.Display.DisplayInformation Windows.Graphics.Display.DisplayInformation::GetForCurrentView()
    def get_for_current_view(cls) -> DisplayInformation: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayInformation::add_DisplayContentsInvalidated(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayInformation,System.Object>)
    def add_display_contents_invalidated(cls, handler: windows_foundation.TypedEventHandler[DisplayInformation, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayInformation::remove_DisplayContentsInvalidated(Windows.Foundation.EventRegistrationToken)
    def remove_display_contents_invalidated(cls, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Graphics.Display.DisplayOrientations Windows.Graphics.Display.DisplayInformation::get_AutoRotationPreferences()
    @_property
    def auto_rotation_preferences(cls) -> DisplayOrientations: ...
    # System.Void Windows.Graphics.Display.DisplayInformation::put_AutoRotationPreferences(Windows.Graphics.Display.DisplayOrientations)
    @auto_rotation_preferences.setter
    def auto_rotation_preferences(cls, value: DisplayOrientations) -> None: ...

@typing.final
class DisplayInformation(winrt.system.Object, metaclass=DisplayInformation_Static):
    # Windows.Graphics.Display.AdvancedColorInfo Windows.Graphics.Display.DisplayInformation::GetAdvancedColorInfo()
    def get_advanced_color_info(self) -> AdvancedColorInfo: ...
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IRandomAccessStream> Windows.Graphics.Display.DisplayInformation::GetColorProfileAsync()
    def get_color_profile_async(self) -> windows_foundation.IAsyncOperation[windows_storage_streams.IRandomAccessStream]: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayInformation::add_ColorProfileChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayInformation,System.Object>)
    def add_color_profile_changed(self, handler: windows_foundation.TypedEventHandler[DisplayInformation, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayInformation::remove_ColorProfileChanged(Windows.Foundation.EventRegistrationToken)
    def remove_color_profile_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayInformation::add_DpiChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayInformation,System.Object>)
    def add_dpi_changed(self, handler: windows_foundation.TypedEventHandler[DisplayInformation, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayInformation::remove_DpiChanged(Windows.Foundation.EventRegistrationToken)
    def remove_dpi_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayInformation::add_OrientationChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayInformation,System.Object>)
    def add_orientation_changed(self, handler: windows_foundation.TypedEventHandler[DisplayInformation, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayInformation::remove_OrientationChanged(Windows.Foundation.EventRegistrationToken)
    def remove_orientation_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayInformation::add_StereoEnabledChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayInformation,System.Object>)
    def add_stereo_enabled_changed(self, handler: windows_foundation.TypedEventHandler[DisplayInformation, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayInformation::remove_StereoEnabledChanged(Windows.Foundation.EventRegistrationToken)
    def remove_stereo_enabled_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayInformation::add_AdvancedColorInfoChanged(Windows.Foundation.TypedEventHandler`2<Windows.Graphics.Display.DisplayInformation,System.Object>)
    def add_advanced_color_info_changed(self, handler: windows_foundation.TypedEventHandler[DisplayInformation, winrt.system.Object], /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayInformation::remove_AdvancedColorInfoChanged(Windows.Foundation.EventRegistrationToken)
    def remove_advanced_color_info_changed(self, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Graphics.Display.DisplayOrientations Windows.Graphics.Display.DisplayInformation::get_CurrentOrientation()
    @_property
    def current_orientation(self) -> DisplayOrientations: ...
    # System.Single Windows.Graphics.Display.DisplayInformation::get_LogicalDpi()
    @_property
    def logical_dpi(self) -> winrt.system.Single: ...
    # Windows.Graphics.Display.DisplayOrientations Windows.Graphics.Display.DisplayInformation::get_NativeOrientation()
    @_property
    def native_orientation(self) -> DisplayOrientations: ...
    # System.Single Windows.Graphics.Display.DisplayInformation::get_RawDpiX()
    @_property
    def raw_dpi_x(self) -> winrt.system.Single: ...
    # System.Single Windows.Graphics.Display.DisplayInformation::get_RawDpiY()
    @_property
    def raw_dpi_y(self) -> winrt.system.Single: ...
    # Windows.Graphics.Display.ResolutionScale Windows.Graphics.Display.DisplayInformation::get_ResolutionScale()
    @_property
    def resolution_scale(self) -> ResolutionScale: ...
    # System.Boolean Windows.Graphics.Display.DisplayInformation::get_StereoEnabled()
    @_property
    def stereo_enabled(self) -> bool: ...
    # System.Double Windows.Graphics.Display.DisplayInformation::get_RawPixelsPerViewPixel()
    @_property
    def raw_pixels_per_view_pixel(self) -> winrt.system.Double: ...
    # Windows.Foundation.IReference`1<System.Double> Windows.Graphics.Display.DisplayInformation::get_DiagonalSizeInInches()
    @_property
    def diagonal_size_in_inches(self) -> typing.Optional[winrt.system.Double]: ...
    # System.UInt32 Windows.Graphics.Display.DisplayInformation::get_ScreenHeightInRawPixels()
    @_property
    def screen_height_in_raw_pixels(self) -> winrt.system.UInt32: ...
    # System.UInt32 Windows.Graphics.Display.DisplayInformation::get_ScreenWidthInRawPixels()
    @_property
    def screen_width_in_raw_pixels(self) -> winrt.system.UInt32: ...

@typing.final
class DisplayProperties_Static(winrt._winrt.IInspectable_Static):
    # Windows.Foundation.IAsyncOperation`1<Windows.Storage.Streams.IRandomAccessStream> Windows.Graphics.Display.DisplayProperties::GetColorProfileAsync()
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def get_color_profile_async(cls) -> windows_foundation.IAsyncOperation[windows_storage_streams.IRandomAccessStream]: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayProperties::add_ColorProfileChanged(Windows.Graphics.Display.DisplayPropertiesEventHandler)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def add_color_profile_changed(cls, handler: DisplayPropertiesEventHandler, /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayProperties::remove_ColorProfileChanged(Windows.Foundation.EventRegistrationToken)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def remove_color_profile_changed(cls, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayProperties::add_DisplayContentsInvalidated(Windows.Graphics.Display.DisplayPropertiesEventHandler)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def add_display_contents_invalidated(cls, handler: DisplayPropertiesEventHandler, /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayProperties::remove_DisplayContentsInvalidated(Windows.Foundation.EventRegistrationToken)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def remove_display_contents_invalidated(cls, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayProperties::add_LogicalDpiChanged(Windows.Graphics.Display.DisplayPropertiesEventHandler)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def add_logical_dpi_changed(cls, handler: DisplayPropertiesEventHandler, /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayProperties::remove_LogicalDpiChanged(Windows.Foundation.EventRegistrationToken)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def remove_logical_dpi_changed(cls, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayProperties::add_OrientationChanged(Windows.Graphics.Display.DisplayPropertiesEventHandler)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def add_orientation_changed(cls, handler: DisplayPropertiesEventHandler, /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayProperties::remove_OrientationChanged(Windows.Foundation.EventRegistrationToken)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def remove_orientation_changed(cls, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Foundation.EventRegistrationToken Windows.Graphics.Display.DisplayProperties::add_StereoEnabledChanged(Windows.Graphics.Display.DisplayPropertiesEventHandler)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def add_stereo_enabled_changed(cls, handler: DisplayPropertiesEventHandler, /) -> windows_foundation.EventRegistrationToken: ...
    # System.Void Windows.Graphics.Display.DisplayProperties::remove_StereoEnabledChanged(Windows.Foundation.EventRegistrationToken)
    # @deprecated("DisplayProperties may be altered or unavailable for releases after Windows Phone 8.1. Instead, use DisplayInformation.")
    def remove_stereo_enabled_changed(cls, token: typing.Union[windows_foundation.EventRegistrationToken, typing.Tuple[winrt.system.Int64]], /) -> None: ...
    # Windows.Graphics.Display.DisplayOrientations Windows.Graphics.Display.DisplayProperties::get_AutoRotationPreferences()
    @_property
    def auto_rotation_preferences(cls) -> DisplayOrientations: ...
    # System.Void Windows.Graphics.Display.DisplayProperties::put_AutoRotationPreferences(Windows.Graphics.Display.DisplayOrientations)
    @auto_rotation_preferences.setter
    def auto_rotation_preferences(cls, value: DisplayOrientations) -> None: ...
    # Windows.Graphics.Display.DisplayOrientations Windows.Graphics.Display.DisplayProperties::get_CurrentOrientation()
    @_property
    def current_orientation(cls) -> DisplayOrientations: ...
    # System.Single Windows.Graphics.Display.DisplayProperties::get_LogicalDpi()
    @_property
    def logical_dpi(cls) -> winrt.system.Single: ...
    # Windows.Graphics.Display.DisplayOrientations Windows.Graphics.Display.DisplayProperties::get_NativeOrientation()
    @_property
    def native_orientation(cls) -> DisplayOrientations: ...
    # Windows.Graphics.Display.ResolutionScale Windows.Graphics.Display.DisplayProperties::get_ResolutionScale()
    @_property
    def resolution_scale(cls) -> ResolutionScale: ...
    # System.Boolean Windows.Graphics.Display.DisplayProperties::get_StereoEnabled()
    @_property
    def stereo_enabled(cls) -> bool: ...

@typing.final
class DisplayProperties(winrt.system.Object, metaclass=DisplayProperties_Static):
    pass

@typing.final
class DisplayServices_Static(winrt._winrt.IInspectable_Static):
    # Windows.Graphics.DisplayId[] Windows.Graphics.Display.DisplayServices::FindAll()
    def find_all(cls) -> winrt.system.Array[windows_graphics.DisplayId]: ...

@typing.final
class DisplayServices(winrt.system.Object, metaclass=DisplayServices_Static):
    pass

