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

#pragma once
#ifndef WINRT_Microsoft_UI_Xaml_Documents_0_H
#define WINRT_Microsoft_UI_Xaml_Documents_0_H
WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml
{
    struct DependencyObject;
    struct DependencyProperty;
    enum class ElementSoundMode : int32_t;
    enum class FlowDirection : int32_t;
    enum class FocusState : int32_t;
    enum class FontCapitals : int32_t;
    enum class FontEastAsianLanguage : int32_t;
    enum class FontEastAsianWidths : int32_t;
    enum class FontFraction : int32_t;
    enum class FontNumeralAlignment : int32_t;
    enum class FontNumeralStyle : int32_t;
    enum class FontVariants : int32_t;
    struct FrameworkElement;
    enum class LineStackingStrategy : int32_t;
    struct RoutedEventHandler;
    enum class TextAlignment : int32_t;
    struct Thickness;
    struct UIElement;
    struct XamlRoot;
}
WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml::Input
{
    struct AccessKeyDisplayDismissedEventArgs;
    struct AccessKeyDisplayRequestedEventArgs;
    struct AccessKeyInvokedEventArgs;
    enum class KeyTipPlacementMode : int32_t;
    enum class XYFocusNavigationStrategy : int32_t;
}
WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml::Media
{
    struct Brush;
    struct FontFamily;
    enum class StyleSimulations : int32_t;
}
WINRT_EXPORT namespace winrt::Windows::Foundation
{
    struct EventRegistrationToken;
    struct Rect;
    template <typename TSender, typename TResult> struct WINRT_IMPL_EMPTY_BASES TypedEventHandler;
    struct Uri;
}
WINRT_EXPORT namespace winrt::Windows::Foundation::Collections
{
    template <typename T> struct WINRT_IMPL_EMPTY_BASES IVector;
}
WINRT_EXPORT namespace winrt::Windows::UI::Text
{
    enum class FontStretch : int32_t;
    enum class FontStyle : int32_t;
    struct FontWeight;
    enum class TextDecorations : uint32_t;
}
WINRT_EXPORT namespace winrt::Microsoft::UI::Xaml::Documents
{
    enum class LogicalDirection : int32_t
    {
        Backward = 0,
        Forward = 1,
    };
    enum class UnderlineStyle : int32_t
    {
        None = 0,
        Single = 1,
    };
    struct IBlock;
    struct IBlockFactory;
    struct IBlockStatics;
    struct IBold;
    struct IGlyphs;
    struct IGlyphsStatics;
    struct IHyperlink;
    struct IHyperlinkClickEventArgs;
    struct IHyperlinkStatics;
    struct IInline;
    struct IInlineFactory;
    struct IInlineUIContainer;
    struct IItalic;
    struct ILineBreak;
    struct IParagraph;
    struct IParagraphStatics;
    struct IRun;
    struct IRunStatics;
    struct ISpan;
    struct ISpanFactory;
    struct ITextElement;
    struct ITextElementFactory;
    struct ITextElementOverrides;
    struct ITextElementStatics;
    struct ITextHighlighter;
    struct ITextHighlighterBase;
    struct ITextHighlighterBaseFactory;
    struct ITextHighlighterFactory;
    struct ITextHighlighterStatics;
    struct ITextPointer;
    struct ITypography;
    struct ITypographyStatics;
    struct IUnderline;
    struct Block;
    struct BlockCollection;
    struct Bold;
    struct Glyphs;
    struct Hyperlink;
    struct HyperlinkClickEventArgs;
    struct Inline;
    struct InlineCollection;
    struct InlineUIContainer;
    struct Italic;
    struct LineBreak;
    struct Paragraph;
    struct Run;
    struct Span;
    struct TextElement;
    struct TextHighlighter;
    struct TextHighlighterBase;
    struct TextPointer;
    struct Typography;
    struct Underline;
    struct TextRange;
}
namespace winrt::impl
{
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IBlock>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IBlockFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IBlockStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IBold>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IGlyphs>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IGlyphsStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IHyperlink>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkClickEventArgs>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IInline>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IInlineFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IInlineUIContainer>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IItalic>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ILineBreak>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IParagraph>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IParagraphStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IRun>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IRunStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ISpan>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ISpanFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextElement>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextElementFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextElementOverrides>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextElementStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighter>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBase>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBaseFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterFactory>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITextPointer>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITypography>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::ITypographyStatics>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::IUnderline>{ using type = interface_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Block>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::BlockCollection>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Bold>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Glyphs>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Hyperlink>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::HyperlinkClickEventArgs>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Inline>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::InlineCollection>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::InlineUIContainer>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Italic>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::LineBreak>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Paragraph>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Run>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Span>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::TextElement>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::TextHighlighter>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::TextHighlighterBase>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::TextPointer>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Typography>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::Underline>{ using type = class_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::LogicalDirection>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::UnderlineStyle>{ using type = enum_category; };
    template <> struct category<winrt::Microsoft::UI::Xaml::Documents::TextRange>{ using type = struct_category<int32_t, int32_t>; };
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Block> = L"Microsoft.UI.Xaml.Documents.Block";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::BlockCollection> = L"Microsoft.UI.Xaml.Documents.BlockCollection";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Bold> = L"Microsoft.UI.Xaml.Documents.Bold";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Glyphs> = L"Microsoft.UI.Xaml.Documents.Glyphs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Hyperlink> = L"Microsoft.UI.Xaml.Documents.Hyperlink";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::HyperlinkClickEventArgs> = L"Microsoft.UI.Xaml.Documents.HyperlinkClickEventArgs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Inline> = L"Microsoft.UI.Xaml.Documents.Inline";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::InlineCollection> = L"Microsoft.UI.Xaml.Documents.InlineCollection";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::InlineUIContainer> = L"Microsoft.UI.Xaml.Documents.InlineUIContainer";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Italic> = L"Microsoft.UI.Xaml.Documents.Italic";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::LineBreak> = L"Microsoft.UI.Xaml.Documents.LineBreak";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Paragraph> = L"Microsoft.UI.Xaml.Documents.Paragraph";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Run> = L"Microsoft.UI.Xaml.Documents.Run";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Span> = L"Microsoft.UI.Xaml.Documents.Span";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::TextElement> = L"Microsoft.UI.Xaml.Documents.TextElement";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::TextHighlighter> = L"Microsoft.UI.Xaml.Documents.TextHighlighter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::TextHighlighterBase> = L"Microsoft.UI.Xaml.Documents.TextHighlighterBase";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::TextPointer> = L"Microsoft.UI.Xaml.Documents.TextPointer";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Typography> = L"Microsoft.UI.Xaml.Documents.Typography";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::Underline> = L"Microsoft.UI.Xaml.Documents.Underline";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::LogicalDirection> = L"Microsoft.UI.Xaml.Documents.LogicalDirection";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::UnderlineStyle> = L"Microsoft.UI.Xaml.Documents.UnderlineStyle";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::TextRange> = L"Microsoft.UI.Xaml.Documents.TextRange";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IBlock> = L"Microsoft.UI.Xaml.Documents.IBlock";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IBlockFactory> = L"Microsoft.UI.Xaml.Documents.IBlockFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IBlockStatics> = L"Microsoft.UI.Xaml.Documents.IBlockStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IBold> = L"Microsoft.UI.Xaml.Documents.IBold";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IGlyphs> = L"Microsoft.UI.Xaml.Documents.IGlyphs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IGlyphsStatics> = L"Microsoft.UI.Xaml.Documents.IGlyphsStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IHyperlink> = L"Microsoft.UI.Xaml.Documents.IHyperlink";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkClickEventArgs> = L"Microsoft.UI.Xaml.Documents.IHyperlinkClickEventArgs";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkStatics> = L"Microsoft.UI.Xaml.Documents.IHyperlinkStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IInline> = L"Microsoft.UI.Xaml.Documents.IInline";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IInlineFactory> = L"Microsoft.UI.Xaml.Documents.IInlineFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IInlineUIContainer> = L"Microsoft.UI.Xaml.Documents.IInlineUIContainer";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IItalic> = L"Microsoft.UI.Xaml.Documents.IItalic";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ILineBreak> = L"Microsoft.UI.Xaml.Documents.ILineBreak";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IParagraph> = L"Microsoft.UI.Xaml.Documents.IParagraph";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IParagraphStatics> = L"Microsoft.UI.Xaml.Documents.IParagraphStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IRun> = L"Microsoft.UI.Xaml.Documents.IRun";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IRunStatics> = L"Microsoft.UI.Xaml.Documents.IRunStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ISpan> = L"Microsoft.UI.Xaml.Documents.ISpan";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ISpanFactory> = L"Microsoft.UI.Xaml.Documents.ISpanFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextElement> = L"Microsoft.UI.Xaml.Documents.ITextElement";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextElementFactory> = L"Microsoft.UI.Xaml.Documents.ITextElementFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextElementOverrides> = L"Microsoft.UI.Xaml.Documents.ITextElementOverrides";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextElementStatics> = L"Microsoft.UI.Xaml.Documents.ITextElementStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighter> = L"Microsoft.UI.Xaml.Documents.ITextHighlighter";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBase> = L"Microsoft.UI.Xaml.Documents.ITextHighlighterBase";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBaseFactory> = L"Microsoft.UI.Xaml.Documents.ITextHighlighterBaseFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterFactory> = L"Microsoft.UI.Xaml.Documents.ITextHighlighterFactory";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterStatics> = L"Microsoft.UI.Xaml.Documents.ITextHighlighterStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITextPointer> = L"Microsoft.UI.Xaml.Documents.ITextPointer";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITypography> = L"Microsoft.UI.Xaml.Documents.ITypography";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::ITypographyStatics> = L"Microsoft.UI.Xaml.Documents.ITypographyStatics";
    template <> inline constexpr auto& name_v<winrt::Microsoft::UI::Xaml::Documents::IUnderline> = L"Microsoft.UI.Xaml.Documents.IUnderline";
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IBlock>{ 0x8149D507,0x672F,0x5FD5,{ 0xA1,0x0A,0x35,0x13,0x89,0xBA,0x96,0x59 } }; // 8149D507-672F-5FD5-A10A-351389BA9659
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IBlockFactory>{ 0x21BD671C,0x33E2,0x56EF,{ 0xBE,0x37,0xA1,0x28,0xE8,0x98,0x45,0x2C } }; // 21BD671C-33E2-56EF-BE37-A128E898452C
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IBlockStatics>{ 0x830FEEDF,0x9AA6,0x56CD,{ 0x98,0x3E,0x05,0x55,0x00,0x17,0x1B,0x45 } }; // 830FEEDF-9AA6-56CD-983E-055500171B45
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IBold>{ 0x241A5F5A,0xC164,0x597F,{ 0xB0,0xDB,0xFA,0xC7,0x43,0x12,0x97,0xF2 } }; // 241A5F5A-C164-597F-B0DB-FAC7431297F2
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IGlyphs>{ 0x0FBF8CFE,0x18E7,0x5E45,{ 0x9F,0xA3,0xD2,0xD0,0x92,0x79,0x58,0xF4 } }; // 0FBF8CFE-18E7-5E45-9FA3-D2D0927958F4
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IGlyphsStatics>{ 0x8D9E241A,0x3E0E,0x5100,{ 0x8E,0xDE,0xE0,0x08,0x03,0x4F,0xF8,0xAE } }; // 8D9E241A-3E0E-5100-8EDE-E008034FF8AE
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IHyperlink>{ 0xAC09BD16,0xCDFA,0x54C2,{ 0x8D,0x03,0xA4,0x74,0x18,0x15,0x45,0xB1 } }; // AC09BD16-CDFA-54C2-8D03-A474181545B1
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkClickEventArgs>{ 0xF8F89552,0x873D,0x5EF5,{ 0x82,0xBF,0xC7,0x9A,0x95,0x09,0xB0,0x7C } }; // F8F89552-873D-5EF5-82BF-C79A9509B07C
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkStatics>{ 0xE13598F4,0x7BC7,0x5AB9,{ 0x88,0x5B,0x70,0xF3,0x2F,0x8C,0x95,0x31 } }; // E13598F4-7BC7-5AB9-885B-70F32F8C9531
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IInline>{ 0x813D427A,0x8980,0x5A79,{ 0xA8,0xFA,0xF2,0x79,0x19,0xCF,0xB2,0x4F } }; // 813D427A-8980-5A79-A8FA-F27919CFB24F
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IInlineFactory>{ 0xFD253A36,0xFA2B,0x5B30,{ 0x89,0xA8,0x9F,0x57,0x78,0x71,0xEC,0x07 } }; // FD253A36-FA2B-5B30-89A8-9F577871EC07
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IInlineUIContainer>{ 0xD529BEF6,0xC05A,0x5BAD,{ 0x85,0xE8,0x64,0x01,0x27,0xCF,0x86,0xF5 } }; // D529BEF6-C05A-5BAD-85E8-640127CF86F5
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IItalic>{ 0xCA3CBEBD,0x7A8D,0x5D7A,{ 0x8F,0xDF,0x53,0x8E,0x8A,0x68,0x0F,0x6C } }; // CA3CBEBD-7A8D-5D7A-8FDF-538E8A680F6C
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ILineBreak>{ 0x09307599,0x7CC2,0x5F54,{ 0xB1,0x06,0x72,0x86,0x20,0xC1,0x6F,0x76 } }; // 09307599-7CC2-5F54-B106-728620C16F76
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IParagraph>{ 0x9ED64C77,0x329D,0x502F,{ 0xA2,0x57,0xF5,0x83,0x98,0xED,0xAB,0x51 } }; // 9ED64C77-329D-502F-A257-F58398EDAB51
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IParagraphStatics>{ 0x4EB89AB1,0x66C8,0x5FC0,{ 0xAA,0x5F,0x48,0xC8,0x09,0x2C,0xEB,0x5F } }; // 4EB89AB1-66C8-5FC0-AA5F-48C8092CEB5F
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IRun>{ 0x1F905239,0x37CB,0x590B,{ 0x91,0x32,0x3F,0xFB,0x77,0x41,0x90,0x6E } }; // 1F905239-37CB-590B-9132-3FFB7741906E
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IRunStatics>{ 0x051B3C5B,0x7600,0x51A5,{ 0x80,0xC5,0x93,0xEB,0x50,0xFD,0x68,0x4F } }; // 051B3C5B-7600-51A5-80C5-93EB50FD684F
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ISpan>{ 0x91B93D4D,0x4E28,0x57B9,{ 0xBF,0xFB,0x35,0x66,0xC2,0xA3,0xC2,0xA1 } }; // 91B93D4D-4E28-57B9-BFFB-3566C2A3C2A1
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ISpanFactory>{ 0xA6E87C16,0xC175,0x55C8,{ 0xBB,0xD3,0xCE,0x40,0xF9,0xD0,0xA6,0x80 } }; // A6E87C16-C175-55C8-BBD3-CE40F9D0A680
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextElement>{ 0xA122BA22,0x833F,0x5220,{ 0xA4,0x7E,0x6C,0xD5,0x07,0x53,0x1A,0xBE } }; // A122BA22-833F-5220-A47E-6CD507531ABE
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextElementFactory>{ 0xDF51FB95,0xA5E6,0x5B16,{ 0x8E,0x88,0x9F,0x7C,0xBF,0xA2,0x34,0xB1 } }; // DF51FB95-A5E6-5B16-8E88-9F7CBFA234B1
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextElementOverrides>{ 0x41B01380,0xE49F,0x5FDA,{ 0x8C,0x72,0xAC,0xC1,0xAC,0x1E,0x91,0xDF } }; // 41B01380-E49F-5FDA-8C72-ACC1AC1E91DF
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextElementStatics>{ 0xC9B55919,0xE1FE,0x5ACD,{ 0xBA,0xC7,0xC9,0xD7,0xF4,0x13,0xB3,0x5C } }; // C9B55919-E1FE-5ACD-BAC7-C9D7F413B35C
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighter>{ 0xB756E861,0x1D2B,0x5F6F,{ 0x81,0xFD,0xC5,0x1A,0x5B,0xC0,0x68,0xFF } }; // B756E861-1D2B-5F6F-81FD-C51A5BC068FF
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBase>{ 0x5C21AAF0,0x3A17,0x5468,{ 0x8A,0xAC,0xBE,0x14,0xDB,0x0E,0xD8,0xC1 } }; // 5C21AAF0-3A17-5468-8AAC-BE14DB0ED8C1
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBaseFactory>{ 0xE091E461,0x53AB,0x599E,{ 0xAA,0xEA,0x80,0x0A,0xDC,0x72,0xDA,0x4F } }; // E091E461-53AB-599E-AAEA-800ADC72DA4F
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterFactory>{ 0x69C7311F,0xC019,0x5B93,{ 0xB5,0x11,0x81,0x41,0x85,0x43,0xBA,0xB7 } }; // 69C7311F-C019-5B93-B511-81418543BAB7
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterStatics>{ 0x4975047A,0x87AD,0x51A2,{ 0x97,0x7C,0xE7,0x71,0xDE,0x4F,0x40,0x35 } }; // 4975047A-87AD-51A2-977C-E771DE4F4035
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITextPointer>{ 0x842EB385,0xEE41,0x5930,{ 0x97,0x9B,0x43,0x8F,0xA7,0x52,0x5A,0x51 } }; // 842EB385-EE41-5930-979B-438FA7525A51
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITypography>{ 0xFA27E2E3,0xBE5E,0x5D21,{ 0x9A,0x5E,0x90,0xCF,0x10,0x2A,0xF8,0x28 } }; // FA27E2E3-BE5E-5D21-9A5E-90CF102AF828
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::ITypographyStatics>{ 0x55FE4535,0x2125,0x533A,{ 0xAD,0xA8,0x27,0xBE,0x2B,0x9E,0x11,0x93 } }; // 55FE4535-2125-533A-ADA8-27BE2B9E1193
    template <> inline constexpr guid guid_v<winrt::Microsoft::UI::Xaml::Documents::IUnderline>{ 0x68AAEC6E,0xEA71,0x5ED2,{ 0xB8,0x3E,0x91,0x68,0x4B,0x25,0xEF,0xB9 } }; // 68AAEC6E-EA71-5ED2-B83E-91684B25EFB9
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Block>{ using type = winrt::Microsoft::UI::Xaml::Documents::IBlock; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::BlockCollection>{ using type = winrt::Windows::Foundation::Collections::IVector<winrt::Microsoft::UI::Xaml::Documents::Block>; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Bold>{ using type = winrt::Microsoft::UI::Xaml::Documents::IBold; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Glyphs>{ using type = winrt::Microsoft::UI::Xaml::Documents::IGlyphs; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Hyperlink>{ using type = winrt::Microsoft::UI::Xaml::Documents::IHyperlink; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::HyperlinkClickEventArgs>{ using type = winrt::Microsoft::UI::Xaml::Documents::IHyperlinkClickEventArgs; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Inline>{ using type = winrt::Microsoft::UI::Xaml::Documents::IInline; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::InlineCollection>{ using type = winrt::Windows::Foundation::Collections::IVector<winrt::Microsoft::UI::Xaml::Documents::Inline>; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::InlineUIContainer>{ using type = winrt::Microsoft::UI::Xaml::Documents::IInlineUIContainer; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Italic>{ using type = winrt::Microsoft::UI::Xaml::Documents::IItalic; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::LineBreak>{ using type = winrt::Microsoft::UI::Xaml::Documents::ILineBreak; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Paragraph>{ using type = winrt::Microsoft::UI::Xaml::Documents::IParagraph; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Run>{ using type = winrt::Microsoft::UI::Xaml::Documents::IRun; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Span>{ using type = winrt::Microsoft::UI::Xaml::Documents::ISpan; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::TextElement>{ using type = winrt::Microsoft::UI::Xaml::Documents::ITextElement; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::TextHighlighter>{ using type = winrt::Microsoft::UI::Xaml::Documents::ITextHighlighter; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::TextHighlighterBase>{ using type = winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBase; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::TextPointer>{ using type = winrt::Microsoft::UI::Xaml::Documents::ITextPointer; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Typography>{ using type = winrt::Microsoft::UI::Xaml::Documents::ITypography; };
    template <> struct default_interface<winrt::Microsoft::UI::Xaml::Documents::Underline>{ using type = winrt::Microsoft::UI::Xaml::Documents::IUnderline; };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IBlock>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_TextAlignment(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_TextAlignment(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_HorizontalTextAlignment(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_HorizontalTextAlignment(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_LineHeight(double*) noexcept = 0;
            virtual int32_t __stdcall put_LineHeight(double) noexcept = 0;
            virtual int32_t __stdcall get_LineStackingStrategy(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_LineStackingStrategy(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_Margin(struct struct_Microsoft_UI_Xaml_Thickness*) noexcept = 0;
            virtual int32_t __stdcall put_Margin(struct struct_Microsoft_UI_Xaml_Thickness) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IBlockFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateInstance(void*, void**, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IBlockStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_TextAlignmentProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_HorizontalTextAlignmentProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LineHeightProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LineStackingStrategyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_MarginProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IBold>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IGlyphs>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_UnicodeString(void**) noexcept = 0;
            virtual int32_t __stdcall put_UnicodeString(void*) noexcept = 0;
            virtual int32_t __stdcall get_Indices(void**) noexcept = 0;
            virtual int32_t __stdcall put_Indices(void*) noexcept = 0;
            virtual int32_t __stdcall get_FontUri(void**) noexcept = 0;
            virtual int32_t __stdcall put_FontUri(void*) noexcept = 0;
            virtual int32_t __stdcall get_StyleSimulations(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_StyleSimulations(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_FontRenderingEmSize(double*) noexcept = 0;
            virtual int32_t __stdcall put_FontRenderingEmSize(double) noexcept = 0;
            virtual int32_t __stdcall get_OriginX(double*) noexcept = 0;
            virtual int32_t __stdcall put_OriginX(double) noexcept = 0;
            virtual int32_t __stdcall get_OriginY(double*) noexcept = 0;
            virtual int32_t __stdcall put_OriginY(double) noexcept = 0;
            virtual int32_t __stdcall get_Fill(void**) noexcept = 0;
            virtual int32_t __stdcall put_Fill(void*) noexcept = 0;
            virtual int32_t __stdcall get_IsColorFontEnabled(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsColorFontEnabled(bool) noexcept = 0;
            virtual int32_t __stdcall get_ColorFontPaletteIndex(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_ColorFontPaletteIndex(int32_t) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IGlyphsStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_UnicodeStringProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IndicesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FontUriProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_StyleSimulationsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FontRenderingEmSizeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_OriginXProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_OriginYProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FillProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsColorFontEnabledProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ColorFontPaletteIndexProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IHyperlink>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_NavigateUri(void**) noexcept = 0;
            virtual int32_t __stdcall put_NavigateUri(void*) noexcept = 0;
            virtual int32_t __stdcall get_UnderlineStyle(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_UnderlineStyle(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusLeft(void**) noexcept = 0;
            virtual int32_t __stdcall put_XYFocusLeft(void*) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusRight(void**) noexcept = 0;
            virtual int32_t __stdcall put_XYFocusRight(void*) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusUp(void**) noexcept = 0;
            virtual int32_t __stdcall put_XYFocusUp(void*) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusDown(void**) noexcept = 0;
            virtual int32_t __stdcall put_XYFocusDown(void*) noexcept = 0;
            virtual int32_t __stdcall get_ElementSoundMode(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_ElementSoundMode(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_FocusState(int32_t*) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusUpNavigationStrategy(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_XYFocusUpNavigationStrategy(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusDownNavigationStrategy(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_XYFocusDownNavigationStrategy(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusLeftNavigationStrategy(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_XYFocusLeftNavigationStrategy(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusRightNavigationStrategy(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_XYFocusRightNavigationStrategy(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_IsTabStop(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsTabStop(bool) noexcept = 0;
            virtual int32_t __stdcall get_TabIndex(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_TabIndex(int32_t) noexcept = 0;
            virtual int32_t __stdcall add_Click(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_Click(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_GotFocus(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_GotFocus(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_LostFocus(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_LostFocus(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall Focus(int32_t, bool*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkClickEventArgs>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_NavigateUriProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_UnderlineStyleProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusLeftProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusRightProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusUpProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusDownProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ElementSoundModeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FocusStateProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusUpNavigationStrategyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusDownNavigationStrategyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusLeftNavigationStrategyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_XYFocusRightNavigationStrategyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsTabStopProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_TabIndexProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IInline>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IInlineFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateInstance(void*, void**, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IInlineUIContainer>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Child(void**) noexcept = 0;
            virtual int32_t __stdcall put_Child(void*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IItalic>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ILineBreak>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IParagraph>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Inlines(void**) noexcept = 0;
            virtual int32_t __stdcall get_TextIndent(double*) noexcept = 0;
            virtual int32_t __stdcall put_TextIndent(double) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IParagraphStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_TextIndentProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IRun>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Text(void**) noexcept = 0;
            virtual int32_t __stdcall put_Text(void*) noexcept = 0;
            virtual int32_t __stdcall get_FlowDirection(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_FlowDirection(int32_t) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IRunStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_FlowDirectionProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ISpan>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Inlines(void**) noexcept = 0;
            virtual int32_t __stdcall put_Inlines(void*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ISpanFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateInstance(void*, void**, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextElement>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Name(void**) noexcept = 0;
            virtual int32_t __stdcall get_FontSize(double*) noexcept = 0;
            virtual int32_t __stdcall put_FontSize(double) noexcept = 0;
            virtual int32_t __stdcall get_FontFamily(void**) noexcept = 0;
            virtual int32_t __stdcall put_FontFamily(void*) noexcept = 0;
            virtual int32_t __stdcall get_FontWeight(struct struct_Windows_UI_Text_FontWeight*) noexcept = 0;
            virtual int32_t __stdcall put_FontWeight(struct struct_Windows_UI_Text_FontWeight) noexcept = 0;
            virtual int32_t __stdcall get_FontStyle(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_FontStyle(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_FontStretch(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_FontStretch(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_CharacterSpacing(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_CharacterSpacing(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_Foreground(void**) noexcept = 0;
            virtual int32_t __stdcall put_Foreground(void*) noexcept = 0;
            virtual int32_t __stdcall get_Language(void**) noexcept = 0;
            virtual int32_t __stdcall put_Language(void*) noexcept = 0;
            virtual int32_t __stdcall get_IsTextScaleFactorEnabled(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsTextScaleFactorEnabled(bool) noexcept = 0;
            virtual int32_t __stdcall get_TextDecorations(uint32_t*) noexcept = 0;
            virtual int32_t __stdcall put_TextDecorations(uint32_t) noexcept = 0;
            virtual int32_t __stdcall get_ContentStart(void**) noexcept = 0;
            virtual int32_t __stdcall get_ContentEnd(void**) noexcept = 0;
            virtual int32_t __stdcall get_ElementStart(void**) noexcept = 0;
            virtual int32_t __stdcall get_ElementEnd(void**) noexcept = 0;
            virtual int32_t __stdcall get_AllowFocusOnInteraction(bool*) noexcept = 0;
            virtual int32_t __stdcall put_AllowFocusOnInteraction(bool) noexcept = 0;
            virtual int32_t __stdcall get_AccessKey(void**) noexcept = 0;
            virtual int32_t __stdcall put_AccessKey(void*) noexcept = 0;
            virtual int32_t __stdcall get_ExitDisplayModeOnAccessKeyInvoked(bool*) noexcept = 0;
            virtual int32_t __stdcall put_ExitDisplayModeOnAccessKeyInvoked(bool) noexcept = 0;
            virtual int32_t __stdcall get_IsAccessKeyScope(bool*) noexcept = 0;
            virtual int32_t __stdcall put_IsAccessKeyScope(bool) noexcept = 0;
            virtual int32_t __stdcall get_AccessKeyScopeOwner(void**) noexcept = 0;
            virtual int32_t __stdcall put_AccessKeyScopeOwner(void*) noexcept = 0;
            virtual int32_t __stdcall get_KeyTipPlacementMode(int32_t*) noexcept = 0;
            virtual int32_t __stdcall put_KeyTipPlacementMode(int32_t) noexcept = 0;
            virtual int32_t __stdcall get_KeyTipHorizontalOffset(double*) noexcept = 0;
            virtual int32_t __stdcall put_KeyTipHorizontalOffset(double) noexcept = 0;
            virtual int32_t __stdcall get_KeyTipVerticalOffset(double*) noexcept = 0;
            virtual int32_t __stdcall put_KeyTipVerticalOffset(double) noexcept = 0;
            virtual int32_t __stdcall get_XamlRoot(void**) noexcept = 0;
            virtual int32_t __stdcall put_XamlRoot(void*) noexcept = 0;
            virtual int32_t __stdcall add_AccessKeyDisplayRequested(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_AccessKeyDisplayRequested(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_AccessKeyDisplayDismissed(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_AccessKeyDisplayDismissed(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall add_AccessKeyInvoked(void*, winrt::event_token*) noexcept = 0;
            virtual int32_t __stdcall remove_AccessKeyInvoked(winrt::event_token) noexcept = 0;
            virtual int32_t __stdcall FindName(void*, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextElementFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextElementOverrides>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall OnDisconnectVisualChildren() noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextElementStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_FontSizeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FontFamilyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FontWeightProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FontStyleProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_FontStretchProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_CharacterSpacingProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ForegroundProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_LanguageProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsTextScaleFactorEnabledProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_TextDecorationsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_AllowFocusOnInteractionProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_AccessKeyProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_ExitDisplayModeOnAccessKeyInvokedProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_IsAccessKeyScopeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_AccessKeyScopeOwnerProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_KeyTipPlacementModeProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_KeyTipHorizontalOffsetProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_KeyTipVerticalOffsetProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighter>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Ranges(void**) noexcept = 0;
            virtual int32_t __stdcall get_Foreground(void**) noexcept = 0;
            virtual int32_t __stdcall put_Foreground(void*) noexcept = 0;
            virtual int32_t __stdcall get_Background(void**) noexcept = 0;
            virtual int32_t __stdcall put_Background(void*) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBase>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBaseFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterFactory>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall CreateInstance(void*, void**, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_ForegroundProperty(void**) noexcept = 0;
            virtual int32_t __stdcall get_BackgroundProperty(void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITextPointer>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_Parent(void**) noexcept = 0;
            virtual int32_t __stdcall get_VisualParent(void**) noexcept = 0;
            virtual int32_t __stdcall get_LogicalDirection(int32_t*) noexcept = 0;
            virtual int32_t __stdcall get_Offset(int32_t*) noexcept = 0;
            virtual int32_t __stdcall GetCharacterRect(int32_t, winrt::Windows::Foundation::Rect*) noexcept = 0;
            virtual int32_t __stdcall GetPositionAtOffset(int32_t, int32_t, void**) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITypography>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::ITypographyStatics>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
            virtual int32_t __stdcall get_AnnotationAlternatesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetAnnotationAlternates(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetAnnotationAlternates(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_EastAsianExpertFormsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetEastAsianExpertForms(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetEastAsianExpertForms(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_EastAsianLanguageProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetEastAsianLanguage(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetEastAsianLanguage(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_EastAsianWidthsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetEastAsianWidths(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetEastAsianWidths(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_StandardLigaturesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetStandardLigatures(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStandardLigatures(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_ContextualLigaturesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetContextualLigatures(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetContextualLigatures(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_DiscretionaryLigaturesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetDiscretionaryLigatures(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetDiscretionaryLigatures(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_HistoricalLigaturesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetHistoricalLigatures(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetHistoricalLigatures(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StandardSwashesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetStandardSwashes(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetStandardSwashes(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_ContextualSwashesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetContextualSwashes(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetContextualSwashes(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_ContextualAlternatesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetContextualAlternates(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetContextualAlternates(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticAlternatesProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticAlternates(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticAlternates(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet1Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet1(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet1(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet2Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet2(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet2(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet3Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet3(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet3(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet4Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet4(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet4(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet5Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet5(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet5(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet6Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet6(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet6(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet7Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet7(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet7(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet8Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet8(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet8(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet9Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet9(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet9(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet10Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet10(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet10(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet11Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet11(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet11(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet12Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet12(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet12(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet13Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet13(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet13(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet14Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet14(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet14(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet15Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet15(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet15(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet16Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet16(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet16(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet17Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet17(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet17(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet18Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet18(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet18(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet19Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet19(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet19(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_StylisticSet20Property(void**) noexcept = 0;
            virtual int32_t __stdcall GetStylisticSet20(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetStylisticSet20(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_CapitalsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetCapitals(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetCapitals(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_CapitalSpacingProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetCapitalSpacing(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetCapitalSpacing(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_KerningProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetKerning(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetKerning(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_CaseSensitiveFormsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetCaseSensitiveForms(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetCaseSensitiveForms(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_HistoricalFormsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetHistoricalForms(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetHistoricalForms(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_FractionProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetFraction(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetFraction(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_NumeralStyleProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetNumeralStyle(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetNumeralStyle(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_NumeralAlignmentProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetNumeralAlignment(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetNumeralAlignment(void*, int32_t) noexcept = 0;
            virtual int32_t __stdcall get_SlashedZeroProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetSlashedZero(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetSlashedZero(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_MathematicalGreekProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetMathematicalGreek(void*, bool*) noexcept = 0;
            virtual int32_t __stdcall SetMathematicalGreek(void*, bool) noexcept = 0;
            virtual int32_t __stdcall get_VariantsProperty(void**) noexcept = 0;
            virtual int32_t __stdcall GetVariants(void*, int32_t*) noexcept = 0;
            virtual int32_t __stdcall SetVariants(void*, int32_t) noexcept = 0;
        };
    };
    template <> struct abi<winrt::Microsoft::UI::Xaml::Documents::IUnderline>
    {
        struct WINRT_IMPL_NOVTABLE type : inspectable_abi
        {
        };
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IBlock
    {
        [[nodiscard]] auto TextAlignment() const;
        auto TextAlignment(winrt::Microsoft::UI::Xaml::TextAlignment const& value) const;
        [[nodiscard]] auto HorizontalTextAlignment() const;
        auto HorizontalTextAlignment(winrt::Microsoft::UI::Xaml::TextAlignment const& value) const;
        [[nodiscard]] auto LineHeight() const;
        auto LineHeight(double value) const;
        [[nodiscard]] auto LineStackingStrategy() const;
        auto LineStackingStrategy(winrt::Microsoft::UI::Xaml::LineStackingStrategy const& value) const;
        [[nodiscard]] auto Margin() const;
        auto Margin(winrt::Microsoft::UI::Xaml::Thickness const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IBlock>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IBlock<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IBlockFactory
    {
        auto CreateInstance(winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IBlockFactory>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IBlockFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IBlockStatics
    {
        [[nodiscard]] auto TextAlignmentProperty() const;
        [[nodiscard]] auto HorizontalTextAlignmentProperty() const;
        [[nodiscard]] auto LineHeightProperty() const;
        [[nodiscard]] auto LineStackingStrategyProperty() const;
        [[nodiscard]] auto MarginProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IBlockStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IBlockStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IBold
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IBold>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IBold<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IGlyphs
    {
        [[nodiscard]] auto UnicodeString() const;
        auto UnicodeString(param::hstring const& value) const;
        [[nodiscard]] auto Indices() const;
        auto Indices(param::hstring const& value) const;
        [[nodiscard]] auto FontUri() const;
        auto FontUri(winrt::Windows::Foundation::Uri const& value) const;
        [[nodiscard]] auto StyleSimulations() const;
        auto StyleSimulations(winrt::Microsoft::UI::Xaml::Media::StyleSimulations const& value) const;
        [[nodiscard]] auto FontRenderingEmSize() const;
        auto FontRenderingEmSize(double value) const;
        [[nodiscard]] auto OriginX() const;
        auto OriginX(double value) const;
        [[nodiscard]] auto OriginY() const;
        auto OriginY(double value) const;
        [[nodiscard]] auto Fill() const;
        auto Fill(winrt::Microsoft::UI::Xaml::Media::Brush const& value) const;
        [[nodiscard]] auto IsColorFontEnabled() const;
        auto IsColorFontEnabled(bool value) const;
        [[nodiscard]] auto ColorFontPaletteIndex() const;
        auto ColorFontPaletteIndex(int32_t value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IGlyphs>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IGlyphs<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IGlyphsStatics
    {
        [[nodiscard]] auto UnicodeStringProperty() const;
        [[nodiscard]] auto IndicesProperty() const;
        [[nodiscard]] auto FontUriProperty() const;
        [[nodiscard]] auto StyleSimulationsProperty() const;
        [[nodiscard]] auto FontRenderingEmSizeProperty() const;
        [[nodiscard]] auto OriginXProperty() const;
        [[nodiscard]] auto OriginYProperty() const;
        [[nodiscard]] auto FillProperty() const;
        [[nodiscard]] auto IsColorFontEnabledProperty() const;
        [[nodiscard]] auto ColorFontPaletteIndexProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IGlyphsStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IGlyphsStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IHyperlink
    {
        [[nodiscard]] auto NavigateUri() const;
        auto NavigateUri(winrt::Windows::Foundation::Uri const& value) const;
        [[nodiscard]] auto UnderlineStyle() const;
        auto UnderlineStyle(winrt::Microsoft::UI::Xaml::Documents::UnderlineStyle const& value) const;
        [[nodiscard]] auto XYFocusLeft() const;
        auto XYFocusLeft(winrt::Microsoft::UI::Xaml::DependencyObject const& value) const;
        [[nodiscard]] auto XYFocusRight() const;
        auto XYFocusRight(winrt::Microsoft::UI::Xaml::DependencyObject const& value) const;
        [[nodiscard]] auto XYFocusUp() const;
        auto XYFocusUp(winrt::Microsoft::UI::Xaml::DependencyObject const& value) const;
        [[nodiscard]] auto XYFocusDown() const;
        auto XYFocusDown(winrt::Microsoft::UI::Xaml::DependencyObject const& value) const;
        [[nodiscard]] auto ElementSoundMode() const;
        auto ElementSoundMode(winrt::Microsoft::UI::Xaml::ElementSoundMode const& value) const;
        [[nodiscard]] auto FocusState() const;
        [[nodiscard]] auto XYFocusUpNavigationStrategy() const;
        auto XYFocusUpNavigationStrategy(winrt::Microsoft::UI::Xaml::Input::XYFocusNavigationStrategy const& value) const;
        [[nodiscard]] auto XYFocusDownNavigationStrategy() const;
        auto XYFocusDownNavigationStrategy(winrt::Microsoft::UI::Xaml::Input::XYFocusNavigationStrategy const& value) const;
        [[nodiscard]] auto XYFocusLeftNavigationStrategy() const;
        auto XYFocusLeftNavigationStrategy(winrt::Microsoft::UI::Xaml::Input::XYFocusNavigationStrategy const& value) const;
        [[nodiscard]] auto XYFocusRightNavigationStrategy() const;
        auto XYFocusRightNavigationStrategy(winrt::Microsoft::UI::Xaml::Input::XYFocusNavigationStrategy const& value) const;
        [[nodiscard]] auto IsTabStop() const;
        auto IsTabStop(bool value) const;
        [[nodiscard]] auto TabIndex() const;
        auto TabIndex(int32_t value) const;
        auto Click(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Xaml::Documents::Hyperlink, winrt::Microsoft::UI::Xaml::Documents::HyperlinkClickEventArgs> const& handler) const;
        using Click_revoker = impl::event_revoker<winrt::Microsoft::UI::Xaml::Documents::IHyperlink, &impl::abi_t<winrt::Microsoft::UI::Xaml::Documents::IHyperlink>::remove_Click>;
        [[nodiscard]] auto Click(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Xaml::Documents::Hyperlink, winrt::Microsoft::UI::Xaml::Documents::HyperlinkClickEventArgs> const& handler) const;
        auto Click(winrt::event_token const& token) const noexcept;
        auto GotFocus(winrt::Microsoft::UI::Xaml::RoutedEventHandler const& handler) const;
        using GotFocus_revoker = impl::event_revoker<winrt::Microsoft::UI::Xaml::Documents::IHyperlink, &impl::abi_t<winrt::Microsoft::UI::Xaml::Documents::IHyperlink>::remove_GotFocus>;
        [[nodiscard]] auto GotFocus(auto_revoke_t, winrt::Microsoft::UI::Xaml::RoutedEventHandler const& handler) const;
        auto GotFocus(winrt::event_token const& token) const noexcept;
        auto LostFocus(winrt::Microsoft::UI::Xaml::RoutedEventHandler const& handler) const;
        using LostFocus_revoker = impl::event_revoker<winrt::Microsoft::UI::Xaml::Documents::IHyperlink, &impl::abi_t<winrt::Microsoft::UI::Xaml::Documents::IHyperlink>::remove_LostFocus>;
        [[nodiscard]] auto LostFocus(auto_revoke_t, winrt::Microsoft::UI::Xaml::RoutedEventHandler const& handler) const;
        auto LostFocus(winrt::event_token const& token) const noexcept;
        auto Focus(winrt::Microsoft::UI::Xaml::FocusState const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IHyperlink>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IHyperlink<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IHyperlinkClickEventArgs
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkClickEventArgs>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IHyperlinkClickEventArgs<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IHyperlinkStatics
    {
        [[nodiscard]] auto NavigateUriProperty() const;
        [[nodiscard]] auto UnderlineStyleProperty() const;
        [[nodiscard]] auto XYFocusLeftProperty() const;
        [[nodiscard]] auto XYFocusRightProperty() const;
        [[nodiscard]] auto XYFocusUpProperty() const;
        [[nodiscard]] auto XYFocusDownProperty() const;
        [[nodiscard]] auto ElementSoundModeProperty() const;
        [[nodiscard]] auto FocusStateProperty() const;
        [[nodiscard]] auto XYFocusUpNavigationStrategyProperty() const;
        [[nodiscard]] auto XYFocusDownNavigationStrategyProperty() const;
        [[nodiscard]] auto XYFocusLeftNavigationStrategyProperty() const;
        [[nodiscard]] auto XYFocusRightNavigationStrategyProperty() const;
        [[nodiscard]] auto IsTabStopProperty() const;
        [[nodiscard]] auto TabIndexProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IHyperlinkStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IHyperlinkStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IInline
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IInline>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IInline<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IInlineFactory
    {
        auto CreateInstance(winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IInlineFactory>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IInlineFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IInlineUIContainer
    {
        [[nodiscard]] auto Child() const;
        auto Child(winrt::Microsoft::UI::Xaml::UIElement const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IInlineUIContainer>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IInlineUIContainer<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IItalic
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IItalic>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IItalic<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ILineBreak
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ILineBreak>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ILineBreak<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IParagraph
    {
        [[nodiscard]] auto Inlines() const;
        [[nodiscard]] auto TextIndent() const;
        auto TextIndent(double value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IParagraph>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IParagraph<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IParagraphStatics
    {
        [[nodiscard]] auto TextIndentProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IParagraphStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IParagraphStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IRun
    {
        [[nodiscard]] auto Text() const;
        auto Text(param::hstring const& value) const;
        [[nodiscard]] auto FlowDirection() const;
        auto FlowDirection(winrt::Microsoft::UI::Xaml::FlowDirection const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IRun>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IRun<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IRunStatics
    {
        [[nodiscard]] auto FlowDirectionProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IRunStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IRunStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ISpan
    {
        [[nodiscard]] auto Inlines() const;
        auto Inlines(winrt::Microsoft::UI::Xaml::Documents::InlineCollection const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ISpan>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ISpan<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ISpanFactory
    {
        auto CreateInstance(winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ISpanFactory>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ISpanFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextElement
    {
        [[nodiscard]] auto Name() const;
        [[nodiscard]] auto FontSize() const;
        auto FontSize(double value) const;
        [[nodiscard]] auto FontFamily() const;
        auto FontFamily(winrt::Microsoft::UI::Xaml::Media::FontFamily const& value) const;
        [[nodiscard]] auto FontWeight() const;
        auto FontWeight(winrt::Windows::UI::Text::FontWeight const& value) const;
        [[nodiscard]] auto FontStyle() const;
        auto FontStyle(winrt::Windows::UI::Text::FontStyle const& value) const;
        [[nodiscard]] auto FontStretch() const;
        auto FontStretch(winrt::Windows::UI::Text::FontStretch const& value) const;
        [[nodiscard]] auto CharacterSpacing() const;
        auto CharacterSpacing(int32_t value) const;
        [[nodiscard]] auto Foreground() const;
        auto Foreground(winrt::Microsoft::UI::Xaml::Media::Brush const& value) const;
        [[nodiscard]] auto Language() const;
        auto Language(param::hstring const& value) const;
        [[nodiscard]] auto IsTextScaleFactorEnabled() const;
        auto IsTextScaleFactorEnabled(bool value) const;
        [[nodiscard]] auto TextDecorations() const;
        auto TextDecorations(winrt::Windows::UI::Text::TextDecorations const& value) const;
        [[nodiscard]] auto ContentStart() const;
        [[nodiscard]] auto ContentEnd() const;
        [[nodiscard]] auto ElementStart() const;
        [[nodiscard]] auto ElementEnd() const;
        [[nodiscard]] auto AllowFocusOnInteraction() const;
        auto AllowFocusOnInteraction(bool value) const;
        [[nodiscard]] auto AccessKey() const;
        auto AccessKey(param::hstring const& value) const;
        [[nodiscard]] auto ExitDisplayModeOnAccessKeyInvoked() const;
        auto ExitDisplayModeOnAccessKeyInvoked(bool value) const;
        [[nodiscard]] auto IsAccessKeyScope() const;
        auto IsAccessKeyScope(bool value) const;
        [[nodiscard]] auto AccessKeyScopeOwner() const;
        auto AccessKeyScopeOwner(winrt::Microsoft::UI::Xaml::DependencyObject const& value) const;
        [[nodiscard]] auto KeyTipPlacementMode() const;
        auto KeyTipPlacementMode(winrt::Microsoft::UI::Xaml::Input::KeyTipPlacementMode const& value) const;
        [[nodiscard]] auto KeyTipHorizontalOffset() const;
        auto KeyTipHorizontalOffset(double value) const;
        [[nodiscard]] auto KeyTipVerticalOffset() const;
        auto KeyTipVerticalOffset(double value) const;
        [[nodiscard]] auto XamlRoot() const;
        auto XamlRoot(winrt::Microsoft::UI::Xaml::XamlRoot const& value) const;
        auto AccessKeyDisplayRequested(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Xaml::Documents::TextElement, winrt::Microsoft::UI::Xaml::Input::AccessKeyDisplayRequestedEventArgs> const& handler) const;
        using AccessKeyDisplayRequested_revoker = impl::event_revoker<winrt::Microsoft::UI::Xaml::Documents::ITextElement, &impl::abi_t<winrt::Microsoft::UI::Xaml::Documents::ITextElement>::remove_AccessKeyDisplayRequested>;
        [[nodiscard]] auto AccessKeyDisplayRequested(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Xaml::Documents::TextElement, winrt::Microsoft::UI::Xaml::Input::AccessKeyDisplayRequestedEventArgs> const& handler) const;
        auto AccessKeyDisplayRequested(winrt::event_token const& token) const noexcept;
        auto AccessKeyDisplayDismissed(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Xaml::Documents::TextElement, winrt::Microsoft::UI::Xaml::Input::AccessKeyDisplayDismissedEventArgs> const& handler) const;
        using AccessKeyDisplayDismissed_revoker = impl::event_revoker<winrt::Microsoft::UI::Xaml::Documents::ITextElement, &impl::abi_t<winrt::Microsoft::UI::Xaml::Documents::ITextElement>::remove_AccessKeyDisplayDismissed>;
        [[nodiscard]] auto AccessKeyDisplayDismissed(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Xaml::Documents::TextElement, winrt::Microsoft::UI::Xaml::Input::AccessKeyDisplayDismissedEventArgs> const& handler) const;
        auto AccessKeyDisplayDismissed(winrt::event_token const& token) const noexcept;
        auto AccessKeyInvoked(winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Xaml::Documents::TextElement, winrt::Microsoft::UI::Xaml::Input::AccessKeyInvokedEventArgs> const& handler) const;
        using AccessKeyInvoked_revoker = impl::event_revoker<winrt::Microsoft::UI::Xaml::Documents::ITextElement, &impl::abi_t<winrt::Microsoft::UI::Xaml::Documents::ITextElement>::remove_AccessKeyInvoked>;
        [[nodiscard]] auto AccessKeyInvoked(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler<winrt::Microsoft::UI::Xaml::Documents::TextElement, winrt::Microsoft::UI::Xaml::Input::AccessKeyInvokedEventArgs> const& handler) const;
        auto AccessKeyInvoked(winrt::event_token const& token) const noexcept;
        auto FindName(param::hstring const& name) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextElement>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextElement<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextElementFactory
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextElementFactory>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextElementFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextElementOverrides
    {
        auto OnDisconnectVisualChildren() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextElementOverrides>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextElementOverrides<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextElementStatics
    {
        [[nodiscard]] auto FontSizeProperty() const;
        [[nodiscard]] auto FontFamilyProperty() const;
        [[nodiscard]] auto FontWeightProperty() const;
        [[nodiscard]] auto FontStyleProperty() const;
        [[nodiscard]] auto FontStretchProperty() const;
        [[nodiscard]] auto CharacterSpacingProperty() const;
        [[nodiscard]] auto ForegroundProperty() const;
        [[nodiscard]] auto LanguageProperty() const;
        [[nodiscard]] auto IsTextScaleFactorEnabledProperty() const;
        [[nodiscard]] auto TextDecorationsProperty() const;
        [[nodiscard]] auto AllowFocusOnInteractionProperty() const;
        [[nodiscard]] auto AccessKeyProperty() const;
        [[nodiscard]] auto ExitDisplayModeOnAccessKeyInvokedProperty() const;
        [[nodiscard]] auto IsAccessKeyScopeProperty() const;
        [[nodiscard]] auto AccessKeyScopeOwnerProperty() const;
        [[nodiscard]] auto KeyTipPlacementModeProperty() const;
        [[nodiscard]] auto KeyTipHorizontalOffsetProperty() const;
        [[nodiscard]] auto KeyTipVerticalOffsetProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextElementStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextElementStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextHighlighter
    {
        [[nodiscard]] auto Ranges() const;
        [[nodiscard]] auto Foreground() const;
        auto Foreground(winrt::Microsoft::UI::Xaml::Media::Brush const& value) const;
        [[nodiscard]] auto Background() const;
        auto Background(winrt::Microsoft::UI::Xaml::Media::Brush const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighter>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextHighlighter<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextHighlighterBase
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBase>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextHighlighterBase<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextHighlighterBaseFactory
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterBaseFactory>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextHighlighterBaseFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextHighlighterFactory
    {
        auto CreateInstance(winrt::Windows::Foundation::IInspectable const& baseInterface, winrt::Windows::Foundation::IInspectable& innerInterface) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterFactory>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextHighlighterFactory<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextHighlighterStatics
    {
        [[nodiscard]] auto ForegroundProperty() const;
        [[nodiscard]] auto BackgroundProperty() const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextHighlighterStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextHighlighterStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITextPointer
    {
        [[nodiscard]] auto Parent() const;
        [[nodiscard]] auto VisualParent() const;
        [[nodiscard]] auto LogicalDirection() const;
        [[nodiscard]] auto Offset() const;
        auto GetCharacterRect(winrt::Microsoft::UI::Xaml::Documents::LogicalDirection const& direction) const;
        auto GetPositionAtOffset(int32_t offset, winrt::Microsoft::UI::Xaml::Documents::LogicalDirection const& direction) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITextPointer>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITextPointer<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITypography
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITypography>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITypography<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_ITypographyStatics
    {
        [[nodiscard]] auto AnnotationAlternatesProperty() const;
        auto GetAnnotationAlternates(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetAnnotationAlternates(winrt::Microsoft::UI::Xaml::DependencyObject const& element, int32_t value) const;
        [[nodiscard]] auto EastAsianExpertFormsProperty() const;
        auto GetEastAsianExpertForms(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetEastAsianExpertForms(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto EastAsianLanguageProperty() const;
        auto GetEastAsianLanguage(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetEastAsianLanguage(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::FontEastAsianLanguage const& value) const;
        [[nodiscard]] auto EastAsianWidthsProperty() const;
        auto GetEastAsianWidths(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetEastAsianWidths(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::FontEastAsianWidths const& value) const;
        [[nodiscard]] auto StandardLigaturesProperty() const;
        auto GetStandardLigatures(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStandardLigatures(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto ContextualLigaturesProperty() const;
        auto GetContextualLigatures(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetContextualLigatures(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto DiscretionaryLigaturesProperty() const;
        auto GetDiscretionaryLigatures(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetDiscretionaryLigatures(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto HistoricalLigaturesProperty() const;
        auto GetHistoricalLigatures(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetHistoricalLigatures(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StandardSwashesProperty() const;
        auto GetStandardSwashes(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStandardSwashes(winrt::Microsoft::UI::Xaml::DependencyObject const& element, int32_t value) const;
        [[nodiscard]] auto ContextualSwashesProperty() const;
        auto GetContextualSwashes(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetContextualSwashes(winrt::Microsoft::UI::Xaml::DependencyObject const& element, int32_t value) const;
        [[nodiscard]] auto ContextualAlternatesProperty() const;
        auto GetContextualAlternates(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetContextualAlternates(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticAlternatesProperty() const;
        auto GetStylisticAlternates(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticAlternates(winrt::Microsoft::UI::Xaml::DependencyObject const& element, int32_t value) const;
        [[nodiscard]] auto StylisticSet1Property() const;
        auto GetStylisticSet1(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet1(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet2Property() const;
        auto GetStylisticSet2(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet2(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet3Property() const;
        auto GetStylisticSet3(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet3(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet4Property() const;
        auto GetStylisticSet4(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet4(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet5Property() const;
        auto GetStylisticSet5(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet5(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet6Property() const;
        auto GetStylisticSet6(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet6(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet7Property() const;
        auto GetStylisticSet7(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet7(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet8Property() const;
        auto GetStylisticSet8(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet8(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet9Property() const;
        auto GetStylisticSet9(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet9(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet10Property() const;
        auto GetStylisticSet10(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet10(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet11Property() const;
        auto GetStylisticSet11(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet11(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet12Property() const;
        auto GetStylisticSet12(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet12(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet13Property() const;
        auto GetStylisticSet13(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet13(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet14Property() const;
        auto GetStylisticSet14(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet14(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet15Property() const;
        auto GetStylisticSet15(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet15(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet16Property() const;
        auto GetStylisticSet16(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet16(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet17Property() const;
        auto GetStylisticSet17(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet17(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet18Property() const;
        auto GetStylisticSet18(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet18(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet19Property() const;
        auto GetStylisticSet19(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet19(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto StylisticSet20Property() const;
        auto GetStylisticSet20(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetStylisticSet20(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto CapitalsProperty() const;
        auto GetCapitals(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetCapitals(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::FontCapitals const& value) const;
        [[nodiscard]] auto CapitalSpacingProperty() const;
        auto GetCapitalSpacing(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetCapitalSpacing(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto KerningProperty() const;
        auto GetKerning(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetKerning(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto CaseSensitiveFormsProperty() const;
        auto GetCaseSensitiveForms(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetCaseSensitiveForms(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto HistoricalFormsProperty() const;
        auto GetHistoricalForms(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetHistoricalForms(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto FractionProperty() const;
        auto GetFraction(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetFraction(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::FontFraction const& value) const;
        [[nodiscard]] auto NumeralStyleProperty() const;
        auto GetNumeralStyle(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetNumeralStyle(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::FontNumeralStyle const& value) const;
        [[nodiscard]] auto NumeralAlignmentProperty() const;
        auto GetNumeralAlignment(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetNumeralAlignment(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::FontNumeralAlignment const& value) const;
        [[nodiscard]] auto SlashedZeroProperty() const;
        auto GetSlashedZero(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetSlashedZero(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto MathematicalGreekProperty() const;
        auto GetMathematicalGreek(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetMathematicalGreek(winrt::Microsoft::UI::Xaml::DependencyObject const& element, bool value) const;
        [[nodiscard]] auto VariantsProperty() const;
        auto GetVariants(winrt::Microsoft::UI::Xaml::DependencyObject const& element) const;
        auto SetVariants(winrt::Microsoft::UI::Xaml::DependencyObject const& element, winrt::Microsoft::UI::Xaml::FontVariants const& value) const;
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::ITypographyStatics>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_ITypographyStatics<D>;
    };
    template <typename D>
    struct consume_Microsoft_UI_Xaml_Documents_IUnderline
    {
    };
    template <> struct consume<winrt::Microsoft::UI::Xaml::Documents::IUnderline>
    {
        template <typename D> using type = consume_Microsoft_UI_Xaml_Documents_IUnderline<D>;
    };
    struct struct_Microsoft_UI_Xaml_Documents_TextRange
    {
        int32_t StartIndex;
        int32_t Length;
    };
    template <> struct abi<Microsoft::UI::Xaml::Documents::TextRange>
    {
        using type = struct_Microsoft_UI_Xaml_Documents_TextRange;
    };
}
#endif
