# WARNING: Please don't edit this file. It was generated by Python/WinRT v2.0.0-beta.2

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.microsoft.ui
import winrt.microsoft.ui.composition
import winrt.microsoft.ui.dispatching
import winrt.windows.foundation
import winrt.windows.foundation.collections
import winrt.windows.foundation.numerics
import winrt.windows.graphics
import winrt.windows.ui.composition

from winrt.microsoft.ui.content import ContentCoordinateRoundingMode, ContentLayoutDirection, ContentSizePolicy

Self = typing.TypeVar('Self')

@typing.final
class ContentCoordinateConverter_Static(type):
    def create_for_window_id(cls, window_id: winrt.microsoft.ui.WindowId, /) -> typing.Optional[ContentCoordinateConverter]: ...

@typing.final
class ContentCoordinateConverter(winrt.system.Object, metaclass=ContentCoordinateConverter_Static):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentCoordinateConverter: ...
    @typing.overload
    def convert_local_to_screen(self, local_point: winrt.windows.foundation.Point, /) -> winrt.windows.graphics.PointInt32: ...
    @typing.overload
    def convert_local_to_screen(self, local_points: winrt.system.Array[winrt.windows.foundation.Point], rounding_mode: ContentCoordinateRoundingMode, /) -> winrt.windows.graphics.PointInt32: ...
    def convert_screen_to_local(self, screen_point: winrt.windows.graphics.PointInt32, /) -> winrt.windows.foundation.Point: ...

@typing.final
class ContentDeferral(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentDeferral: ...
    def complete(self) -> None: ...

@typing.final
class ContentEnvironmentSettingChangedEventArgs(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentEnvironmentSettingChangedEventArgs: ...
    @_property
    def setting_name(self) -> str: ...

@typing.final
class ContentEnvironmentStateChangedEventArgs(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentEnvironmentStateChangedEventArgs: ...
    @_property
    def did_app_window_id_change(self) -> bool: ...
    @_property
    def did_display_id_change(self) -> bool: ...

@typing.final
class ContentIsland_Static(type):
    def create(cls, root: typing.Optional[winrt.microsoft.ui.composition.Visual], /) -> typing.Optional[ContentIsland]: ...
    def find_all_for_compositor(cls, compositor: typing.Optional[winrt.microsoft.ui.composition.Compositor], /) -> typing.Optional[ContentIsland]: ...
    def find_all_for_current_thread(cls) -> typing.Optional[ContentIsland]: ...
    def get_by_visual(cls, child: typing.Optional[winrt.microsoft.ui.composition.Visual], /) -> typing.Optional[ContentIsland]: ...
    def get_from_id(cls, id: winrt.system.UInt64, /) -> typing.Optional[ContentIsland]: ...

@typing.final
class ContentIsland(winrt.system.Object, metaclass=ContentIsland_Static):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, *args) -> None: ...
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentIsland: ...
    def close(self) -> None: ...
    def get_automation_host_provider(self) -> typing.Optional[winrt.system.Object]: ...
    def get_state_change_deferral(self) -> typing.Optional[ContentDeferral]: ...
    def request_size(self, size: winrt.windows.foundation.numerics.Vector2, /) -> None: ...
    def add_automation_provider_requested(self, handler: winrt.windows.foundation.TypedEventHandler[ContentIsland, ContentIslandAutomationProviderRequestedEventArgs], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_automation_provider_requested(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    def add_state_changed(self, handler: winrt.windows.foundation.TypedEventHandler[ContentIsland, ContentIslandStateChangedEventArgs], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_state_changed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    def add_closed(self, handler: typing.Optional[winrt.microsoft.ui.ClosableNotifierHandler], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_closed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    def add_framework_closed(self, handler: typing.Optional[winrt.microsoft.ui.ClosableNotifierHandler], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_framework_closed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    @_property
    def system_backdrop(self) -> typing.Optional[winrt.windows.ui.composition.CompositionBrush]: ...
    @system_backdrop.setter
    def system_backdrop(self, value: typing.Optional[winrt.windows.ui.composition.CompositionBrush]) -> None: ...
    @_property
    def is_island_visible(self) -> bool: ...
    @is_island_visible.setter
    def is_island_visible(self, value: bool) -> None: ...
    @_property
    def is_island_enabled(self) -> bool: ...
    @is_island_enabled.setter
    def is_island_enabled(self, value: bool) -> None: ...
    @_property
    def is_hit_test_visible_when_transparent(self) -> bool: ...
    @is_hit_test_visible_when_transparent.setter
    def is_hit_test_visible_when_transparent(self, value: bool) -> None: ...
    @_property
    def app_data(self) -> typing.Optional[winrt.system.Object]: ...
    @app_data.setter
    def app_data(self, value: typing.Optional[winrt.system.Object]) -> None: ...
    @_property
    def actual_size(self) -> winrt.windows.foundation.numerics.Vector2: ...
    @_property
    def coordinate_converter(self) -> typing.Optional[ContentCoordinateConverter]: ...
    @_property
    def custom_properties(self) -> typing.Optional[winrt.windows.foundation.collections.IPropertySet]: ...
    @_property
    def dispatcher_queue(self) -> typing.Optional[winrt.microsoft.ui.dispatching.DispatcherQueue]: ...
    @_property
    def environment(self) -> typing.Optional[ContentIslandEnvironment]: ...
    @_property
    def id(self) -> winrt.system.UInt64: ...
    @_property
    def is_connected(self) -> bool: ...
    @_property
    def is_site_enabled(self) -> bool: ...
    @_property
    def is_site_visible(self) -> bool: ...
    @_property
    def layout_direction(self) -> ContentLayoutDirection: ...
    @_property
    def rasterization_scale(self) -> winrt.system.Single: ...
    @_property
    def is_closed(self) -> bool: ...

@typing.final
class ContentIslandAutomationProviderRequestedEventArgs(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentIslandAutomationProviderRequestedEventArgs: ...
    @_property
    def handled(self) -> bool: ...
    @handled.setter
    def handled(self, value: bool) -> None: ...
    @_property
    def automation_provider(self) -> typing.Optional[winrt.system.Object]: ...
    @automation_provider.setter
    def automation_provider(self, value: typing.Optional[winrt.system.Object]) -> None: ...

@typing.final
class ContentIslandEnvironment(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentIslandEnvironment: ...
    def add_setting_changed(self, handler: winrt.windows.foundation.TypedEventHandler[ContentIslandEnvironment, ContentEnvironmentSettingChangedEventArgs], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_setting_changed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    def add_state_changed(self, handler: winrt.windows.foundation.TypedEventHandler[ContentIslandEnvironment, ContentEnvironmentStateChangedEventArgs], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_state_changed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    @_property
    def app_window_id(self) -> winrt.microsoft.ui.WindowId: ...
    @_property
    def display_id(self) -> winrt.microsoft.ui.DisplayId: ...

@typing.final
class ContentIslandStateChangedEventArgs(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentIslandStateChangedEventArgs: ...
    @_property
    def did_actual_size_change(self) -> bool: ...
    @_property
    def did_layout_direction_change(self) -> bool: ...
    @_property
    def did_rasterization_scale_change(self) -> bool: ...
    @_property
    def did_site_enabled_change(self) -> bool: ...
    @_property
    def did_site_visible_change(self) -> bool: ...

@typing.final
class ContentSite(winrt.system.Object):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, *args) -> None: ...
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentSite: ...
    def close(self) -> None: ...
    def get_island_state_change_deferral(self) -> typing.Optional[ContentDeferral]: ...
    def add_requested_state_changed(self, handler: winrt.windows.foundation.TypedEventHandler[ContentSite, ContentSiteRequestedStateChangedEventArgs], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_requested_state_changed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    def add_closed(self, handler: typing.Optional[winrt.microsoft.ui.ClosableNotifierHandler], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_closed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    def add_framework_closed(self, handler: typing.Optional[winrt.microsoft.ui.ClosableNotifierHandler], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_framework_closed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    @_property
    def should_apply_rasterization_scale(self) -> bool: ...
    @should_apply_rasterization_scale.setter
    def should_apply_rasterization_scale(self, value: bool) -> None: ...
    @_property
    def parent_scale(self) -> winrt.system.Single: ...
    @parent_scale.setter
    def parent_scale(self, value: winrt.system.Single) -> None: ...
    @_property
    def override_scale(self) -> winrt.system.Single: ...
    @override_scale.setter
    def override_scale(self, value: winrt.system.Single) -> None: ...
    @_property
    def layout_direction(self) -> ContentLayoutDirection: ...
    @layout_direction.setter
    def layout_direction(self, value: ContentLayoutDirection) -> None: ...
    @_property
    def is_site_visible(self) -> bool: ...
    @is_site_visible.setter
    def is_site_visible(self, value: bool) -> None: ...
    @_property
    def is_site_enabled(self) -> bool: ...
    @is_site_enabled.setter
    def is_site_enabled(self, value: bool) -> None: ...
    @_property
    def client_size(self) -> winrt.windows.graphics.SizeInt32: ...
    @client_size.setter
    def client_size(self, value: winrt.windows.graphics.SizeInt32) -> None: ...
    @_property
    def actual_size(self) -> winrt.windows.foundation.numerics.Vector2: ...
    @actual_size.setter
    def actual_size(self, value: winrt.windows.foundation.numerics.Vector2) -> None: ...
    @_property
    def coordinate_converter(self) -> typing.Optional[ContentCoordinateConverter]: ...
    @_property
    def dispatcher_queue(self) -> typing.Optional[winrt.microsoft.ui.dispatching.DispatcherQueue]: ...
    @_property
    def environment(self) -> typing.Optional[ContentSiteEnvironment]: ...
    @_property
    def is_connected(self) -> bool: ...
    @_property
    def rasterization_scale(self) -> winrt.system.Single: ...
    @_property
    def requested_size(self) -> winrt.windows.foundation.numerics.Vector2: ...
    @_property
    def view(self) -> typing.Optional[ContentSiteView]: ...
    @_property
    def is_closed(self) -> bool: ...

@typing.final
class ContentSiteEnvironment(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentSiteEnvironment: ...
    def notify_setting_changed(self, setting: str, /) -> None: ...
    @_property
    def display_id(self) -> winrt.microsoft.ui.DisplayId: ...
    @display_id.setter
    def display_id(self, value: winrt.microsoft.ui.DisplayId) -> None: ...
    @_property
    def app_window_id(self) -> winrt.microsoft.ui.WindowId: ...
    @app_window_id.setter
    def app_window_id(self, value: winrt.microsoft.ui.WindowId) -> None: ...
    @_property
    def view(self) -> typing.Optional[ContentSiteEnvironmentView]: ...

@typing.final
class ContentSiteEnvironmentView(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentSiteEnvironmentView: ...
    @_property
    def app_window_id(self) -> winrt.microsoft.ui.WindowId: ...
    @_property
    def display_id(self) -> winrt.microsoft.ui.DisplayId: ...

@typing.final
class ContentSiteRequestedStateChangedEventArgs(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentSiteRequestedStateChangedEventArgs: ...
    @_property
    def did_requested_size_change(self) -> bool: ...

@typing.final
class ContentSiteView(winrt.system.Object):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> ContentSiteView: ...
    @_property
    def actual_size(self) -> winrt.windows.foundation.numerics.Vector2: ...
    @_property
    def client_size(self) -> winrt.windows.graphics.SizeInt32: ...
    @_property
    def coordinate_converter(self) -> typing.Optional[ContentCoordinateConverter]: ...
    @_property
    def dispatcher_queue(self) -> typing.Optional[winrt.microsoft.ui.dispatching.DispatcherQueue]: ...
    @_property
    def environment_view(self) -> typing.Optional[ContentSiteEnvironmentView]: ...
    @_property
    def is_connected(self) -> bool: ...
    @_property
    def is_site_enabled(self) -> bool: ...
    @_property
    def is_site_visible(self) -> bool: ...
    @_property
    def layout_direction(self) -> ContentLayoutDirection: ...
    @_property
    def override_scale(self) -> winrt.system.Single: ...
    @_property
    def parent_scale(self) -> winrt.system.Single: ...
    @_property
    def rasterization_scale(self) -> winrt.system.Single: ...
    @_property
    def requested_size(self) -> winrt.windows.foundation.numerics.Vector2: ...
    @_property
    def should_apply_rasterization_scale(self) -> bool: ...

@typing.final
class DesktopChildSiteBridge_Static(type):
    def create(cls, compositor: typing.Optional[winrt.microsoft.ui.composition.Compositor], parent_window_id: winrt.microsoft.ui.WindowId, /) -> typing.Optional[DesktopChildSiteBridge]: ...

@typing.final
class DesktopChildSiteBridge(winrt.system.Object, metaclass=DesktopChildSiteBridge_Static):
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> DesktopChildSiteBridge: ...
    @_property
    def resize_policy(self) -> ContentSizePolicy: ...
    @resize_policy.setter
    def resize_policy(self, value: ContentSizePolicy) -> None: ...
    @_property
    def site_view(self) -> typing.Optional[ContentSiteView]: ...

@typing.final
class DesktopSiteBridge_Static(type):
    def is_supported(cls) -> bool: ...

@typing.final
class DesktopSiteBridge(winrt.system.Object, metaclass=DesktopSiteBridge_Static):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, *args) -> None: ...
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> DesktopSiteBridge: ...
    def close(self) -> None: ...
    def connect(self, content: typing.Optional[ContentIsland], /) -> None: ...
    def disable(self) -> None: ...
    def enable(self) -> None: ...
    def hide(self) -> None: ...
    def move_and_resize(self, rect: winrt.windows.graphics.RectInt32, /) -> None: ...
    def move_in_z_order_at_bottom(self) -> None: ...
    def move_in_z_order_at_top(self) -> None: ...
    def move_in_z_order_below(self, window_id: winrt.microsoft.ui.WindowId, /) -> None: ...
    def show(self) -> None: ...
    def add_closed(self, handler: typing.Optional[winrt.microsoft.ui.ClosableNotifierHandler], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_closed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    def add_framework_closed(self, handler: typing.Optional[winrt.microsoft.ui.ClosableNotifierHandler], /) -> winrt.windows.foundation.EventRegistrationToken: ...
    def remove_framework_closed(self, token: winrt.windows.foundation.EventRegistrationToken, /) -> None: ...
    @_property
    def override_scale(self) -> winrt.system.Single: ...
    @override_scale.setter
    def override_scale(self, value: winrt.system.Single) -> None: ...
    @_property
    def layout_direction_override(self) -> typing.Optional[typing.Optional[ContentLayoutDirection]]: ...
    @layout_direction_override.setter
    def layout_direction_override(self, value: typing.Optional[typing.Optional[ContentLayoutDirection]]) -> None: ...
    @_property
    def dispatcher_queue(self) -> typing.Optional[winrt.microsoft.ui.dispatching.DispatcherQueue]: ...
    @_property
    def is_enabled(self) -> bool: ...
    @_property
    def is_visible(self) -> bool: ...
    @_property
    def window_id(self) -> winrt.microsoft.ui.WindowId: ...
    @_property
    def is_closed(self) -> bool: ...

@typing.final
class IContentSiteBridge(winrt.system.Object):
    def __enter__(self: Self) -> Self: ...
    def __exit__(self, *args) -> None: ...
    @staticmethod
    def _from(obj: winrt.system.Object, /) -> IContentSiteBridge: ...
    def close(self) -> None: ...
    @_property
    def dispatcher_queue(self) -> typing.Optional[winrt.microsoft.ui.dispatching.DispatcherQueue]: ...
    @_property
    def layout_direction_override(self) -> typing.Optional[typing.Optional[ContentLayoutDirection]]: ...
    @layout_direction_override.setter
    def layout_direction_override(self, value: typing.Optional[typing.Optional[ContentLayoutDirection]]) -> None: ...
    @_property
    def override_scale(self) -> winrt.system.Single: ...
    @override_scale.setter
    def override_scale(self, value: winrt.system.Single) -> None: ...

