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

#pragma once
#ifndef WINRT_Microsoft_UI_Xaml_Automation_0_H
#define WINRT_Microsoft_UI_Xaml_Automation_0_H
WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml
{
    struct DependencyObject;
    struct DependencyProperty;
    struct UIElement;
}
WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml::Automation::Peers
{
    enum class AccessibilityView : int32_t;
    enum class AutomationControlType : int32_t;
    enum class AutomationHeadingLevel : int32_t;
    enum class AutomationLandmarkType : int32_t;
    enum class AutomationLiveSetting : int32_t;
}
WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml::Automation
{
    enum class AnnotationType : int32_t
    {
        Unknown = 60000,
        SpellingError = 60001,
        GrammarError = 60002,
        Comment = 60003,
        FormulaError = 60004,
        TrackChanges = 60005,
        Header = 60006,
        Footer = 60007,
        Highlighted = 60008,
        Endnote = 60009,
        Footnote = 60010,
        InsertionChange = 60011,
        DeletionChange = 60012,
        MoveChange = 60013,
        FormatChange = 60014,
        UnsyncedChange = 60015,
        EditingLockedChange = 60016,
        ExternalChange = 60017,
        ConflictingChange = 60018,
        Author = 60019,
        AdvancedProofingIssue = 60020,
        DataValidationError = 60021,
        CircularReferenceError = 60022,
    };
    enum class AutomationActiveEnd : int32_t
    {
        None = 0,
        Start = 1,
        End = 2,
    };
    enum class AutomationAnimationStyle : int32_t
    {
        None = 0,
        LasVegasLights = 1,
        BlinkingBackground = 2,
        SparkleText = 3,
        MarchingBlackAnts = 4,
        MarchingRedAnts = 5,
        Shimmer = 6,
        Other = 7,
    };
    enum class AutomationBulletStyle : int32_t
    {
        None = 0,
        HollowRoundBullet = 1,
        FilledRoundBullet = 2,
        HollowSquareBullet = 3,
        FilledSquareBullet = 4,
        DashBullet = 5,
        Other = 6,
    };
    enum class AutomationCaretBidiMode : int32_t
    {
        LTR = 0,
        RTL = 1,
    };
    enum class AutomationCaretPosition : int32_t
    {
        Unknown = 0,
        EndOfLine = 1,
        BeginningOfLine = 2,
    };
    enum class AutomationFlowDirections : int32_t
    {
        Default = 0,
        RightToLeft = 1,
        BottomToTop = 2,
        Vertical = 3,
    };
    enum class AutomationOutlineStyles : int32_t
    {
        None = 0,
        Outline = 1,
        Shadow = 2,
        Engraved = 3,
        Embossed = 4,
    };
    enum class AutomationStyleId : int32_t
    {
        Heading1 = 70001,
        Heading2 = 70002,
        Heading3 = 70003,
        Heading4 = 70004,
        Heading5 = 70005,
        Heading6 = 70006,
        Heading7 = 70007,
        Heading8 = 70008,
        Heading9 = 70009,
        Title = 70010,
        Subtitle = 70011,
        Normal = 70012,
        Emphasis = 70013,
        Quote = 70014,
        BulletedList = 70015,
    };
    enum class AutomationTextDecorationLineStyle : int32_t
    {
        None = 0,
        Single = 1,
        WordsOnly = 2,
        Double = 3,
        Dot = 4,
        Dash = 5,
        DashDot = 6,
        DashDotDot = 7,
        Wavy = 8,
        ThickSingle = 9,
        DoubleWavy = 10,
        ThickWavy = 11,
        LongDash = 12,
        ThickDash = 13,
        ThickDashDot = 14,
        ThickDashDotDot = 15,
        ThickDot = 16,
        ThickLongDash = 17,
        Other = 18,
    };
    enum class AutomationTextEditChangeType : int32_t
    {
        None = 0,
        AutoCorrect = 1,
        Composition = 2,
        CompositionFinalized = 3,
    };
    enum class DockPosition : int32_t
    {
        Top = 0,
        Left = 1,
        Bottom = 2,
        Right = 3,
        Fill = 4,
        None = 5,
    };
    enum class ExpandCollapseState : int32_t
    {
        Collapsed = 0,
        Expanded = 1,
        PartiallyExpanded = 2,
        LeafNode = 3,
    };
    enum class RowOrColumnMajor : int32_t
    {
        RowMajor = 0,
        ColumnMajor = 1,
        Indeterminate = 2,
    };
    enum class ScrollAmount : int32_t
    {
        LargeDecrement = 0,
        SmallDecrement = 1,
        NoAmount = 2,
        LargeIncrement = 3,
        SmallIncrement = 4,
    };
    enum class SupportedTextSelection : int32_t
    {
        None = 0,
        Single = 1,
        Multiple = 2,
    };
    enum class SynchronizedInputType : int32_t
    {
        KeyUp = 1,
        KeyDown = 2,
        LeftMouseUp = 4,
        LeftMouseDown = 8,
        RightMouseUp = 16,
        RightMouseDown = 32,
    };
    enum class ToggleState : int32_t
    {
        Off = 0,
        On = 1,
        Indeterminate = 2,
    };
    enum class WindowInteractionState : int32_t
    {
        Running = 0,
        Closing = 1,
        ReadyForUserInteraction = 2,
        BlockedByModalWindow = 3,
        NotResponding = 4,
    };
    enum class WindowVisualState : int32_t
    {
        Normal = 0,
        Maximized = 1,
        Minimized = 2,
    };
    enum class ZoomUnit : int32_t
    {
        NoAmount = 0,
        LargeDecrement = 1,
        SmallDecrement = 2,
        LargeIncrement = 3,
        SmallIncrement = 4,
    };
    struct IAnnotationPatternIdentifiers;
    struct IAnnotationPatternIdentifiersStatics;
    struct IAutomationAnnotation;
    struct IAutomationAnnotationFactory;
    struct IAutomationAnnotationStatics;
    struct IAutomationElementIdentifiers;
    struct IAutomationElementIdentifiersStatics;
    struct IAutomationProperties;
    struct IAutomationPropertiesStatics;
    struct IAutomationPropertiesStatics2;
    struct IAutomationProperty;
    struct IDockPatternIdentifiers;
    struct IDockPatternIdentifiersStatics;
    struct IDragPatternIdentifiers;
    struct IDragPatternIdentifiersStatics;
    struct IDropTargetPatternIdentifiers;
    struct IDropTargetPatternIdentifiersStatics;
    struct IExpandCollapsePatternIdentifiers;
    struct IExpandCollapsePatternIdentifiersStatics;
    struct IGridItemPatternIdentifiers;
    struct IGridItemPatternIdentifiersStatics;
    struct IGridPatternIdentifiers;
    struct IGridPatternIdentifiersStatics;
    struct IMultipleViewPatternIdentifiers;
    struct IMultipleViewPatternIdentifiersStatics;
    struct IRangeValuePatternIdentifiers;
    struct IRangeValuePatternIdentifiersStatics;
    struct IScrollPatternIdentifiers;
    struct IScrollPatternIdentifiersStatics;
    struct ISelectionItemPatternIdentifiers;
    struct ISelectionItemPatternIdentifiersStatics;
    struct ISelectionPatternIdentifiers;
    struct ISelectionPatternIdentifiersStatics;
    struct ISpreadsheetItemPatternIdentifiers;
    struct ISpreadsheetItemPatternIdentifiersStatics;
    struct IStylesPatternIdentifiers;
    struct IStylesPatternIdentifiersStatics;
    struct ITableItemPatternIdentifiers;
    struct ITableItemPatternIdentifiersStatics;
    struct ITablePatternIdentifiers;
    struct ITablePatternIdentifiersStatics;
    struct ITogglePatternIdentifiers;
    struct ITogglePatternIdentifiersStatics;
    struct ITransformPattern2Identifiers;
    struct ITransformPattern2IdentifiersStatics;
    struct ITransformPatternIdentifiers;
    struct ITransformPatternIdentifiersStatics;
    struct IValuePatternIdentifiers;
    struct IValuePatternIdentifiersStatics;
    struct IWindowPatternIdentifiers;
    struct IWindowPatternIdentifiersStatics;
    struct AnnotationPatternIdentifiers;
    struct AutomationAnnotation;
    struct AutomationElementIdentifiers;
    struct AutomationProperties;
    struct AutomationProperty;
    struct DockPatternIdentifiers;
    struct DragPatternIdentifiers;
    struct DropTargetPatternIdentifiers;
    struct ExpandCollapsePatternIdentifiers;
    struct GridItemPatternIdentifiers;
    struct GridPatternIdentifiers;
    struct MultipleViewPatternIdentifiers;
    struct RangeValuePatternIdentifiers;
    struct ScrollPatternIdentifiers;
    struct SelectionItemPatternIdentifiers;
    struct SelectionPatternIdentifiers;
    struct SpreadsheetItemPatternIdentifiers;
    struct StylesPatternIdentifiers;
    struct TableItemPatternIdentifiers;
    struct TablePatternIdentifiers;
    struct TogglePatternIdentifiers;
    struct TransformPattern2Identifiers;
    struct TransformPatternIdentifiers;
    struct ValuePatternIdentifiers;
    struct WindowPatternIdentifiers;
}
namespace winrt::impl
{
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotation>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperties>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics2>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperty>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2Identifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2IdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiers>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiersStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AnnotationPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationAnnotation>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationElementIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationProperties>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationProperty>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::DockPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::DragPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::DropTargetPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ExpandCollapsePatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::GridItemPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::GridPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::MultipleViewPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::RangeValuePatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ScrollPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::SelectionItemPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::SelectionPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::SpreadsheetItemPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::StylesPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::TableItemPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::TablePatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::TogglePatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::TransformPattern2Identifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::TransformPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ValuePatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::WindowPatternIdentifiers>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AnnotationType>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationActiveEnd>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationAnimationStyle>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationBulletStyle>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationCaretBidiMode>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationCaretPosition>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationFlowDirections>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationOutlineStyles>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationStyleId>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationTextDecorationLineStyle>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::AutomationTextEditChangeType>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::DockPosition>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ExpandCollapseState>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::RowOrColumnMajor>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ScrollAmount>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::SupportedTextSelection>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::SynchronizedInputType>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ToggleState>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::WindowInteractionState>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::WindowVisualState>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Automation::ZoomUnit>{ using type = enum_category; };
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AnnotationPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.AnnotationPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationAnnotation> = L"Microsoft.UI.Xaml.Automation.AutomationAnnotation";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationElementIdentifiers> = L"Microsoft.UI.Xaml.Automation.AutomationElementIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationProperties> = L"Microsoft.UI.Xaml.Automation.AutomationProperties";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationProperty> = L"Microsoft.UI.Xaml.Automation.AutomationProperty";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::DockPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.DockPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::DragPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.DragPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::DropTargetPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.DropTargetPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ExpandCollapsePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ExpandCollapsePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::GridItemPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.GridItemPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::GridPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.GridPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::MultipleViewPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.MultipleViewPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::RangeValuePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.RangeValuePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ScrollPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ScrollPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::SelectionItemPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.SelectionItemPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::SelectionPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.SelectionPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::SpreadsheetItemPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.SpreadsheetItemPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::StylesPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.StylesPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::TableItemPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.TableItemPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::TablePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.TablePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::TogglePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.TogglePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::TransformPattern2Identifiers> = L"Microsoft.UI.Xaml.Automation.TransformPattern2Identifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::TransformPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.TransformPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ValuePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ValuePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::WindowPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.WindowPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AnnotationType> = L"Microsoft.UI.Xaml.Automation.AnnotationType";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationActiveEnd> = L"Microsoft.UI.Xaml.Automation.AutomationActiveEnd";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationAnimationStyle> = L"Microsoft.UI.Xaml.Automation.AutomationAnimationStyle";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationBulletStyle> = L"Microsoft.UI.Xaml.Automation.AutomationBulletStyle";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationCaretBidiMode> = L"Microsoft.UI.Xaml.Automation.AutomationCaretBidiMode";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationCaretPosition> = L"Microsoft.UI.Xaml.Automation.AutomationCaretPosition";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationFlowDirections> = L"Microsoft.UI.Xaml.Automation.AutomationFlowDirections";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationOutlineStyles> = L"Microsoft.UI.Xaml.Automation.AutomationOutlineStyles";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationStyleId> = L"Microsoft.UI.Xaml.Automation.AutomationStyleId";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationTextDecorationLineStyle> = L"Microsoft.UI.Xaml.Automation.AutomationTextDecorationLineStyle";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::AutomationTextEditChangeType> = L"Microsoft.UI.Xaml.Automation.AutomationTextEditChangeType";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::DockPosition> = L"Microsoft.UI.Xaml.Automation.DockPosition";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ExpandCollapseState> = L"Microsoft.UI.Xaml.Automation.ExpandCollapseState";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::RowOrColumnMajor> = L"Microsoft.UI.Xaml.Automation.RowOrColumnMajor";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ScrollAmount> = L"Microsoft.UI.Xaml.Automation.ScrollAmount";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::SupportedTextSelection> = L"Microsoft.UI.Xaml.Automation.SupportedTextSelection";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::SynchronizedInputType> = L"Microsoft.UI.Xaml.Automation.SynchronizedInputType";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ToggleState> = L"Microsoft.UI.Xaml.Automation.ToggleState";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::WindowInteractionState> = L"Microsoft.UI.Xaml.Automation.WindowInteractionState";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::WindowVisualState> = L"Microsoft.UI.Xaml.Automation.WindowVisualState";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ZoomUnit> = L"Microsoft.UI.Xaml.Automation.ZoomUnit";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IAnnotationPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IAnnotationPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotation> = L"Microsoft.UI.Xaml.Automation.IAutomationAnnotation";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationFactory> = L"Microsoft.UI.Xaml.Automation.IAutomationAnnotationFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationStatics> = L"Microsoft.UI.Xaml.Automation.IAutomationAnnotationStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiers> = L"Microsoft.UI.Xaml.Automation.IAutomationElementIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IAutomationElementIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperties> = L"Microsoft.UI.Xaml.Automation.IAutomationProperties";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics> = L"Microsoft.UI.Xaml.Automation.IAutomationPropertiesStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics2> = L"Microsoft.UI.Xaml.Automation.IAutomationPropertiesStatics2";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperty> = L"Microsoft.UI.Xaml.Automation.IAutomationProperty";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IDockPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IDockPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IDragPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IDragPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IDropTargetPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IDropTargetPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IExpandCollapsePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IExpandCollapsePatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IGridItemPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IGridItemPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IGridPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IGridPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IMultipleViewPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IMultipleViewPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IRangeValuePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IRangeValuePatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IScrollPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IScrollPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ISelectionItemPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.ISelectionItemPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ISelectionPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.ISelectionPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ISpreadsheetItemPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.ISpreadsheetItemPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IStylesPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IStylesPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ITableItemPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.ITableItemPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ITablePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.ITablePatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ITogglePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.ITogglePatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2Identifiers> = L"Microsoft.UI.Xaml.Automation.ITransformPattern2Identifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2IdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.ITransformPattern2IdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.ITransformPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.ITransformPatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IValuePatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IValuePatternIdentifiersStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiers> = L"Microsoft.UI.Xaml.Automation.IWindowPatternIdentifiers";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiersStatics> = L"Microsoft.UI.Xaml.Automation.IWindowPatternIdentifiersStatics";
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiers>{ 0x92D76915,0x0CD3,0x59CD,{ 0x8A,0xE0,0xC9,0x00,0x46,0x28,0xBA,0x1E } }; // 92D76915-0CD3-59CD-8AE0-C9004628BA1E
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiersStatics>{ 0x20A136E2,0x4A47,0x5DE5,{ 0x9E,0x1E,0xEC,0xFC,0x6D,0x92,0xF5,0x2A } }; // 20A136E2-4A47-5DE5-9E1E-ECFC6D92F52A
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotation>{ 0xC2CC46AD,0x1414,0x5F1B,{ 0x80,0x8A,0x89,0xE5,0xD5,0x3D,0x82,0xFE } }; // C2CC46AD-1414-5F1B-808A-89E5D53D82FE
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationFactory>{ 0x95F82773,0xEAC5,0x572E,{ 0x87,0xDE,0x24,0xD9,0x51,0x4B,0x9A,0x89 } }; // 95F82773-EAC5-572E-87DE-24D9514B9A89
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationStatics>{ 0xC5ABDC1E,0xFC26,0x5444,{ 0xA8,0xB3,0x59,0xB2,0xC0,0xA9,0x55,0x78 } }; // C5ABDC1E-FC26-5444-A8B3-59B2C0A95578
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiers>{ 0x2FB51A33,0xB0CF,0x5A4C,{ 0x9E,0xD3,0x26,0x7E,0xCA,0x7A,0xEE,0xFC } }; // 2FB51A33-B0CF-5A4C-9ED3-267ECA7AEEFC
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiersStatics>{ 0x72AF6B8C,0x3E12,0x5E7A,{ 0xA2,0xEC,0x26,0xDC,0x19,0x3F,0x9D,0xF9 } }; // 72AF6B8C-3E12-5E7A-A2EC-26DC193F9DF9
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperties>{ 0x525C6A71,0xDD8A,0x52A0,{ 0x97,0x7B,0xDB,0x1B,0x02,0xF8,0xE8,0x96 } }; // 525C6A71-DD8A-52A0-977B-DB1B02F8E896
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics>{ 0xB1E3E0F3,0x112F,0x5966,{ 0x87,0xDC,0x78,0x62,0xD4,0xAD,0x50,0xE5 } }; // B1E3E0F3-112F-5966-87DC-7862D4AD50E5
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics2>{ 0xD933A3ED,0xE90A,0x5DF0,{ 0x85,0x3D,0xCA,0xD1,0x7A,0x0B,0x9E,0xC8 } }; // D933A3ED-E90A-5DF0-853D-CAD17A0B9EC8
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperty>{ 0x5CA6B2C8,0xFF86,0x5A41,{ 0xAA,0x18,0x69,0x48,0xFA,0xE5,0x92,0xCF } }; // 5CA6B2C8-FF86-5A41-AA18-6948FAE592CF
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiers>{ 0x75574F99,0xD145,0x547E,{ 0x97,0x2B,0x7D,0x87,0x9F,0x93,0xC0,0x3E } }; // 75574F99-D145-547E-972B-7D879F93C03E
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiersStatics>{ 0x02D5A72C,0xF49D,0x53A9,{ 0xB9,0xFB,0xAF,0x27,0x19,0xD1,0x6C,0xCF } }; // 02D5A72C-F49D-53A9-B9FB-AF2719D16CCF
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiers>{ 0xAA2FDFD5,0xFB45,0x5D2B,{ 0x8D,0x92,0xA8,0xE7,0xB0,0x70,0x61,0xC2 } }; // AA2FDFD5-FB45-5D2B-8D92-A8E7B07061C2
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiersStatics>{ 0x482EEE70,0x0BFC,0x5552,{ 0x9E,0x7D,0x8D,0xFF,0xC5,0x26,0xB2,0xF7 } }; // 482EEE70-0BFC-5552-9E7D-8DFFC526B2F7
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiers>{ 0x133E8FF3,0x1DDD,0x5CBB,{ 0xB9,0x08,0x14,0x84,0xD7,0xC0,0x4D,0xA7 } }; // 133E8FF3-1DDD-5CBB-B908-1484D7C04DA7
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiersStatics>{ 0x6DA6F0BD,0xB942,0x5283,{ 0xBE,0x35,0x50,0x1A,0xE8,0x7F,0x88,0xC7 } }; // 6DA6F0BD-B942-5283-BE35-501AE87F88C7
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiers>{ 0xCEC15D9F,0x8630,0x569A,{ 0x86,0xA0,0x52,0x4B,0xBE,0xA6,0x18,0xFF } }; // CEC15D9F-8630-569A-86A0-524BBEA618FF
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiersStatics>{ 0x283101F4,0xC40C,0x55BF,{ 0xA2,0x3B,0xD6,0x2B,0x73,0xB6,0xAA,0x35 } }; // 283101F4-C40C-55BF-A23B-D62B73B6AA35
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiers>{ 0x93609087,0x1114,0x557D,{ 0xB1,0x7B,0xF8,0x01,0xE4,0x1C,0xEB,0xBB } }; // 93609087-1114-557D-B17B-F801E41CEBBB
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiersStatics>{ 0x8072BC18,0x87D0,0x5A02,{ 0xA0,0xA1,0xF9,0xAE,0xC9,0x68,0xC0,0xE7 } }; // 8072BC18-87D0-5A02-A0A1-F9AEC968C0E7
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiers>{ 0xE5E1E250,0xC37C,0x54A2,{ 0x8C,0x61,0x1D,0x9C,0xCD,0x3B,0xB3,0x9C } }; // E5E1E250-C37C-54A2-8C61-1D9CCD3BB39C
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiersStatics>{ 0xE861604C,0x101F,0x5A6D,{ 0xA3,0x08,0x37,0x14,0xF5,0x10,0xF7,0x44 } }; // E861604C-101F-5A6D-A308-3714F510F744
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiers>{ 0x70E4C847,0x2B82,0x5ECF,{ 0xB8,0x08,0xE9,0xD4,0x53,0xC1,0xFE,0x53 } }; // 70E4C847-2B82-5ECF-B808-E9D453C1FE53
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiersStatics>{ 0xAC71DAEF,0xD094,0x5C90,{ 0x94,0xAF,0x1F,0xA4,0x74,0xAB,0x45,0xFE } }; // AC71DAEF-D094-5C90-94AF-1FA474AB45FE
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiers>{ 0xC114DB37,0x6A75,0x5EF1,{ 0xA5,0x42,0xD3,0xB1,0x3F,0x92,0xCB,0xFE } }; // C114DB37-6A75-5EF1-A542-D3B13F92CBFE
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiersStatics>{ 0x0AAA9AD7,0xF9B8,0x52A1,{ 0xBC,0x96,0x2A,0x97,0xFE,0x38,0x9E,0xD0 } }; // 0AAA9AD7-F9B8-52A1-BC96-2A97FE389ED0
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiers>{ 0x04F1A4B8,0xEDC7,0x55F2,{ 0x96,0xDF,0xA9,0xC7,0xE8,0x09,0x37,0x2E } }; // 04F1A4B8-EDC7-55F2-96DF-A9C7E809372E
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiersStatics>{ 0x0F94F2F0,0xE0D2,0x5A24,{ 0xB4,0x15,0x8D,0x15,0x06,0xCE,0x47,0xAA } }; // 0F94F2F0-E0D2-5A24-B415-8D1506CE47AA
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiers>{ 0xCE3A549D,0xA2CB,0x594D,{ 0xA2,0xA4,0x44,0x77,0x8C,0x09,0xCC,0xA5 } }; // CE3A549D-A2CB-594D-A2A4-44778C09CCA5
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiersStatics>{ 0x2B8EAD7C,0x4E03,0x5B84,{ 0x9E,0x34,0x8B,0x73,0x84,0xCB,0xD8,0x62 } }; // 2B8EAD7C-4E03-5B84-9E34-8B7384CBD862
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiers>{ 0x401743D2,0x1FBA,0x5D05,{ 0xB8,0x9F,0x63,0x16,0x76,0x45,0x32,0x37 } }; // 401743D2-1FBA-5D05-B89F-631676453237
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiersStatics>{ 0xF3ED111B,0xB20A,0x5E5E,{ 0xA2,0x32,0x07,0xF6,0x07,0xFD,0x5C,0x07 } }; // F3ED111B-B20A-5E5E-A232-07F607FD5C07
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiers>{ 0xDCA2EC46,0x8564,0x5C9C,{ 0xBA,0x90,0x2C,0x08,0x45,0x5F,0x69,0x7B } }; // DCA2EC46-8564-5C9C-BA90-2C08455F697B
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiersStatics>{ 0x7EB10F80,0x8D3A,0x59AD,{ 0xA2,0xB9,0x05,0xD8,0xCE,0xCF,0x18,0xDB } }; // 7EB10F80-8D3A-59AD-A2B9-05D8CECF18DB
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiers>{ 0x13AECA5E,0xB496,0x5DF5,{ 0xAE,0xA5,0x33,0x0E,0x1F,0x04,0x90,0xEB } }; // 13AECA5E-B496-5DF5-AEA5-330E1F0490EB
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiersStatics>{ 0xB232287A,0xBC4C,0x581E,{ 0xA3,0x3C,0x3D,0x6A,0xEE,0x10,0xD0,0x4B } }; // B232287A-BC4C-581E-A33C-3D6AEE10D04B
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiers>{ 0xB4DE5D03,0xA5B4,0x5CA1,{ 0x87,0x15,0x16,0xC8,0xC6,0xA1,0x0F,0xCC } }; // B4DE5D03-A5B4-5CA1-8715-16C8C6A10FCC
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiersStatics>{ 0x81D24BD7,0x66FB,0x53EF,{ 0x9B,0x32,0xD0,0x0F,0x9C,0x24,0x0A,0x14 } }; // 81D24BD7-66FB-53EF-9B32-D00F9C240A14
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiers>{ 0x3D7F9C0B,0xFF8F,0x50FA,{ 0xBC,0x01,0x2C,0xC3,0xC2,0xE0,0x6E,0x2C } }; // 3D7F9C0B-FF8F-50FA-BC01-2CC3C2E06E2C
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiersStatics>{ 0x3660935E,0xBCBB,0x5848,{ 0x8E,0x9A,0x26,0x48,0x54,0xF7,0xA1,0x9A } }; // 3660935E-BCBB-5848-8E9A-264854F7A19A
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiers>{ 0xA0D2DF4C,0xBA59,0x51D9,{ 0x9C,0x01,0x03,0x4D,0x79,0x41,0xC2,0x80 } }; // A0D2DF4C-BA59-51D9-9C01-034D7941C280
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiersStatics>{ 0x862920B5,0xDCB3,0x5691,{ 0xA4,0x56,0xC2,0xF1,0x5C,0x47,0x6D,0xFB } }; // 862920B5-DCB3-5691-A456-C2F15C476DFB
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2Identifiers>{ 0x6EF7595C,0xDB8C,0x51B0,{ 0x87,0x8B,0x34,0xB7,0xEF,0x12,0xF4,0xDA } }; // 6EF7595C-DB8C-51B0-878B-34B7EF12F4DA
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2IdentifiersStatics>{ 0xD9876FF5,0x89ED,0x5333,{ 0x81,0x11,0xAD,0x25,0xA2,0x8B,0xEE,0x8B } }; // D9876FF5-89ED-5333-8111-AD25A28BEE8B
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiers>{ 0x2348187B,0xC50F,0x5A0E,{ 0xBC,0x05,0x30,0x5A,0xC7,0x1B,0x3B,0x6B } }; // 2348187B-C50F-5A0E-BC05-305AC71B3B6B
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiersStatics>{ 0xCB7D84E4,0x5429,0x5188,{ 0x8A,0xA0,0x5F,0x96,0x55,0x8A,0x87,0x90 } }; // CB7D84E4-5429-5188-8AA0-5F96558A8790
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiers>{ 0xFB493395,0xFB97,0x59D5,{ 0x93,0x23,0x46,0x51,0xCE,0x96,0x4B,0x55 } }; // FB493395-FB97-59D5-9323-4651CE964B55
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiersStatics>{ 0x2019FAF5,0xCE64,0x59A7,{ 0xBC,0x13,0x06,0x77,0xC3,0x14,0x67,0x24 } }; // 2019FAF5-CE64-59A7-BC13-0677C3146724
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiers>{ 0xBEC579E1,0x91BE,0x5D8F,{ 0xAA,0xCA,0x6A,0xD8,0x83,0x98,0x72,0xD2 } }; // BEC579E1-91BE-5D8F-AACA-6AD8839872D2
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiersStatics>{ 0x06762744,0xD3D7,0x5441,{ 0xB8,0x79,0x37,0x36,0x81,0xD4,0x7F,0x64 } }; // 06762744-D3D7-5441-B879-373681D47F64
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::AnnotationPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::AutomationAnnotation>{ using type = winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotation; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::AutomationElementIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::AutomationProperties>{ using type = winrt::Microsoft::UI::Xaml::Automation::IAutomationProperties; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::AutomationProperty>{ using type = winrt::Microsoft::UI::Xaml::Automation::IAutomationProperty; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::DockPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::DragPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::DropTargetPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::ExpandCollapsePatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::GridItemPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::GridPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::MultipleViewPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::RangeValuePatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::ScrollPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::SelectionItemPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::SelectionPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::SpreadsheetItemPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::StylesPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::TableItemPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::TablePatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::TogglePatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::TransformPattern2Identifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2Identifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::TransformPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::ValuePatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiers; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Automation::WindowPatternIdentifiers>{ using type = winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiers; };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_AnnotationTypeIdProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_AnnotationTypeNameProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_AuthorProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_DateTimeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_TargetProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotation>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Type(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_Type(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_Element(void**) noexcept = 0;
            virtual int32_t __stdcall put_Element(void*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateInstance(int32_t, void**) noexcept = 0;
            virtual int32_t __stdcall CreateWithElementParameter(int32_t, void*, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_TypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ElementProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_AcceleratorKeyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_AccessKeyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_AutomationIdProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_BoundingRectangleProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ClassNameProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ClickablePointProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ControlTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_HasKeyboardFocusProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_HelpTextProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsContentElementProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsControlElementProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsEnabledProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsKeyboardFocusableProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsOffscreenProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsPasswordProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsRequiredForFormProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ItemStatusProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ItemTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LabeledByProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LocalizedControlTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_NameProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_OrientationProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LiveSettingProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ControlledPeersProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_PositionInSetProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_SizeOfSetProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LevelProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_AnnotationsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LandmarkTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LocalizedLandmarkTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsPeripheralProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsDataValidForFormProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FullDescriptionProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_DescribedByProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FlowsToProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FlowsFromProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_CultureProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_HeadingLevelProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsDialogProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperties>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_AcceleratorKeyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetAcceleratorKey(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetAcceleratorKey(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_AccessKeyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetAccessKey(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetAccessKey(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_AutomationIdProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetAutomationId(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetAutomationId(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_HelpTextProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetHelpText(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetHelpText(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_IsRequiredForFormProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetIsRequiredForForm(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetIsRequiredForForm(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_ItemStatusProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetItemStatus(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetItemStatus(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_ItemTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetItemType(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetItemType(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_LabeledByProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetLabeledBy(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetLabeledBy(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_NameProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetName(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetName(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_LiveSettingProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetLiveSetting(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetLiveSetting(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_AccessibilityViewProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetAccessibilityView(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetAccessibilityView(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_ControlledPeersProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetControlledPeers(void*, void**) noexcept = 0;
            virtual int32_t __stdcall get_PositionInSetProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetPositionInSet(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetPositionInSet(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_SizeOfSetProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetSizeOfSet(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetSizeOfSet(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_LevelProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetLevel(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetLevel(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_AnnotationsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetAnnotations(void*, void**) noexcept = 0;
            virtual int32_t __stdcall get_LandmarkTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetLandmarkType(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetLandmarkType(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_LocalizedLandmarkTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetLocalizedLandmarkType(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetLocalizedLandmarkType(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_IsPeripheralProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetIsPeripheral(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetIsPeripheral(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_IsDataValidForFormProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetIsDataValidForForm(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetIsDataValidForForm(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_FullDescriptionProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetFullDescription(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetFullDescription(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_LocalizedControlTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetLocalizedControlType(void*, void**) noexcept = 0;
            virtual int32_t __stdcall SetLocalizedControlType(void*, void*) noexcept = 0;
            virtual int32_t __stdcall get_DescribedByProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetDescribedBy(void*, void**) noexcept = 0;
            virtual int32_t __stdcall get_FlowsToProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetFlowsTo(void*, void**) noexcept = 0;
            virtual int32_t __stdcall get_FlowsFromProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetFlowsFrom(void*, void**) noexcept = 0;
            virtual int32_t __stdcall get_CultureProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetCulture(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetCulture(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_HeadingLevelProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetHeadingLevel(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetHeadingLevel(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_IsDialogProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetIsDialog(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetIsDialog(void*, bool) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics2>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_AutomationControlTypeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetAutomationControlType(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetAutomationControlType(void*, int32_t) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperty>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_DockPositionProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_DropEffectProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_DropEffectsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_GrabbedItemsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsGrabbedProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_DropTargetEffectProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_DropTargetEffectsProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ExpandCollapseStateProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ColumnProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ColumnSpanProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ContainingGridProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_RowProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_RowSpanProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ColumnCountProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_RowCountProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_CurrentViewProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_SupportedViewsProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_IsReadOnlyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LargeChangeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_MaximumProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_MinimumProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_SmallChangeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ValueProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_HorizontallyScrollableProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_HorizontalScrollPercentProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_HorizontalViewSizeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_NoScroll(double*) noexcept = 0;
            virtual int32_t __stdcall get_VerticallyScrollableProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_VerticalScrollPercentProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_VerticalViewSizeProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_IsSelectedProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_SelectionContainerProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_CanSelectMultipleProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsSelectionRequiredProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_SelectionProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_FormulaProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ExtendedPropertiesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FillColorProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FillPatternColorProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FillPatternStyleProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ShapeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_StyleIdProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_StyleNameProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ColumnHeaderItemsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_RowHeaderItemsProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ColumnHeadersProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_RowHeadersProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_RowOrColumnMajorProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ToggleStateProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2Identifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2IdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_CanZoomProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ZoomLevelProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_MaxZoomProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_MinZoomProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_CanMoveProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_CanResizeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_CanRotateProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_IsReadOnlyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ValueProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiers>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiersStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_CanMaximizeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_CanMinimizeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsModalProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsTopmostProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_WindowInteractionStateProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_WindowVisualStateProperty(void**) noexcept = 0;
        };
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAnnotationPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAnnotationPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAnnotationPatternIdentifiersStatics
    {
        [[nodiscard]] auto AnnotationTypeIdProperty() const;
        [[nodiscard]] auto AnnotationTypeNameProperty() const;
        [[nodiscard]] auto AuthorProperty() const;
        [[nodiscard]] auto DateTimeProperty() const;
        [[nodiscard]] auto TargetProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAnnotationPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAnnotationPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationAnnotation
    {
        [[nodiscard]] auto Type() const;
        auto Type(winrt::Microsoft::UI::Xaml::Automation::AnnotationType const& value) const;
        [[nodiscard]] auto Element() const;
        auto Element(winrt::Microsoft::UI::Xaml::UIElement const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotation>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationAnnotation<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationAnnotationFactory
    {
        auto CreateInstance(winrt::Microsoft::UI::Xaml::Automation::AnnotationType const& type) const;
        auto CreateWithElementParameter(winrt::Microsoft::UI::Xaml::Automation::AnnotationType const& type, winrt::Microsoft::UI::Xaml::UIElement const& element) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationFactory>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationAnnotationFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationAnnotationStatics
    {
        [[nodiscard]] auto TypeProperty() const;
        [[nodiscard]] auto ElementProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationAnnotationStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationAnnotationStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationElementIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationElementIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationElementIdentifiersStatics
    {
        [[nodiscard]] auto AcceleratorKeyProperty() const;
        [[nodiscard]] auto AccessKeyProperty() const;
        [[nodiscard]] auto AutomationIdProperty() const;
        [[nodiscard]] auto BoundingRectangleProperty() const;
        [[nodiscard]] auto ClassNameProperty() const;
        [[nodiscard]] auto ClickablePointProperty() const;
        [[nodiscard]] auto ControlTypeProperty() const;
        [[nodiscard]] auto HasKeyboardFocusProperty() const;
        [[nodiscard]] auto HelpTextProperty() const;
        [[nodiscard]] auto IsContentElementProperty() const;
        [[nodiscard]] auto IsControlElementProperty() const;
        [[nodiscard]] auto IsEnabledProperty() const;
        [[nodiscard]] auto IsKeyboardFocusableProperty() const;
        [[nodiscard]] auto IsOffscreenProperty() const;
        [[nodiscard]] auto IsPasswordProperty() const;
        [[nodiscard]] auto IsRequiredForFormProperty() const;
        [[nodiscard]] auto ItemStatusProperty() const;
        [[nodiscard]] auto ItemTypeProperty() const;
        [[nodiscard]] auto LabeledByProperty() const;
        [[nodiscard]] auto LocalizedControlTypeProperty() const;
        [[nodiscard]] auto NameProperty() const;
        [[nodiscard]] auto OrientationProperty() const;
        [[nodiscard]] auto LiveSettingProperty() const;
        [[nodiscard]] auto ControlledPeersProperty() const;
        [[nodiscard]] auto PositionInSetProperty() const;
        [[nodiscard]] auto SizeOfSetProperty() const;
        [[nodiscard]] auto LevelProperty() const;
        [[nodiscard]] auto AnnotationsProperty() const;
        [[nodiscard]] auto LandmarkTypeProperty() const;
        [[nodiscard]] auto LocalizedLandmarkTypeProperty() const;
        [[nodiscard]] auto IsPeripheralProperty() const;
        [[nodiscard]] auto IsDataValidForFormProperty() const;
        [[nodiscard]] auto FullDescriptionProperty() const;
        [[nodiscard]] auto DescribedByProperty() const;
        [[nodiscard]] auto FlowsToProperty() const;
        [[nodiscard]] auto FlowsFromProperty() const;
        [[nodiscard]] auto CultureProperty() const;
        [[nodiscard]] auto HeadingLevelProperty() const;
        [[nodiscard]] auto IsDialogProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationElementIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationElementIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationProperties
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperties>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationProperties<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationPropertiesStatics
    {
        [[nodiscard]] auto AcceleratorKeyProperty() const;
        auto GetAcceleratorKey(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetAcceleratorKey(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto AccessKeyProperty() const;
        auto GetAccessKey(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetAccessKey(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto AutomationIdProperty() const;
        auto GetAutomationId(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetAutomationId(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto HelpTextProperty() const;
        auto GetHelpText(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetHelpText(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto IsRequiredForFormProperty() const;
        auto GetIsRequiredForForm(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetIsRequiredForForm(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto ItemStatusProperty() const;
        auto GetItemStatus(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetItemStatus(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto ItemTypeProperty() const;
        auto GetItemType(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetItemType(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto LabeledByProperty() const;
        auto GetLabeledBy(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetLabeledBy(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::UIElement const& value) const;
        [[nodiscard]] auto NameProperty() const;
        auto GetName(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetName(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto LiveSettingProperty() const;
        auto GetLiveSetting(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetLiveSetting(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::Automation::Peers::AutomationLiveSetting const& value) const;
        [[nodiscard]] auto AccessibilityViewProperty() const;
        auto GetAccessibilityView(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetAccessibilityView(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::Automation::Peers::AccessibilityView const& value) const;
        [[nodiscard]] auto ControlledPeersProperty() const;
        auto GetControlledPeers(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        [[nodiscard]] auto PositionInSetProperty() const;
        auto GetPositionInSet(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetPositionInSet(winrt::Microsoft::UI::Xaml::DependencyObject const& element, int32_t value) const;
        [[nodiscard]] auto SizeOfSetProperty() const;
        auto GetSizeOfSet(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetSizeOfSet(winrt::Microsoft::UI::Xaml::DependencyObject const& element, int32_t value) const;
        [[nodiscard]] auto LevelProperty() const;
        auto GetLevel(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetLevel(winrt::Microsoft::UI::Xaml::DependencyObject const& element, int32_t value) const;
        [[nodiscard]] auto AnnotationsProperty() const;
        auto GetAnnotations(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        [[nodiscard]] auto LandmarkTypeProperty() const;
        auto GetLandmarkType(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetLandmarkType(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::Automation::Peers::AutomationLandmarkType const& value) const;
        [[nodiscard]] auto LocalizedLandmarkTypeProperty() const;
        auto GetLocalizedLandmarkType(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetLocalizedLandmarkType(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto IsPeripheralProperty() const;
        auto GetIsPeripheral(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetIsPeripheral(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto IsDataValidForFormProperty() const;
        auto GetIsDataValidForForm(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetIsDataValidForForm(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto FullDescriptionProperty() const;
        auto GetFullDescription(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetFullDescription(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto LocalizedControlTypeProperty() const;
        auto GetLocalizedControlType(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetLocalizedControlType(winrt::Microsoft::UI::Xaml::DependencyObject const& element, param::hstring const& value) const;
        [[nodiscard]] auto DescribedByProperty() const;
        auto GetDescribedBy(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        [[nodiscard]] auto FlowsToProperty() const;
        auto GetFlowsTo(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        [[nodiscard]] auto FlowsFromProperty() const;
        auto GetFlowsFrom(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        [[nodiscard]] auto CultureProperty() const;
        auto GetCulture(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetCulture(winrt::Microsoft::UI::Xaml::DependencyObject const& element, int32_t value) const;
        [[nodiscard]] auto HeadingLevelProperty() const;
        auto GetHeadingLevel(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetHeadingLevel(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::Automation::Peers::AutomationHeadingLevel const& value) const;
        [[nodiscard]] auto IsDialogProperty() const;
        auto GetIsDialog(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetIsDialog(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationPropertiesStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationPropertiesStatics2
    {
        [[nodiscard]] auto AutomationControlTypeProperty() const;
        auto GetAutomationControlType(winrt::Microsoft::UI::Xaml::UIElement const& element) const;
        auto SetAutomationControlType(winrt::Microsoft::UI::Xaml::UIElement const& element, winrt::Microsoft::UI::Xaml::Automation::Peers::AutomationControlType const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationPropertiesStatics2>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationPropertiesStatics2<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IAutomationProperty
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IAutomationProperty>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IAutomationProperty<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IDockPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IDockPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IDockPatternIdentifiersStatics
    {
        [[nodiscard]] auto DockPositionProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IDockPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IDockPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IDragPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IDragPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IDragPatternIdentifiersStatics
    {
        [[nodiscard]] auto DropEffectProperty() const;
        [[nodiscard]] auto DropEffectsProperty() const;
        [[nodiscard]] auto GrabbedItemsProperty() const;
        [[nodiscard]] auto IsGrabbedProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IDragPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IDragPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IDropTargetPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IDropTargetPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IDropTargetPatternIdentifiersStatics
    {
        [[nodiscard]] auto DropTargetEffectProperty() const;
        [[nodiscard]] auto DropTargetEffectsProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IDropTargetPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IDropTargetPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IExpandCollapsePatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IExpandCollapsePatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IExpandCollapsePatternIdentifiersStatics
    {
        [[nodiscard]] auto ExpandCollapseStateProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IExpandCollapsePatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IExpandCollapsePatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IGridItemPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IGridItemPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IGridItemPatternIdentifiersStatics
    {
        [[nodiscard]] auto ColumnProperty() const;
        [[nodiscard]] auto ColumnSpanProperty() const;
        [[nodiscard]] auto ContainingGridProperty() const;
        [[nodiscard]] auto RowProperty() const;
        [[nodiscard]] auto RowSpanProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IGridItemPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IGridItemPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IGridPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IGridPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IGridPatternIdentifiersStatics
    {
        [[nodiscard]] auto ColumnCountProperty() const;
        [[nodiscard]] auto RowCountProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IGridPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IGridPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IMultipleViewPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IMultipleViewPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IMultipleViewPatternIdentifiersStatics
    {
        [[nodiscard]] auto CurrentViewProperty() const;
        [[nodiscard]] auto SupportedViewsProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IMultipleViewPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IMultipleViewPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IRangeValuePatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IRangeValuePatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IRangeValuePatternIdentifiersStatics
    {
        [[nodiscard]] auto IsReadOnlyProperty() const;
        [[nodiscard]] auto LargeChangeProperty() const;
        [[nodiscard]] auto MaximumProperty() const;
        [[nodiscard]] auto MinimumProperty() const;
        [[nodiscard]] auto SmallChangeProperty() const;
        [[nodiscard]] auto ValueProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IRangeValuePatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IRangeValuePatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IScrollPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IScrollPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IScrollPatternIdentifiersStatics
    {
        [[nodiscard]] auto HorizontallyScrollableProperty() const;
        [[nodiscard]] auto HorizontalScrollPercentProperty() const;
        [[nodiscard]] auto HorizontalViewSizeProperty() const;
        [[nodiscard]] auto NoScroll() const;
        [[nodiscard]] auto VerticallyScrollableProperty() const;
        [[nodiscard]] auto VerticalScrollPercentProperty() const;
        [[nodiscard]] auto VerticalViewSizeProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IScrollPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IScrollPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ISelectionItemPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ISelectionItemPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ISelectionItemPatternIdentifiersStatics
    {
        [[nodiscard]] auto IsSelectedProperty() const;
        [[nodiscard]] auto SelectionContainerProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ISelectionItemPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ISelectionItemPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ISelectionPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ISelectionPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ISelectionPatternIdentifiersStatics
    {
        [[nodiscard]] auto CanSelectMultipleProperty() const;
        [[nodiscard]] auto IsSelectionRequiredProperty() const;
        [[nodiscard]] auto SelectionProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ISelectionPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ISelectionPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ISpreadsheetItemPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ISpreadsheetItemPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ISpreadsheetItemPatternIdentifiersStatics
    {
        [[nodiscard]] auto FormulaProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ISpreadsheetItemPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ISpreadsheetItemPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IStylesPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IStylesPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IStylesPatternIdentifiersStatics
    {
        [[nodiscard]] auto ExtendedPropertiesProperty() const;
        [[nodiscard]] auto FillColorProperty() const;
        [[nodiscard]] auto FillPatternColorProperty() const;
        [[nodiscard]] auto FillPatternStyleProperty() const;
        [[nodiscard]] auto ShapeProperty() const;
        [[nodiscard]] auto StyleIdProperty() const;
        [[nodiscard]] auto StyleNameProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IStylesPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IStylesPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITableItemPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITableItemPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITableItemPatternIdentifiersStatics
    {
        [[nodiscard]] auto ColumnHeaderItemsProperty() const;
        [[nodiscard]] auto RowHeaderItemsProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITableItemPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITableItemPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITablePatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITablePatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITablePatternIdentifiersStatics
    {
        [[nodiscard]] auto ColumnHeadersProperty() const;
        [[nodiscard]] auto RowHeadersProperty() const;
        [[nodiscard]] auto RowOrColumnMajorProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITablePatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITablePatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITogglePatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITogglePatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITogglePatternIdentifiersStatics
    {
        [[nodiscard]] auto ToggleStateProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITogglePatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITogglePatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITransformPattern2Identifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2Identifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITransformPattern2Identifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITransformPattern2IdentifiersStatics
    {
        [[nodiscard]] auto CanZoomProperty() const;
        [[nodiscard]] auto ZoomLevelProperty() const;
        [[nodiscard]] auto MaxZoomProperty() const;
        [[nodiscard]] auto MinZoomProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITransformPattern2IdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITransformPattern2IdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITransformPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITransformPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_ITransformPatternIdentifiersStatics
    {
        [[nodiscard]] auto CanMoveProperty() const;
        [[nodiscard]] auto CanResizeProperty() const;
        [[nodiscard]] auto CanRotateProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::ITransformPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_ITransformPatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IValuePatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IValuePatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IValuePatternIdentifiersStatics
    {
        [[nodiscard]] auto IsReadOnlyProperty() const;
        [[nodiscard]] auto ValueProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IValuePatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IValuePatternIdentifiersStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IWindowPatternIdentifiers
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiers>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IWindowPatternIdentifiers<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Automation_IWindowPatternIdentifiersStatics
    {
        [[nodiscard]] auto CanMaximizeProperty() const;
        [[nodiscard]] auto CanMinimizeProperty() const;
        [[nodiscard]] auto IsModalProperty() const;
        [[nodiscard]] auto IsTopmostProperty() const;
        [[nodiscard]] auto WindowInteractionStateProperty() const;
        [[nodiscard]] auto WindowVisualStateProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Automation::IWindowPatternIdentifiersStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Automation_IWindowPatternIdentifiersStatics<D>;
    };
}
#endif
