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

#pragma once
#ifndef WINRT_Microsoft_UI_2_H
#define WINRT_Microsoft_UI_2_H
#include "winrt/impl/Windows.UI.1.h"
#include "winrt/impl/Microsoft.UI.1.h"
WINRT_EXPORT namespace winrt::Microsoft::UI
{
    struct ClosableNotifierHandler : winrt::Windows::Foundation::IUnknown
    {
        ClosableNotifierHandler(std::nullptr_t = nullptr) noexcept {}
        ClosableNotifierHandler(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Windows::Foundation::IUnknown(ptr, take_ownership_from_abi) {}
        template <typename L> ClosableNotifierHandler(L lambda);
        template <typename F> ClosableNotifierHandler(F* function);
        template <typename O, typename M> ClosableNotifierHandler(O* object, M method);
        template <typename O, typename M> ClosableNotifierHandler(com_ptr<O>&& object, M method);
        template <typename O, typename LM> ClosableNotifierHandler(weak_ref<O>&& object, LM&& lambda_or_method);
        template <typename O, typename M> ClosableNotifierHandler(std::shared_ptr<O>&& object, M method);
        template <typename O, typename LM> ClosableNotifierHandler(std::weak_ptr<O>&& object, LM&& lambda_or_method);
        auto operator()() const;
    };
    struct DisplayId
    {
        uint64_t Value {};
    };
    inline bool operator==(DisplayId const& left, DisplayId const& right) noexcept
    {
        return left.Value == right.Value;
    }
    inline bool operator!=(DisplayId const& left, DisplayId const& right) noexcept
    {
        return !(left == right);
    }
    struct IconId
    {
        uint64_t Value {};
    };
    inline bool operator==(IconId const& left, IconId const& right) noexcept
    {
        return left.Value == right.Value;
    }
    inline bool operator!=(IconId const& left, IconId const& right) noexcept
    {
        return !(left == right);
    }
    struct WindowId
    {
        uint64_t Value {};
    };
    inline bool operator==(WindowId const& left, WindowId const& right) noexcept
    {
        return left.Value == right.Value;
    }
    inline bool operator!=(WindowId const& left, WindowId const& right) noexcept
    {
        return !(left == right);
    }
    struct WINRT_IMPL_EMPTY_BASES ColorHelper : winrt::Microsoft::UI::IColorHelper
    {
        ColorHelper(std::nullptr_t) noexcept {}
        ColorHelper(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::UI::IColorHelper(ptr, take_ownership_from_abi) {}
        static auto FromArgb(uint8_t a, uint8_t r, uint8_t g, uint8_t b);
        static auto ToDisplayName(winrt::Windows::UI::Color const& color);
    };
    struct WINRT_IMPL_EMPTY_BASES Colors : winrt::Microsoft::UI::IColors
    {
        Colors(std::nullptr_t) noexcept {}
        Colors(void* ptr, take_ownership_from_abi_t) noexcept : winrt::Microsoft::UI::IColors(ptr, take_ownership_from_abi) {}
        [[nodiscard]] static auto AliceBlue();
        [[nodiscard]] static auto AntiqueWhite();
        [[nodiscard]] static auto Aqua();
        [[nodiscard]] static auto Aquamarine();
        [[nodiscard]] static auto Azure();
        [[nodiscard]] static auto Beige();
        [[nodiscard]] static auto Bisque();
        [[nodiscard]] static auto Black();
        [[nodiscard]] static auto BlanchedAlmond();
        [[nodiscard]] static auto Blue();
        [[nodiscard]] static auto BlueViolet();
        [[nodiscard]] static auto Brown();
        [[nodiscard]] static auto BurlyWood();
        [[nodiscard]] static auto CadetBlue();
        [[nodiscard]] static auto Chartreuse();
        [[nodiscard]] static auto Chocolate();
        [[nodiscard]] static auto Coral();
        [[nodiscard]] static auto CornflowerBlue();
        [[nodiscard]] static auto Cornsilk();
        [[nodiscard]] static auto Crimson();
        [[nodiscard]] static auto Cyan();
        [[nodiscard]] static auto DarkBlue();
        [[nodiscard]] static auto DarkCyan();
        [[nodiscard]] static auto DarkGoldenrod();
        [[nodiscard]] static auto DarkGray();
        [[nodiscard]] static auto DarkGreen();
        [[nodiscard]] static auto DarkKhaki();
        [[nodiscard]] static auto DarkMagenta();
        [[nodiscard]] static auto DarkOliveGreen();
        [[nodiscard]] static auto DarkOrange();
        [[nodiscard]] static auto DarkOrchid();
        [[nodiscard]] static auto DarkRed();
        [[nodiscard]] static auto DarkSalmon();
        [[nodiscard]] static auto DarkSeaGreen();
        [[nodiscard]] static auto DarkSlateBlue();
        [[nodiscard]] static auto DarkSlateGray();
        [[nodiscard]] static auto DarkTurquoise();
        [[nodiscard]] static auto DarkViolet();
        [[nodiscard]] static auto DeepPink();
        [[nodiscard]] static auto DeepSkyBlue();
        [[nodiscard]] static auto DimGray();
        [[nodiscard]] static auto DodgerBlue();
        [[nodiscard]] static auto Firebrick();
        [[nodiscard]] static auto FloralWhite();
        [[nodiscard]] static auto ForestGreen();
        [[nodiscard]] static auto Fuchsia();
        [[nodiscard]] static auto Gainsboro();
        [[nodiscard]] static auto GhostWhite();
        [[nodiscard]] static auto Gold();
        [[nodiscard]] static auto Goldenrod();
        [[nodiscard]] static auto Gray();
        [[nodiscard]] static auto Green();
        [[nodiscard]] static auto GreenYellow();
        [[nodiscard]] static auto Honeydew();
        [[nodiscard]] static auto HotPink();
        [[nodiscard]] static auto IndianRed();
        [[nodiscard]] static auto Indigo();
        [[nodiscard]] static auto Ivory();
        [[nodiscard]] static auto Khaki();
        [[nodiscard]] static auto Lavender();
        [[nodiscard]] static auto LavenderBlush();
        [[nodiscard]] static auto LawnGreen();
        [[nodiscard]] static auto LemonChiffon();
        [[nodiscard]] static auto LightBlue();
        [[nodiscard]] static auto LightCoral();
        [[nodiscard]] static auto LightCyan();
        [[nodiscard]] static auto LightGoldenrodYellow();
        [[nodiscard]] static auto LightGreen();
        [[nodiscard]] static auto LightGray();
        [[nodiscard]] static auto LightPink();
        [[nodiscard]] static auto LightSalmon();
        [[nodiscard]] static auto LightSeaGreen();
        [[nodiscard]] static auto LightSkyBlue();
        [[nodiscard]] static auto LightSlateGray();
        [[nodiscard]] static auto LightSteelBlue();
        [[nodiscard]] static auto LightYellow();
        [[nodiscard]] static auto Lime();
        [[nodiscard]] static auto LimeGreen();
        [[nodiscard]] static auto Linen();
        [[nodiscard]] static auto Magenta();
        [[nodiscard]] static auto Maroon();
        [[nodiscard]] static auto MediumAquamarine();
        [[nodiscard]] static auto MediumBlue();
        [[nodiscard]] static auto MediumOrchid();
        [[nodiscard]] static auto MediumPurple();
        [[nodiscard]] static auto MediumSeaGreen();
        [[nodiscard]] static auto MediumSlateBlue();
        [[nodiscard]] static auto MediumSpringGreen();
        [[nodiscard]] static auto MediumTurquoise();
        [[nodiscard]] static auto MediumVioletRed();
        [[nodiscard]] static auto MidnightBlue();
        [[nodiscard]] static auto MintCream();
        [[nodiscard]] static auto MistyRose();
        [[nodiscard]] static auto Moccasin();
        [[nodiscard]] static auto NavajoWhite();
        [[nodiscard]] static auto Navy();
        [[nodiscard]] static auto OldLace();
        [[nodiscard]] static auto Olive();
        [[nodiscard]] static auto OliveDrab();
        [[nodiscard]] static auto Orange();
        [[nodiscard]] static auto OrangeRed();
        [[nodiscard]] static auto Orchid();
        [[nodiscard]] static auto PaleGoldenrod();
        [[nodiscard]] static auto PaleGreen();
        [[nodiscard]] static auto PaleTurquoise();
        [[nodiscard]] static auto PaleVioletRed();
        [[nodiscard]] static auto PapayaWhip();
        [[nodiscard]] static auto PeachPuff();
        [[nodiscard]] static auto Peru();
        [[nodiscard]] static auto Pink();
        [[nodiscard]] static auto Plum();
        [[nodiscard]] static auto PowderBlue();
        [[nodiscard]] static auto Purple();
        [[nodiscard]] static auto Red();
        [[nodiscard]] static auto RosyBrown();
        [[nodiscard]] static auto RoyalBlue();
        [[nodiscard]] static auto SaddleBrown();
        [[nodiscard]] static auto Salmon();
        [[nodiscard]] static auto SandyBrown();
        [[nodiscard]] static auto SeaGreen();
        [[nodiscard]] static auto SeaShell();
        [[nodiscard]] static auto Sienna();
        [[nodiscard]] static auto Silver();
        [[nodiscard]] static auto SkyBlue();
        [[nodiscard]] static auto SlateBlue();
        [[nodiscard]] static auto SlateGray();
        [[nodiscard]] static auto Snow();
        [[nodiscard]] static auto SpringGreen();
        [[nodiscard]] static auto SteelBlue();
        [[nodiscard]] static auto Tan();
        [[nodiscard]] static auto Teal();
        [[nodiscard]] static auto Thistle();
        [[nodiscard]] static auto Tomato();
        [[nodiscard]] static auto Transparent();
        [[nodiscard]] static auto Turquoise();
        [[nodiscard]] static auto Violet();
        [[nodiscard]] static auto Wheat();
        [[nodiscard]] static auto White();
        [[nodiscard]] static auto WhiteSmoke();
        [[nodiscard]] static auto Yellow();
        [[nodiscard]] static auto YellowGreen();
    };
}
#endif
