//
// Copyright (c) Microsoft Corporation. All rights reserved.
// 
//
// File generated by WinMDIDL version 8.00.0021
//

import "inspectable.idl";
import "AsyncInfo.idl";
import "EventToken.idl";
import "windowscontracts.idl";
import "Windows.Foundation.idl";
import "Windows.Globalization.idl";
import "Windows.UI.Text.idl";
import "Windows.UI.ViewManagement.idl";

// Forward Declare
namespace Windows
{
    namespace Foundation
    {
        runtimeclass Deferral;

        typedef struct Rect Rect;

        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace Globalization
    {
        runtimeclass Language;
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Text
        {
            typedef enum UnderlineType UnderlineType;
        }
    }
}
namespace Windows
{
    namespace UI
    {
        namespace ViewManagement
        {
            typedef enum UIElementType UIElementType;
        }
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Text
        {
            namespace Core
            {
                typedef enum CoreTextFormatUpdatingReason CoreTextFormatUpdatingReason;

                typedef enum CoreTextFormatUpdatingResult CoreTextFormatUpdatingResult;

                typedef enum CoreTextInputPaneDisplayPolicy CoreTextInputPaneDisplayPolicy;

                typedef enum CoreTextInputScope CoreTextInputScope;

                typedef enum CoreTextSelectionUpdatingResult CoreTextSelectionUpdatingResult;

                typedef enum CoreTextTextUpdatingResult CoreTextTextUpdatingResult;

                typedef struct CoreTextRange CoreTextRange;

                interface ICoreTextCompositionCompletedEventArgs;

                interface ICoreTextCompositionSegment;

                interface ICoreTextCompositionStartedEventArgs;

                interface ICoreTextEditContext;

                interface ICoreTextEditContext2;

                interface ICoreTextFormatUpdatingEventArgs;

                interface ICoreTextLayoutBounds;

                interface ICoreTextLayoutRequest;

                interface ICoreTextLayoutRequest2;

                interface ICoreTextLayoutRequestedEventArgs;

                interface ICoreTextSelectionRequest;

                interface ICoreTextSelectionRequestedEventArgs;

                interface ICoreTextSelectionUpdatingEventArgs;

                interface ICoreTextServicesManager;

                interface ICoreTextServicesManagerStatics;

                interface ICoreTextServicesStatics;

                interface ICoreTextTextRequest;

                interface ICoreTextTextRequestedEventArgs;

                interface ICoreTextTextUpdatingEventArgs;

                runtimeclass CoreTextCompositionCompletedEventArgs;

                runtimeclass CoreTextCompositionSegment;

                runtimeclass CoreTextCompositionStartedEventArgs;

                runtimeclass CoreTextEditContext;

                runtimeclass CoreTextFormatUpdatingEventArgs;

                runtimeclass CoreTextLayoutBounds;

                runtimeclass CoreTextLayoutRequest;

                runtimeclass CoreTextLayoutRequestedEventArgs;

                runtimeclass CoreTextSelectionRequest;

                runtimeclass CoreTextSelectionRequestedEventArgs;

                runtimeclass CoreTextSelectionUpdatingEventArgs;

                runtimeclass CoreTextServicesConstants;

                runtimeclass CoreTextServicesManager;

                runtimeclass CoreTextTextRequest;

                runtimeclass CoreTextTextRequestedEventArgs;

                runtimeclass CoreTextTextUpdatingEventArgs;
            }
        }
    }
}

// Generic instantiations
namespace Windows
{
    namespace UI
    {
        namespace Text
        {
            namespace Core
            {
                declare
                {
                    interface Windows.Foundation.Collections.IIterable<Windows.UI.Text.Core.CoreTextCompositionSegment*>;

                    interface Windows.Foundation.Collections.IIterator<Windows.UI.Text.Core.CoreTextCompositionSegment*>;

                    interface Windows.Foundation.Collections.IVectorView<Windows.UI.Text.Core.CoreTextCompositionSegment*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, IInspectable*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextCompositionCompletedEventArgs*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextCompositionStartedEventArgs*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextFormatUpdatingEventArgs*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextLayoutRequestedEventArgs*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextSelectionRequestedEventArgs*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextSelectionUpdatingEventArgs*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextTextRequestedEventArgs*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextTextUpdatingEventArgs*>;

                    interface Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextServicesManager*, IInspectable*>;
                }
            }
        }
    }
}

// Type definition
namespace Windows
{
    namespace UI
    {
        namespace Text
        {
            namespace Core
            {
                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                enum CoreTextFormatUpdatingReason
                {
                    None                         = 0,
                    CompositionUnconverted       = 1,
                    CompositionConverted         = 2,
                    CompositionTargetUnconverted = 3,
                    CompositionTargetConverted   = 4
                };

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                enum CoreTextFormatUpdatingResult
                {
                    Succeeded = 0,
                    Failed    = 1
                };

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                enum CoreTextInputPaneDisplayPolicy
                {
                    Automatic = 0,
                    Manual    = 1
                };

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                enum CoreTextInputScope
                {
                    Default                 = 0,
                    Url                     = 1,
                    FilePath                = 2,
                    FileName                = 3,
                    EmailUserName           = 4,
                    EmailAddress            = 5,
                    UserName                = 6,
                    PersonalFullName        = 7,
                    PersonalNamePrefix      = 8,
                    PersonalGivenName       = 9,
                    PersonalMiddleName      = 10,
                    PersonalSurname         = 11,
                    PersonalNameSuffix      = 12,
                    Address                 = 13,
                    AddressPostalCode       = 14,
                    AddressStreet           = 15,
                    AddressStateOrProvince  = 16,
                    AddressCity             = 17,
                    AddressCountryName      = 18,
                    AddressCountryShortName = 19,
                    CurrencyAmountAndSymbol = 20,
                    CurrencyAmount          = 21,
                    Date                    = 22,
                    DateMonth               = 23,
                    DateDay                 = 24,
                    DateYear                = 25,
                    DateMonthName           = 26,
                    DateDayName             = 27,
                    Number                  = 29,
                    SingleCharacter         = 30,
                    Password                = 31,
                    TelephoneNumber         = 32,
                    TelephoneCountryCode    = 33,
                    TelephoneAreaCode       = 34,
                    TelephoneLocalNumber    = 35,
                    Time                    = 36,
                    TimeHour                = 37,
                    TimeMinuteOrSecond      = 38,
                    NumberFullWidth         = 39,
                    AlphanumericHalfWidth   = 40,
                    AlphanumericFullWidth   = 41,
                    CurrencyChinese         = 42,
                    Bopomofo                = 43,
                    Hiragana                = 44,
                    KatakanaHalfWidth       = 45,
                    KatakanaFullWidth       = 46,
                    Hanja                   = 47,
                    HangulHalfWidth         = 48,
                    HangulFullWidth         = 49,
                    Search                  = 50,
                    Formula                 = 51,
                    SearchIncremental       = 52,
                    ChineseHalfWidth        = 53,
                    ChineseFullWidth        = 54,
                    NativeScript            = 55,
                    Text                    = 57,
                    Chat                    = 58,
                    NameOrPhoneNumber       = 59,
                    EmailUserNameOrAddress  = 60,
                    Private                 = 61,
                    Maps                    = 62,
                    PasswordNumeric         = 63,
                    FormulaNumber           = 67,
                    [contract(Windows.Foundation.UniversalApiContract, 3.0)]
                    ChatWithoutEmoji        = 68,
                    [contract(Windows.Foundation.UniversalApiContract, 5.0)]
                    Digits                  = 28,
                    [contract(Windows.Foundation.UniversalApiContract, 5.0)]
                    PinNumeric              = 64,
                    [contract(Windows.Foundation.UniversalApiContract, 5.0)]
                    PinAlphanumeric         = 65
                };

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                enum CoreTextSelectionUpdatingResult
                {
                    Succeeded = 0,
                    Failed    = 1
                };

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                enum CoreTextTextUpdatingResult
                {
                    Succeeded = 0,
                    Failed    = 1
                };

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                struct CoreTextRange
                {
                    INT32 StartCaretPosition;
                    INT32 EndCaretPosition;
                };

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextCompositionCompletedEventArgs)]
                [uuid(1F34EBB6-B79F-4121-A5E7-FDA9B8616E30)]
                interface ICoreTextCompositionCompletedEventArgs : IInspectable
                {
                    [propget] HRESULT IsCanceled([out] [retval] boolean* value);
                    [propget] HRESULT CompositionSegments([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.UI.Text.Core.CoreTextCompositionSegment*>** value);
                    HRESULT GetDeferral([out] [retval] Windows.Foundation.Deferral** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextCompositionSegment)]
                [uuid(776C6BD9-4EAD-4DA7-8F47-3A88B523CC34)]
                interface ICoreTextCompositionSegment : IInspectable
                {
                    [propget] HRESULT PreconversionString([out] [retval] HSTRING* value);
                    [propget] HRESULT Range([out] [retval] Windows.UI.Text.Core.CoreTextRange* value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextCompositionStartedEventArgs)]
                [uuid(276B16A9-64E7-4AB0-BC4B-A02D73835BFB)]
                interface ICoreTextCompositionStartedEventArgs : IInspectable
                {
                    [propget] HRESULT IsCanceled([out] [retval] boolean* value);
                    HRESULT GetDeferral([out] [retval] Windows.Foundation.Deferral** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextEditContext)]
                [uuid(BF6608AF-4041-47C3-B263-A918EB5EAEF2)]
                interface ICoreTextEditContext : IInspectable
                {
                    [propget] HRESULT Name([out] [retval] HSTRING* value);
                    [propput] HRESULT Name([in] HSTRING value);
                    [propget] HRESULT InputScope([out] [retval] Windows.UI.Text.Core.CoreTextInputScope* value);
                    [propput] HRESULT InputScope([in] Windows.UI.Text.Core.CoreTextInputScope value);
                    [propget] HRESULT IsReadOnly([out] [retval] boolean* value);
                    [propput] HRESULT IsReadOnly([in] boolean value);
                    [propget] HRESULT InputPaneDisplayPolicy([out] [retval] Windows.UI.Text.Core.CoreTextInputPaneDisplayPolicy* value);
                    [propput] HRESULT InputPaneDisplayPolicy([in] Windows.UI.Text.Core.CoreTextInputPaneDisplayPolicy value);
                    [eventadd] HRESULT TextRequested([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextTextRequestedEventArgs*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT TextRequested([in] EventRegistrationToken cookie);
                    [eventadd] HRESULT SelectionRequested([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextSelectionRequestedEventArgs*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT SelectionRequested([in] EventRegistrationToken cookie);
                    [eventadd] HRESULT LayoutRequested([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextLayoutRequestedEventArgs*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT LayoutRequested([in] EventRegistrationToken cookie);
                    [eventadd] HRESULT TextUpdating([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextTextUpdatingEventArgs*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT TextUpdating([in] EventRegistrationToken cookie);
                    [eventadd] HRESULT SelectionUpdating([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextSelectionUpdatingEventArgs*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT SelectionUpdating([in] EventRegistrationToken cookie);
                    [eventadd] HRESULT FormatUpdating([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextFormatUpdatingEventArgs*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT FormatUpdating([in] EventRegistrationToken cookie);
                    [eventadd] HRESULT CompositionStarted([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextCompositionStartedEventArgs*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT CompositionStarted([in] EventRegistrationToken cookie);
                    [eventadd] HRESULT CompositionCompleted([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, Windows.UI.Text.Core.CoreTextCompositionCompletedEventArgs*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT CompositionCompleted([in] EventRegistrationToken cookie);
                    [eventadd] HRESULT FocusRemoved([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT FocusRemoved([in] EventRegistrationToken cookie);
                    HRESULT NotifyFocusEnter();
                    HRESULT NotifyFocusLeave();
                    HRESULT NotifyTextChanged([in] Windows.UI.Text.Core.CoreTextRange modifiedRange, [in] INT32 newLength, [in] Windows.UI.Text.Core.CoreTextRange newSelection);
                    HRESULT NotifySelectionChanged([in] Windows.UI.Text.Core.CoreTextRange selection);
                    HRESULT NotifyLayoutChanged();
                }

                [contract(Windows.Foundation.UniversalApiContract, 2.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextEditContext)]
                [uuid(B1867DBB-083B-49E1-B281-2B35D62BF466)]
                interface ICoreTextEditContext2 : IInspectable
                {
                    [eventadd] HRESULT NotifyFocusLeaveCompleted([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextEditContext*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT NotifyFocusLeaveCompleted([in] EventRegistrationToken cookie);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextFormatUpdatingEventArgs)]
                [uuid(7310BD33-B4A8-43B1-B37B-0724D4ACA7AB)]
                interface ICoreTextFormatUpdatingEventArgs : IInspectable
                {
                    [propget] HRESULT Range([out] [retval] Windows.UI.Text.Core.CoreTextRange* value);
                    [propget] HRESULT TextColor([out] [retval] Windows.Foundation.IReference<Windows.UI.ViewManagement.UIElementType>** value);
                    [propget] HRESULT BackgroundColor([out] [retval] Windows.Foundation.IReference<Windows.UI.ViewManagement.UIElementType>** value);
                    [propget] HRESULT UnderlineColor([out] [retval] Windows.Foundation.IReference<Windows.UI.ViewManagement.UIElementType>** value);
                    [propget] HRESULT UnderlineType([out] [retval] Windows.Foundation.IReference<Windows.UI.Text.UnderlineType>** value);
                    [propget] HRESULT Reason([out] [retval] Windows.UI.Text.Core.CoreTextFormatUpdatingReason* value);
                    [propget] HRESULT Result([out] [retval] Windows.UI.Text.Core.CoreTextFormatUpdatingResult* value);
                    [propput] HRESULT Result([in] Windows.UI.Text.Core.CoreTextFormatUpdatingResult value);
                    [propget] HRESULT IsCanceled([out] [retval] boolean* value);
                    HRESULT GetDeferral([out] [retval] Windows.Foundation.Deferral** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextLayoutBounds)]
                [uuid(E972C974-4436-4917-80D0-A525E4CA6780)]
                interface ICoreTextLayoutBounds : IInspectable
                {
                    [propget] HRESULT TextBounds([out] [retval] Windows.Foundation.Rect* value);
                    [propput] HRESULT TextBounds([in] Windows.Foundation.Rect value);
                    [propget] HRESULT ControlBounds([out] [retval] Windows.Foundation.Rect* value);
                    [propput] HRESULT ControlBounds([in] Windows.Foundation.Rect value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextLayoutRequest)]
                [uuid(2555A8CC-51FD-4F03-98BF-AC78174D68E0)]
                interface ICoreTextLayoutRequest : IInspectable
                {
                    [propget] HRESULT Range([out] [retval] Windows.UI.Text.Core.CoreTextRange* value);
                    [propget] HRESULT LayoutBounds([out] [retval] Windows.UI.Text.Core.CoreTextLayoutBounds** value);
                    [propget] HRESULT IsCanceled([out] [retval] boolean* value);
                    HRESULT GetDeferral([out] [retval] Windows.Foundation.Deferral** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 7.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextLayoutRequest)]
                [uuid(676DE624-CD3D-4BCD-BF01-7F7110954511)]
                interface ICoreTextLayoutRequest2 : IInspectable
                {
                    [propget] HRESULT LayoutBoundsVisualPixels([out] [retval] Windows.UI.Text.Core.CoreTextLayoutBounds** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextLayoutRequestedEventArgs)]
                [uuid(B1DC6AE0-9A7B-4E9E-A566-4A6B5F8AD676)]
                interface ICoreTextLayoutRequestedEventArgs : IInspectable
                {
                    [propget] HRESULT Request([out] [retval] Windows.UI.Text.Core.CoreTextLayoutRequest** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextSelectionRequest)]
                [uuid(F0A70403-208B-4301-883C-74CA7485FD8D)]
                interface ICoreTextSelectionRequest : IInspectable
                {
                    [propget] HRESULT Selection([out] [retval] Windows.UI.Text.Core.CoreTextRange* value);
                    [propput] HRESULT Selection([in] Windows.UI.Text.Core.CoreTextRange value);
                    [propget] HRESULT IsCanceled([out] [retval] boolean* value);
                    HRESULT GetDeferral([out] [retval] Windows.Foundation.Deferral** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextSelectionRequestedEventArgs)]
                [uuid(13C6682B-F614-421A-8F4B-9EC8A5A37FCD)]
                interface ICoreTextSelectionRequestedEventArgs : IInspectable
                {
                    [propget] HRESULT Request([out] [retval] Windows.UI.Text.Core.CoreTextSelectionRequest** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextSelectionUpdatingEventArgs)]
                [uuid(D445839F-FE7F-4BD5-8A26-0922C1B3E639)]
                interface ICoreTextSelectionUpdatingEventArgs : IInspectable
                {
                    [propget] HRESULT Selection([out] [retval] Windows.UI.Text.Core.CoreTextRange* value);
                    [propget] HRESULT Result([out] [retval] Windows.UI.Text.Core.CoreTextSelectionUpdatingResult* value);
                    [propput] HRESULT Result([in] Windows.UI.Text.Core.CoreTextSelectionUpdatingResult value);
                    [propget] HRESULT IsCanceled([out] [retval] boolean* value);
                    HRESULT GetDeferral([out] [retval] Windows.Foundation.Deferral** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextServicesManager)]
                [uuid(C2507D83-6E0A-4A8A-BDF8-1948874854BA)]
                interface ICoreTextServicesManager : IInspectable
                {
                    [propget] HRESULT InputLanguage([out] [retval] Windows.Globalization.Language** value);
                    [eventadd] HRESULT InputLanguageChanged([in] Windows.Foundation.TypedEventHandler<Windows.UI.Text.Core.CoreTextServicesManager*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* cookie);
                    [eventremove] HRESULT InputLanguageChanged([in] EventRegistrationToken cookie);
                    HRESULT CreateEditContext([out] [retval] Windows.UI.Text.Core.CoreTextEditContext** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextServicesManager)]
                [uuid(1520A388-E2CF-4D65-AEB9-B32D86FE39B9)]
                interface ICoreTextServicesManagerStatics : IInspectable
                {
                    HRESULT GetForCurrentView([out] [retval] Windows.UI.Text.Core.CoreTextServicesManager** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextServicesConstants)]
                [uuid(91859A46-ECCF-47A4-8AE7-098A9C6FBB15)]
                interface ICoreTextServicesStatics : IInspectable
                {
                    [propget] HRESULT HiddenCharacter([out] [retval] WCHAR* value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextTextRequest)]
                [uuid(50D950A9-F51E-4CC1-8CA1-E6346D1A61BE)]
                interface ICoreTextTextRequest : IInspectable
                {
                    [propget] HRESULT Range([out] [retval] Windows.UI.Text.Core.CoreTextRange* value);
                    [propget] HRESULT Text([out] [retval] HSTRING* value);
                    [propput] HRESULT Text([in] HSTRING value);
                    [propget] HRESULT IsCanceled([out] [retval] boolean* value);
                    HRESULT GetDeferral([out] [retval] Windows.Foundation.Deferral** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextTextRequestedEventArgs)]
                [uuid(F096A2D0-41C6-4C02-8B1A-D953B00CABB3)]
                interface ICoreTextTextRequestedEventArgs : IInspectable
                {
                    [propget] HRESULT Request([out] [retval] Windows.UI.Text.Core.CoreTextTextRequest** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [exclusiveto(Windows.UI.Text.Core.CoreTextTextUpdatingEventArgs)]
                [uuid(EEA7918D-CC2B-4F03-8FF6-02FD217DB450)]
                interface ICoreTextTextUpdatingEventArgs : IInspectable
                {
                    [propget] HRESULT Range([out] [retval] Windows.UI.Text.Core.CoreTextRange* value);
                    [propget] HRESULT Text([out] [retval] HSTRING* value);
                    [propget] HRESULT NewSelection([out] [retval] Windows.UI.Text.Core.CoreTextRange* value);
                    [propget] HRESULT InputLanguage([out] [retval] Windows.Globalization.Language** value);
                    [propget] HRESULT Result([out] [retval] Windows.UI.Text.Core.CoreTextTextUpdatingResult* value);
                    [propput] HRESULT Result([in] Windows.UI.Text.Core.CoreTextTextUpdatingResult value);
                    [propget] HRESULT IsCanceled([out] [retval] boolean* value);
                    HRESULT GetDeferral([out] [retval] Windows.Foundation.Deferral** value);
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextCompositionCompletedEventArgs
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextCompositionCompletedEventArgs;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextCompositionSegment
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextCompositionSegment;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextCompositionStartedEventArgs
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextCompositionStartedEventArgs;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextEditContext
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextEditContext;
                    [contract(Windows.Foundation.UniversalApiContract, 2.0)] interface Windows.UI.Text.Core.ICoreTextEditContext2;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextFormatUpdatingEventArgs
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextFormatUpdatingEventArgs;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextLayoutBounds
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextLayoutBounds;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextLayoutRequest
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextLayoutRequest;
                    [contract(Windows.Foundation.UniversalApiContract, 7.0)] interface Windows.UI.Text.Core.ICoreTextLayoutRequest2;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextLayoutRequestedEventArgs
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextLayoutRequestedEventArgs;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextSelectionRequest
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextSelectionRequest;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextSelectionRequestedEventArgs
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextSelectionRequestedEventArgs;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextSelectionUpdatingEventArgs
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextSelectionUpdatingEventArgs;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                [static(Windows.UI.Text.Core.ICoreTextServicesStatics, Windows.Foundation.UniversalApiContract, 1.0)]
                runtimeclass CoreTextServicesConstants
                {
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                [static(Windows.UI.Text.Core.ICoreTextServicesManagerStatics, Windows.Foundation.UniversalApiContract, 1.0)]
                runtimeclass CoreTextServicesManager
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextServicesManager;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextTextRequest
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextTextRequest;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextTextRequestedEventArgs
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextTextRequestedEventArgs;
                }

                [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                [marshaling_behavior(agile)]
                runtimeclass CoreTextTextUpdatingEventArgs
                {
                    [default] interface Windows.UI.Text.Core.ICoreTextTextUpdatingEventArgs;
                }
            }
        }
    }
}
