// WARNING: Please don't edit this file. It was generated by C++/WinRT v2.0.250303.1

#pragma once
#ifndef WINRT_Microsoft_UI_Windowing_0_H
#define WINRT_Microsoft_UI_Windowing_0_H
WINRT_EXPORT namespace winrt::Microsoft::UI
{
    struct DisplayId;
    struct IconId;
    struct WindowId;
}
WINRT_EXPORT namespace winrt::Microsoft::UI::Dispatching
{
    struct DispatcherQueue;
}
WINRT_EXPORT namespace winrt::Windows::Foundation
{
    struct EventRegistrationToken;
    template <typename T> struct WINRT_IMPL_EMPTY_BASES IReference;
    template <typename TSender, typename TResult> struct WINRT_IMPL_EMPTY_BASES TypedEventHandler;
}
WINRT_EXPORT namespace winrt::Windows::Graphics
{
    struct PointInt32;
    struct RectInt32;
    struct SizeInt32;
}
WINRT_EXPORT namespace winrt::Windows::UI
{
    struct Color;
}
WINRT_EXPORT namespace winrt::Microsoft::UI::Windowing
{
    enum class AppWindowPresenterKind : int32_t
    {
        Default = 0,
        CompactOverlay = 1,
        FullScreen = 2,
        Overlapped = 3,
    };
    enum class CompactOverlaySize : int32_t
    {
        Small = 0,
        Medium = 1,
        Large = 2,
    };
    enum class DisplayAreaFallback : int32_t
    {
        None = 0,
        Primary = 1,
        Nearest = 2,
    };
    enum class DisplayAreaWatcherStatus : int32_t
    {
        Created = 0,
        Started = 1,
        EnumerationCompleted = 2,
        Stopping = 3,
        Stopped = 4,
        Aborted = 5,
    };
    enum class IconShowOptions : int32_t
    {
        ShowIconAndSystemMenu = 0,
        HideIconAndSystemMenu = 1,
    };
    enum class OverlappedPresenterState : int32_t
    {
        Maximized = 0,
        Minimized = 1,
        Restored = 2,
    };
    enum class TitleBarHeightOption : int32_t
    {
        Standard = 0,
        Tall = 1,
        Collapsed = 2,
    };
    struct IAppWindow;
    struct IAppWindow2;
    struct IAppWindow3;
    struct IAppWindowChangedEventArgs;
    struct IAppWindowChangedEventArgs2;
    struct IAppWindowClosingEventArgs;
    struct IAppWindowPresenter;
    struct IAppWindowPresenterFactory;
    struct IAppWindowStatics;
    struct IAppWindowStatics2;
    struct IAppWindowTitleBar;
    struct IAppWindowTitleBar2;
    struct IAppWindowTitleBarStatics;
    struct ICompactOverlayPresenter;
    struct ICompactOverlayPresenterStatics;
    struct IDisplayArea;
    struct IDisplayAreaStatics;
    struct IDisplayAreaStatics2;
    struct IDisplayAreaWatcher;
    struct IFullScreenPresenter;
    struct IFullScreenPresenterStatics;
    struct IOverlappedPresenter;
    struct IOverlappedPresenter2;
    struct IOverlappedPresenterStatics;
    struct IOverlappedPresenterStatics2;
    struct AppWindow;
    struct AppWindowChangedEventArgs;
    struct AppWindowClosingEventArgs;
    struct AppWindowPresenter;
    struct AppWindowTitleBar;
    struct CompactOverlayPresenter;
    struct DisplayArea;
    struct DisplayAreaWatcher;
    struct FullScreenPresenter;
    struct OverlappedPresenter;
}
namespace winrt::impl
{
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindow>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindow2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindow3>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowClosingEventArgs>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowPresenter>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowPresenterFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowStatics2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IAppWindowTitleBarStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenter>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenterStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IDisplayArea>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IFullScreenPresenter>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IFullScreenPresenterStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IOverlappedPresenter>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IOverlappedPresenter2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::AppWindow>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::AppWindowChangedEventArgs>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::AppWindowClosingEventArgs>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::AppWindowPresenter>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::AppWindowTitleBar>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::CompactOverlayPresenter>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::DisplayArea>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::FullScreenPresenter>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::OverlappedPresenter>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::AppWindowPresenterKind>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::CompactOverlaySize>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::DisplayAreaFallback>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::DisplayAreaWatcherStatus>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::IconShowOptions>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::OverlappedPresenterState>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Windowing::TitleBarHeightOption>{ using type = enum_category; };
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::AppWindow> = L"Microsoft.UI.Windowing.AppWindow";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::AppWindowChangedEventArgs> = L"Microsoft.UI.Windowing.AppWindowChangedEventArgs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::AppWindowClosingEventArgs> = L"Microsoft.UI.Windowing.AppWindowClosingEventArgs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::AppWindowPresenter> = L"Microsoft.UI.Windowing.AppWindowPresenter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::AppWindowTitleBar> = L"Microsoft.UI.Windowing.AppWindowTitleBar";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::CompactOverlayPresenter> = L"Microsoft.UI.Windowing.CompactOverlayPresenter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::DisplayArea> = L"Microsoft.UI.Windowing.DisplayArea";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher> = L"Microsoft.UI.Windowing.DisplayAreaWatcher";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::FullScreenPresenter> = L"Microsoft.UI.Windowing.FullScreenPresenter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::OverlappedPresenter> = L"Microsoft.UI.Windowing.OverlappedPresenter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::AppWindowPresenterKind> = L"Microsoft.UI.Windowing.AppWindowPresenterKind";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::CompactOverlaySize> = L"Microsoft.UI.Windowing.CompactOverlaySize";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::DisplayAreaFallback> = L"Microsoft.UI.Windowing.DisplayAreaFallback";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::DisplayAreaWatcherStatus> = L"Microsoft.UI.Windowing.DisplayAreaWatcherStatus";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IconShowOptions> = L"Microsoft.UI.Windowing.IconShowOptions";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::OverlappedPresenterState> = L"Microsoft.UI.Windowing.OverlappedPresenterState";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::TitleBarHeightOption> = L"Microsoft.UI.Windowing.TitleBarHeightOption";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindow> = L"Microsoft.UI.Windowing.IAppWindow";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindow2> = L"Microsoft.UI.Windowing.IAppWindow2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindow3> = L"Microsoft.UI.Windowing.IAppWindow3";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs> = L"Microsoft.UI.Windowing.IAppWindowChangedEventArgs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs2> = L"Microsoft.UI.Windowing.IAppWindowChangedEventArgs2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowClosingEventArgs> = L"Microsoft.UI.Windowing.IAppWindowClosingEventArgs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowPresenter> = L"Microsoft.UI.Windowing.IAppWindowPresenter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowPresenterFactory> = L"Microsoft.UI.Windowing.IAppWindowPresenterFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowStatics> = L"Microsoft.UI.Windowing.IAppWindowStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowStatics2> = L"Microsoft.UI.Windowing.IAppWindowStatics2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar> = L"Microsoft.UI.Windowing.IAppWindowTitleBar";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar2> = L"Microsoft.UI.Windowing.IAppWindowTitleBar2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IAppWindowTitleBarStatics> = L"Microsoft.UI.Windowing.IAppWindowTitleBarStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenter> = L"Microsoft.UI.Windowing.ICompactOverlayPresenter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenterStatics> = L"Microsoft.UI.Windowing.ICompactOverlayPresenterStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IDisplayArea> = L"Microsoft.UI.Windowing.IDisplayArea";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics> = L"Microsoft.UI.Windowing.IDisplayAreaStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics2> = L"Microsoft.UI.Windowing.IDisplayAreaStatics2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher> = L"Microsoft.UI.Windowing.IDisplayAreaWatcher";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IFullScreenPresenter> = L"Microsoft.UI.Windowing.IFullScreenPresenter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IFullScreenPresenterStatics> = L"Microsoft.UI.Windowing.IFullScreenPresenterStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IOverlappedPresenter> = L"Microsoft.UI.Windowing.IOverlappedPresenter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IOverlappedPresenter2> = L"Microsoft.UI.Windowing.IOverlappedPresenter2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics> = L"Microsoft.UI.Windowing.IOverlappedPresenterStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics2> = L"Microsoft.UI.Windowing.IOverlappedPresenterStatics2";
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindow>{ 0xCFA788B3,0x643B,0x5C5E,{ 0xAD,0x4E,0x32,0x1D,0x48,0xA8,0x2A,0xCD } }; // CFA788B3-643B-5C5E-AD4E-321D48A82ACD
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindow2>{ 0x6CD41292,0x794C,0x5CAC,{ 0x89,0x61,0x21,0x0D,0x01,0x2C,0x6E,0xBC } }; // 6CD41292-794C-5CAC-8961-210D012C6EBC
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindow3>{ 0x2F260CEA,0x193D,0x5DD6,{ 0xA9,0x04,0xD7,0x64,0x9A,0x60,0x8D,0x2F } }; // 2F260CEA-193D-5DD6-A904-D7649A608D2F
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs>{ 0x2182BC5D,0xFDAC,0x5C3E,{ 0xBF,0x37,0x7D,0x8D,0x68,0x4E,0x9D,0x1D } }; // 2182BC5D-FDAC-5C3E-BF37-7D8D684E9D1D
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs2>{ 0xA773AB4C,0xA5EC,0x50E8,{ 0x98,0xAC,0x24,0x7F,0xE6,0xCD,0x42,0x27 } }; // A773AB4C-A5EC-50E8-98AC-247FE6CD4227
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowClosingEventArgs>{ 0x0E09D90B,0x2261,0x590B,{ 0x9A,0xD1,0x85,0x04,0x99,0x1D,0x87,0x54 } }; // 0E09D90B-2261-590B-9AD1-8504991D8754
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowPresenter>{ 0xBC3042C2,0xC6C6,0x5632,{ 0x89,0x89,0xFF,0x0E,0xC6,0xD3,0xB4,0x0D } }; // BC3042C2-C6C6-5632-8989-FF0EC6D3B40D
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowPresenterFactory>{ 0x62082E3C,0x1368,0x5238,{ 0x90,0xD1,0xE9,0x32,0xDC,0x71,0x8A,0x82 } }; // 62082E3C-1368-5238-90D1-E932DC718A82
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowStatics>{ 0x3C315C24,0xD540,0x5D72,{ 0xB5,0x18,0xB2,0x26,0xB8,0x36,0x27,0xCB } }; // 3C315C24-D540-5D72-B518-B226B83627CB
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowStatics2>{ 0xCABC23DB,0x4606,0x5D6E,{ 0x89,0xA5,0x06,0xDE,0x1D,0x8B,0xD3,0xE2 } }; // CABC23DB-4606-5D6E-89A5-06DE1D8BD3E2
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar>{ 0x5574EFA2,0xC91C,0x5700,{ 0xA3,0x63,0x53,0x9C,0x71,0xA7,0xAA,0xF4 } }; // 5574EFA2-C91C-5700-A363-539C71A7AAF4
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar2>{ 0x86FAED38,0x748A,0x5B4B,{ 0x9C,0xCF,0x3B,0xA0,0x49,0x6C,0x90,0x41 } }; // 86FAED38-748A-5B4B-9CCF-3BA0496C9041
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IAppWindowTitleBarStatics>{ 0x9E1DA52E,0x8B15,0x54D6,{ 0xA8,0x86,0xF7,0xB9,0xF9,0xD9,0x30,0xB2 } }; // 9E1DA52E-8B15-54D6-A886-F7B9F9D930B2
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenter>{ 0xEFEB0812,0x6FC7,0x5B7D,{ 0xBD,0x92,0xCC,0x8F,0x9A,0x64,0x54,0xC9 } }; // EFEB0812-6FC7-5B7D-BD92-CC8F9A6454C9
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenterStatics>{ 0xEAB93186,0x4F6A,0x52F9,{ 0x8C,0x03,0xDA,0x57,0xA1,0x52,0x2F,0x6E } }; // EAB93186-4F6A-52F9-8C03-DA57A1522F6E
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IDisplayArea>{ 0x5C7E0537,0xB621,0x5579,{ 0xBC,0xAE,0xA8,0x4A,0xA8,0x74,0x61,0x67 } }; // 5C7E0537-B621-5579-BCAE-A84AA8746167
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics>{ 0x02AB4926,0x211E,0x5D49,{ 0x8E,0x4B,0x2A,0xF1,0x93,0xDA,0xED,0x09 } }; // 02AB4926-211E-5D49-8E4B-2AF193DAED09
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics2>{ 0x7207AD4B,0x890D,0x5DD7,{ 0xBC,0x18,0x78,0xFF,0xD9,0x54,0x4D,0x8F } }; // 7207AD4B-890D-5DD7-BC18-78FFD9544D8F
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>{ 0x83F6562F,0xD3A0,0x548B,{ 0x8E,0x4F,0xA9,0x9B,0xE3,0xD9,0x5C,0x9C } }; // 83F6562F-D3A0-548B-8E4F-A99BE3D95C9C
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IFullScreenPresenter>{ 0xFA9141FD,0xB8DD,0x5DA1,{ 0x8B,0x2B,0x7C,0xDA,0xDB,0x76,0xF5,0x93 } }; // FA9141FD-B8DD-5DA1-8B2B-7CDADB76F593
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IFullScreenPresenterStatics>{ 0x2EC0D2C1,0xE086,0x55BB,{ 0xA3,0xB2,0x44,0x94,0x2E,0x23,0x1C,0x67 } }; // 2EC0D2C1-E086-55BB-A3B2-44942E231C67
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IOverlappedPresenter>{ 0x21693970,0x4F4C,0x5172,{ 0x9E,0x9D,0x68,0x2A,0x2D,0x17,0x48,0x84 } }; // 21693970-4F4C-5172-9E9D-682A2D174884
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IOverlappedPresenter2>{ 0x5C6CCD93,0x4244,0x5CD2,{ 0xB3,0x55,0xED,0x5E,0xA3,0x4D,0xF7,0x30 } }; // 5C6CCD93-4244-5CD2-B355-ED5EA34DF730
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics>{ 0x997225E4,0x7B00,0x5AEE,{ 0xA4,0xBE,0xD4,0x06,0x8D,0x19,0x99,0xE2 } }; // 997225E4-7B00-5AEE-A4BE-D4068D1999E2
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics2>{ 0xED5C4F92,0x32F4,0x5D15,{ 0x80,0xD0,0xB2,0xA5,0xEF,0xA0,0x4D,0x39 } }; // ED5C4F92-32F4-5D15-80D0-B2A5EFA04D39
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::AppWindow>{ using type = winrt::Microsoft::UI::Windowing::IAppWindow; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::AppWindowChangedEventArgs>{ using type = winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::AppWindowClosingEventArgs>{ using type = winrt::Microsoft::UI::Windowing::IAppWindowClosingEventArgs; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::AppWindowPresenter>{ using type = winrt::Microsoft::UI::Windowing::IAppWindowPresenter; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::AppWindowTitleBar>{ using type = winrt::Microsoft::UI::Windowing::IAppWindowTitleBar; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::CompactOverlayPresenter>{ using type = winrt::Microsoft::UI::Windowing::ICompactOverlayPresenter; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::DisplayArea>{ using type = winrt::Microsoft::UI::Windowing::IDisplayArea; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher>{ using type = winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::FullScreenPresenter>{ using type = winrt::Microsoft::UI::Windowing::IFullScreenPresenter; };
    template <> struct default_interface<winrt::Microsoft::UI::Windowing::OverlappedPresenter>{ using type = winrt::Microsoft::UI::Windowing::IOverlappedPresenter; };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindow>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Id(struct struct_Microsoft_UI_WindowId*) noexcept = 0;
            virtual int32_t __stdcall get_IsShownInSwitchers(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsShownInSwitchers(bool) noexcept = 0;
            virtual int32_t __stdcall get_IsVisible(bool*) noexcept = 0;
            virtual int32_t __stdcall get_OwnerWindowId(struct struct_Microsoft_UI_WindowId*) noexcept = 0;
            virtual int32_t __stdcall get_Position(struct struct_Windows_Graphics_PointInt32*) noexcept = 0;
            virtual int32_t __stdcall get_Presenter(void**) noexcept = 0;
            virtual int32_t __stdcall get_Size(struct struct_Windows_Graphics_SizeInt32*) noexcept = 0;
            virtual int32_t __stdcall get_Title(void**) noexcept = 0;
            virtual int32_t __stdcall put_Title(void*) noexcept = 0;
            virtual int32_t __stdcall get_TitleBar(void**) noexcept = 0;
            virtual int32_t __stdcall Destroy() noexcept = 0;
            virtual int32_t __stdcall Hide() noexcept = 0;
            virtual int32_t __stdcall Move(struct struct_Windows_Graphics_PointInt32) noexcept = 0;
            virtual int32_t __stdcall MoveAndResize(struct struct_Windows_Graphics_RectInt32) noexcept = 0;
            virtual int32_t __stdcall MoveAndResizeRelativeToDisplayArea(struct struct_Windows_Graphics_RectInt32, void*) noexcept = 0;
            virtual int32_t __stdcall Resize(struct struct_Windows_Graphics_SizeInt32) noexcept = 0;
            virtual int32_t __stdcall SetIcon(void*) noexcept = 0;
            virtual int32_t __stdcall SetIconWithIconId(struct struct_Microsoft_UI_IconId) noexcept = 0;
            virtual int32_t __stdcall SetPresenter(void*) noexcept = 0;
            virtual int32_t __stdcall SetPresenterByKind(int32_t) noexcept = 0;
            virtual int32_t __stdcall Show() noexcept = 0;
            virtual int32_t __stdcall ShowWithActivation(bool) noexcept = 0;
            virtual int32_t __stdcall add_Changed(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_Changed(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_Closing(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_Closing(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_Destroying(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_Destroying(winrt::event_token) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindow2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ClientSize(struct struct_Windows_Graphics_SizeInt32*) noexcept = 0;
            virtual int32_t __stdcall MoveInZOrderAtBottom() noexcept = 0;
            virtual int32_t __stdcall MoveInZOrderAtTop() noexcept = 0;
            virtual int32_t __stdcall MoveInZOrderBelow(struct struct_Microsoft_UI_WindowId) noexcept = 0;
            virtual int32_t __stdcall ResizeClient(struct struct_Windows_Graphics_SizeInt32) noexcept = 0;
            virtual int32_t __stdcall ShowOnceWithRequestedStartupState() noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindow3>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall AssociateWithDispatcherQueue(void*) noexcept = 0;
            virtual int32_t __stdcall get_DispatcherQueue(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_DidPositionChange(bool*) noexcept = 0;
            virtual int32_t __stdcall get_DidPresenterChange(bool*) noexcept = 0;
            virtual int32_t __stdcall get_DidSizeChange(bool*) noexcept = 0;
            virtual int32_t __stdcall get_DidVisibilityChange(bool*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_DidZOrderChange(bool*) noexcept = 0;
            virtual int32_t __stdcall get_IsZOrderAtBottom(bool*) noexcept = 0;
            virtual int32_t __stdcall get_IsZOrderAtTop(bool*) noexcept = 0;
            virtual int32_t __stdcall get_ZOrderBelowWindowId(struct struct_Microsoft_UI_WindowId*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowClosingEventArgs>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Cancel(bool*) noexcept = 0;
            virtual int32_t __stdcall put_Cancel(bool) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowPresenter>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Kind(int32_t*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowPresenterFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall Create(void**) noexcept = 0;
            virtual int32_t __stdcall CreateWithPresenter(void*, void**) noexcept = 0;
            virtual int32_t __stdcall CreateWithPresenterAndOwner(void*, struct struct_Microsoft_UI_WindowId, void**) noexcept = 0;
            virtual int32_t __stdcall GetFromWindowId(struct struct_Microsoft_UI_WindowId, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowStatics2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateWithDispatcherQueue(void*, struct struct_Microsoft_UI_WindowId, void*, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_BackgroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_BackgroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ButtonBackgroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ButtonBackgroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ButtonForegroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ButtonForegroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ButtonHoverBackgroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ButtonHoverBackgroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ButtonHoverForegroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ButtonHoverForegroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ButtonInactiveBackgroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ButtonInactiveBackgroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ButtonInactiveForegroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ButtonInactiveForegroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ButtonPressedBackgroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ButtonPressedBackgroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ButtonPressedForegroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ButtonPressedForegroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_ExtendsContentIntoTitleBar(bool*) noexcept = 0;
            virtual int32_t __stdcall put_ExtendsContentIntoTitleBar(bool) noexcept = 0;
            virtual int32_t __stdcall get_ForegroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_ForegroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_Height(int32_t*) noexcept = 0;
            virtual int32_t __stdcall get_IconShowOptions(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_IconShowOptions(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_InactiveBackgroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_InactiveBackgroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_InactiveForegroundColor(void**) noexcept = 0;
            virtual int32_t __stdcall put_InactiveForegroundColor(void*) noexcept = 0;
            virtual int32_t __stdcall get_LeftInset(int32_t*) noexcept = 0;
            virtual int32_t __stdcall get_RightInset(int32_t*) noexcept = 0;
            virtual int32_t __stdcall ResetToDefault() noexcept = 0;
            virtual int32_t __stdcall SetDragRectangles(uint32_t, struct struct_Windows_Graphics_RectInt32*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_PreferredHeightOption(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_PreferredHeightOption(int32_t) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IAppWindowTitleBarStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall IsCustomizationSupported(bool*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenter>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_InitialSize(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_InitialSize(int32_t) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenterStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall Create(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IDisplayArea>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_DisplayId(struct struct_Microsoft_UI_DisplayId*) noexcept = 0;
            virtual int32_t __stdcall get_IsPrimary(bool*) noexcept = 0;
            virtual int32_t __stdcall get_OuterBounds(struct struct_Windows_Graphics_RectInt32*) noexcept = 0;
            virtual int32_t __stdcall get_WorkArea(struct struct_Windows_Graphics_RectInt32*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Primary(void**) noexcept = 0;
            virtual int32_t __stdcall CreateWatcher(void**) noexcept = 0;
            virtual int32_t __stdcall FindAll(void**) noexcept = 0;
            virtual int32_t __stdcall GetFromWindowId(struct struct_Microsoft_UI_WindowId, int32_t, void**) noexcept = 0;
            virtual int32_t __stdcall GetFromPoint(struct struct_Windows_Graphics_PointInt32, int32_t, void**) noexcept = 0;
            virtual int32_t __stdcall GetFromRect(struct struct_Windows_Graphics_RectInt32, int32_t, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall GetFromDisplayId(struct struct_Microsoft_UI_DisplayId, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Status(int32_t*) noexcept = 0;
            virtual int32_t __stdcall Start() noexcept = 0;
            virtual int32_t __stdcall Stop() noexcept = 0;
            virtual int32_t __stdcall add_Added(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_Added(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_EnumerationCompleted(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_EnumerationCompleted(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_Removed(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_Removed(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_Stopped(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_Stopped(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_Updated(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_Updated(winrt::event_token) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IFullScreenPresenter>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IFullScreenPresenterStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall Create(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IOverlappedPresenter>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_HasBorder(bool*) noexcept = 0;
            virtual int32_t __stdcall get_HasTitleBar(bool*) noexcept = 0;
            virtual int32_t __stdcall get_IsAlwaysOnTop(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsAlwaysOnTop(bool) noexcept = 0;
            virtual int32_t __stdcall get_IsMaximizable(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsMaximizable(bool) noexcept = 0;
            virtual int32_t __stdcall get_IsMinimizable(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsMinimizable(bool) noexcept = 0;
            virtual int32_t __stdcall get_IsModal(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsModal(bool) noexcept = 0;
            virtual int32_t __stdcall get_IsResizable(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsResizable(bool) noexcept = 0;
            virtual int32_t __stdcall get_State(int32_t*) noexcept = 0;
            virtual int32_t __stdcall Maximize() noexcept = 0;
            virtual int32_t __stdcall Minimize() noexcept = 0;
            virtual int32_t __stdcall Restore() noexcept = 0;
            virtual int32_t __stdcall SetBorderAndTitleBar(bool, bool) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IOverlappedPresenter2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall MinimizeWithActivation(bool) noexcept = 0;
            virtual int32_t __stdcall RestoreWithActivation(bool) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall Create(void**) noexcept = 0;
            virtual int32_t __stdcall CreateForContextMenu(void**) noexcept = 0;
            virtual int32_t __stdcall CreateForDialog(void**) noexcept = 0;
            virtual int32_t __stdcall CreateForToolWindow(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_RequestedStartupState(int32_t*) noexcept = 0;
        };
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindow
    {
        [[nodiscard]] auto Id() const;
        [[nodiscard]] auto IsShownInSwitchers() const;
        auto IsShownInSwitchers(bool value) const;
        [[nodiscard]] auto IsVisible() const;
        [[nodiscard]] auto OwnerWindowId() const;
        [[nodiscard]] auto Position() const;
        [[nodiscard]] auto Presenter() const;
        [[nodiscard]] auto Size() const;
        [[nodiscard]] auto Title() const;
        auto Title(param::hstring const& value) const;
        [[nodiscard]] auto TitleBar() const;
        auto Destroy() const;
        auto Hide() const;
        auto Move(winrt::Windows::Graphics::PointInt32 const& position) const;
        auto MoveAndResize(winrt::Windows::Graphics::RectInt32 const& rect) const;
        auto MoveAndResize(winrt::Windows::Graphics::RectInt32 const& rect, winrt::Microsoft::UI::Windowing::DisplayArea const& displayarea) const;
        auto Resize(winrt::Windows::Graphics::SizeInt32 const& size) const;
        auto SetIcon(param::hstring const& iconPath) const;
        auto SetIcon(winrt::Microsoft::UI::IconId const& iconId) const;
        auto SetPresenter(winrt::Microsoft::UI::Windowing::AppWindowPresenter const& appWindowPresenter) const;
        auto SetPresenter(winrt::Microsoft::UI::Windowing::AppWindowPresenterKind const& appWindowPresenterKind) const;
        auto Show() const;
        auto Show(bool activateWindow) const;
        auto Changed(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::AppWindow, winrt::Microsoft::UI::Windowing::AppWindowChangedEventArgs> const& handler) const;
        using Changed_revoker = impl::event_revoker<winrt::Microsoft::UI::Windowing::IAppWindow, &impl::abi_t<winrt::Microsoft::UI::Windowing::IAppWindow>::remove_Changed>;
        [[nodiscard]] auto Changed(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::AppWindow, winrt::Microsoft::UI::Windowing::AppWindowChangedEventArgs> const& handler) const;
        auto Changed(winrt::event_token const& token) const noexcept;
        auto Closing(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::AppWindow, winrt::Microsoft::UI::Windowing::AppWindowClosingEventArgs> const& handler) const;
        using Closing_revoker = impl::event_revoker<winrt::Microsoft::UI::Windowing::IAppWindow, &impl::abi_t<winrt::Microsoft::UI::Windowing::IAppWindow>::remove_Closing>;
        [[nodiscard]] auto Closing(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::AppWindow, winrt::Microsoft::UI::Windowing::AppWindowClosingEventArgs> const& handler) const;
        auto Closing(winrt::event_token const& token) const noexcept;
        auto Destroying(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::AppWindow, winrt::Windows::Foundation::IInspectable> const& handler) const;
        using Destroying_revoker = impl::event_revoker<winrt::Microsoft::UI::Windowing::IAppWindow, &impl::abi_t<winrt::Microsoft::UI::Windowing::IAppWindow>::remove_Destroying>;
        [[nodiscard]] auto Destroying(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::AppWindow, winrt::Windows::Foundation::IInspectable> const& handler) const;
        auto Destroying(winrt::event_token const& token) const noexcept;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindow>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindow<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindow2
    {
        [[nodiscard]] auto ClientSize() const;
        auto MoveInZOrderAtBottom() const;
        auto MoveInZOrderAtTop() const;
        auto MoveInZOrderBelow(winrt::Microsoft::UI::WindowId const& windowId) const;
        auto ResizeClient(winrt::Windows::Graphics::SizeInt32 const& size) const;
        auto ShowOnceWithRequestedStartupState() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindow2>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindow2<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindow3
    {
        auto AssociateWithDispatcherQueue(winrt::Microsoft::UI::Dispatching::DispatcherQueue const& dispatcherQueue) const;
        [[nodiscard]] auto DispatcherQueue() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindow3>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindow3<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowChangedEventArgs
    {
        [[nodiscard]] auto DidPositionChange() const;
        [[nodiscard]] auto DidPresenterChange() const;
        [[nodiscard]] auto DidSizeChange() const;
        [[nodiscard]] auto DidVisibilityChange() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowChangedEventArgs<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowChangedEventArgs2
    {
        [[nodiscard]] auto DidZOrderChange() const;
        [[nodiscard]] auto IsZOrderAtBottom() const;
        [[nodiscard]] auto IsZOrderAtTop() const;
        [[nodiscard]] auto ZOrderBelowWindowId() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowChangedEventArgs2>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowChangedEventArgs2<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowClosingEventArgs
    {
        [[nodiscard]] auto Cancel() const;
        auto Cancel(bool value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowClosingEventArgs>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowClosingEventArgs<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowPresenter
    {
        [[nodiscard]] auto Kind() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowPresenter>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowPresenter<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowPresenterFactory
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowPresenterFactory>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowPresenterFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowStatics
    {
        auto Create() const;
        auto Create(winrt::Microsoft::UI::Windowing::AppWindowPresenter const& appWindowPresenter) const;
        auto Create(winrt::Microsoft::UI::Windowing::AppWindowPresenter const& appWindowPresenter, winrt::Microsoft::UI::WindowId const& ownerWindowId) const;
        auto GetFromWindowId(winrt::Microsoft::UI::WindowId const& windowId) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowStatics2
    {
        auto Create(winrt::Microsoft::UI::Windowing::AppWindowPresenter const& appWindowPresenter, winrt::Microsoft::UI::WindowId const& ownerWindowId, winrt::Microsoft::UI::Dispatching::DispatcherQueue const& DispatcherQueue) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowStatics2>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowStatics2<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowTitleBar
    {
        [[nodiscard]] auto BackgroundColor() const;
        auto BackgroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ButtonBackgroundColor() const;
        auto ButtonBackgroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ButtonForegroundColor() const;
        auto ButtonForegroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ButtonHoverBackgroundColor() const;
        auto ButtonHoverBackgroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ButtonHoverForegroundColor() const;
        auto ButtonHoverForegroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ButtonInactiveBackgroundColor() const;
        auto ButtonInactiveBackgroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ButtonInactiveForegroundColor() const;
        auto ButtonInactiveForegroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ButtonPressedBackgroundColor() const;
        auto ButtonPressedBackgroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ButtonPressedForegroundColor() const;
        auto ButtonPressedForegroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto ExtendsContentIntoTitleBar() const;
        auto ExtendsContentIntoTitleBar(bool value) const;
        [[nodiscard]] auto ForegroundColor() const;
        auto ForegroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto Height() const;
        [[nodiscard]] auto IconShowOptions() const;
        auto IconShowOptions(winrt::Microsoft::UI::Windowing::IconShowOptions const& value) const;
        [[nodiscard]] auto InactiveBackgroundColor() const;
        auto InactiveBackgroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto InactiveForegroundColor() const;
        auto InactiveForegroundColor(winrt::Windows::Foundation::IReference<winrt::Windows::UI::Color> const& value) const;
        [[nodiscard]] auto LeftInset() const;
        [[nodiscard]] auto RightInset() const;
        auto ResetToDefault() const;
        auto SetDragRectangles(array_view<winrt::Windows::Graphics::RectInt32 const> value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowTitleBar<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowTitleBar2
    {
        [[nodiscard]] auto PreferredHeightOption() const;
        auto PreferredHeightOption(winrt::Microsoft::UI::Windowing::TitleBarHeightOption const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowTitleBar2>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowTitleBar2<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IAppWindowTitleBarStatics
    {
        auto IsCustomizationSupported() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IAppWindowTitleBarStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IAppWindowTitleBarStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_ICompactOverlayPresenter
    {
        [[nodiscard]] auto InitialSize() const;
        auto InitialSize(winrt::Microsoft::UI::Windowing::CompactOverlaySize const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenter>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_ICompactOverlayPresenter<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_ICompactOverlayPresenterStatics
    {
        auto Create() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::ICompactOverlayPresenterStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_ICompactOverlayPresenterStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IDisplayArea
    {
        [[nodiscard]] auto DisplayId() const;
        [[nodiscard]] auto IsPrimary() const;
        [[nodiscard]] auto OuterBounds() const;
        [[nodiscard]] auto WorkArea() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IDisplayArea>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IDisplayArea<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IDisplayAreaStatics
    {
        [[nodiscard]] auto Primary() const;
        auto CreateWatcher() const;
        auto FindAll() const;
        auto GetFromWindowId(winrt::Microsoft::UI::WindowId const& windowId, winrt::Microsoft::UI::Windowing::DisplayAreaFallback const& displayAreaFallback) const;
        auto GetFromPoint(winrt::Windows::Graphics::PointInt32 const& point, winrt::Microsoft::UI::Windowing::DisplayAreaFallback const& displayAreaFallback) const;
        auto GetFromRect(winrt::Windows::Graphics::RectInt32 const& rect, winrt::Microsoft::UI::Windowing::DisplayAreaFallback const& displayAreaFallback) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IDisplayAreaStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IDisplayAreaStatics2
    {
        auto GetFromDisplayId(winrt::Microsoft::UI::DisplayId const& displayId) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IDisplayAreaStatics2>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IDisplayAreaStatics2<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IDisplayAreaWatcher
    {
        [[nodiscard]] auto Status() const;
        auto Start() const;
        auto Stop() const;
        auto Added(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Microsoft::UI::Windowing::DisplayArea> const& handler) const;
        using Added_revoker = impl::event_revoker<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher, &impl::abi_t<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>::remove_Added>;
        [[nodiscard]] auto Added(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Microsoft::UI::Windowing::DisplayArea> const& handler) const;
        auto Added(winrt::event_token const& token) const noexcept;
        auto EnumerationCompleted(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Windows::Foundation::IInspectable> const& handler) const;
        using EnumerationCompleted_revoker = impl::event_revoker<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher, &impl::abi_t<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>::remove_EnumerationCompleted>;
        [[nodiscard]] auto EnumerationCompleted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Windows::Foundation::IInspectable> const& handler) const;
        auto EnumerationCompleted(winrt::event_token const& token) const noexcept;
        auto Removed(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Microsoft::UI::Windowing::DisplayArea> const& handler) const;
        using Removed_revoker = impl::event_revoker<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher, &impl::abi_t<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>::remove_Removed>;
        [[nodiscard]] auto Removed(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Microsoft::UI::Windowing::DisplayArea> const& handler) const;
        auto Removed(winrt::event_token const& token) const noexcept;
        auto Stopped(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Windows::Foundation::IInspectable> const& handler) const;
        using Stopped_revoker = impl::event_revoker<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher, &impl::abi_t<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>::remove_Stopped>;
        [[nodiscard]] auto Stopped(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Windows::Foundation::IInspectable> const& handler) const;
        auto Stopped(winrt::event_token const& token) const noexcept;
        auto Updated(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Microsoft::UI::Windowing::DisplayArea> const& handler) const;
        using Updated_revoker = impl::event_revoker<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher, &impl::abi_t<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>::remove_Updated>;
        [[nodiscard]] auto Updated(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Windowing::DisplayAreaWatcher, winrt::Microsoft::UI::Windowing::DisplayArea> const& handler) const;
        auto Updated(winrt::event_token const& token) const noexcept;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IDisplayAreaWatcher>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IDisplayAreaWatcher<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IFullScreenPresenter
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IFullScreenPresenter>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IFullScreenPresenter<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IFullScreenPresenterStatics
    {
        auto Create() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IFullScreenPresenterStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IFullScreenPresenterStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IOverlappedPresenter
    {
        [[nodiscard]] auto HasBorder() const;
        [[nodiscard]] auto HasTitleBar() const;
        [[nodiscard]] auto IsAlwaysOnTop() const;
        auto IsAlwaysOnTop(bool value) const;
        [[nodiscard]] auto IsMaximizable() const;
        auto IsMaximizable(bool value) const;
        [[nodiscard]] auto IsMinimizable() const;
        auto IsMinimizable(bool value) const;
        [[nodiscard]] auto IsModal() const;
        auto IsModal(bool value) const;
        [[nodiscard]] auto IsResizable() const;
        auto IsResizable(bool value) const;
        [[nodiscard]] auto State() const;
        auto Maximize() const;
        auto Minimize() const;
        auto Restore() const;
        auto SetBorderAndTitleBar(bool hasBorder, bool hasTitleBar) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IOverlappedPresenter>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IOverlappedPresenter<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IOverlappedPresenter2
    {
        auto Minimize(bool activateWindow) const;
        auto Restore(bool activateWindow) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IOverlappedPresenter2>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IOverlappedPresenter2<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IOverlappedPresenterStatics
    {
        auto Create() const;
        auto CreateForContextMenu() const;
        auto CreateForDialog() const;
        auto CreateForToolWindow() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IOverlappedPresenterStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Windowing_IOverlappedPresenterStatics2
    {
        [[nodiscard]] auto RequestedStartupState() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Windowing::IOverlappedPresenterStatics2>
    {
        template <typename D> using type = consume_Microsoft_UI_Windowing_IOverlappedPresenterStatics2<D>;
    };
}
#endif
