//
// 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.UI.idl";
import "Windows.UI.Xaml.idl";
import "Windows.UI.Xaml.Automation.idl";
import "Windows.UI.Xaml.Automation.Peers.idl";
import "Windows.UI.Xaml.Automation.Text.idl";

// Forward Declare
namespace Windows
{
    namespace Foundation
    {
        typedef struct Point Point;

        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace UI
    {
        typedef struct Color Color;
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Xaml
        {
            namespace Automation
            {
                typedef enum AnnotationType AnnotationType;

                runtimeclass AutomationProperty;

                typedef enum DockPosition DockPosition;

                typedef enum ExpandCollapseState ExpandCollapseState;
            }
        }
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Xaml
        {
            namespace Automation
            {
                namespace Peers
                {
                    typedef enum AutomationNavigationDirection AutomationNavigationDirection;
                }
            }
        }
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Xaml
        {
            namespace Automation
            {
                typedef enum RowOrColumnMajor RowOrColumnMajor;

                typedef enum ScrollAmount ScrollAmount;

                typedef enum SupportedTextSelection SupportedTextSelection;

                typedef enum SynchronizedInputType SynchronizedInputType;
            }
        }
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Xaml
        {
            namespace Automation
            {
                namespace Text
                {
                    typedef enum TextPatternRangeEndpoint TextPatternRangeEndpoint;

                    typedef enum TextUnit TextUnit;
                }
            }
        }
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Xaml
        {
            namespace Automation
            {
                typedef enum ToggleState ToggleState;

                typedef enum WindowInteractionState WindowInteractionState;

                typedef enum WindowVisualState WindowVisualState;

                typedef enum ZoomUnit ZoomUnit;
            }
        }
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Xaml
        {
            namespace Automation
            {
                namespace Provider
                {
                    interface IAnnotationProvider;

                    interface ICustomNavigationProvider;

                    interface IDockProvider;

                    interface IDragProvider;

                    interface IDropTargetProvider;

                    interface IExpandCollapseProvider;

                    interface IGridItemProvider;

                    interface IGridProvider;

                    interface IIRawElementProviderSimple;

                    interface IInvokeProvider;

                    interface IItemContainerProvider;

                    interface IMultipleViewProvider;

                    interface IObjectModelProvider;

                    interface IRangeValueProvider;

                    interface IScrollItemProvider;

                    interface IScrollProvider;

                    interface ISelectionItemProvider;

                    interface ISelectionProvider;

                    interface ISpreadsheetItemProvider;

                    interface ISpreadsheetProvider;

                    interface IStylesProvider;

                    interface ISynchronizedInputProvider;

                    interface ITableItemProvider;

                    interface ITableProvider;

                    interface ITextChildProvider;

                    interface ITextEditProvider;

                    interface ITextProvider;

                    interface ITextProvider2;

                    interface ITextRangeProvider;

                    interface ITextRangeProvider2;

                    interface IToggleProvider;

                    interface ITransformProvider;

                    interface ITransformProvider2;

                    interface IValueProvider;

                    interface IVirtualizedItemProvider;

                    interface IWindowProvider;

                    runtimeclass IRawElementProviderSimple;
                }
            }
        }
    }
}

// Generic instantiations

// Type definition
namespace Windows
{
    namespace UI
    {
        namespace Xaml
        {
            namespace Automation
            {
                namespace Provider
                {
                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(95BA1417-4437-451B-9461-050A49B59D06)]
                    interface IAnnotationProvider : IInspectable
                    {
                        [propget] HRESULT AnnotationTypeId([out] [retval] INT32* value);
                        [propget] HRESULT AnnotationTypeName([out] [retval] HSTRING* value);
                        [propget] HRESULT Author([out] [retval] HSTRING* value);
                        [propget] HRESULT DateTime([out] [retval] HSTRING* value);
                        [propget] HRESULT Target([out] [retval] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple** value);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(2BD8A6D0-2FA3-4717-B28C-4917CE54928D)]
                    interface ICustomNavigationProvider : IInspectable
                    {
                        HRESULT NavigateCustom([in] Windows.UI.Xaml.Automation.Peers.AutomationNavigationDirection direction, [out] [retval] IInspectable** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(48C243F8-78B1-44A0-AC5F-750757BCDE3C)]
                    interface IDockProvider : IInspectable
                    {
                        [propget] HRESULT DockPosition([out] [retval] Windows.UI.Xaml.Automation.DockPosition* value);
                        HRESULT SetDockPosition([in] Windows.UI.Xaml.Automation.DockPosition dockPosition);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(2E7786A9-7FFC-4F57-B965-1EF1F373F546)]
                    interface IDragProvider : IInspectable
                    {
                        [propget] HRESULT IsGrabbed([out] [retval] boolean* value);
                        [propget] HRESULT DropEffect([out] [retval] HSTRING* value);
                        [propget] HRESULT DropEffects([out] UINT32* __valueSize, [out] [retval] [size_is(, *__valueSize)] HSTRING** value);
                        HRESULT GetGrabbedItems([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple*** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(7A245BDD-B458-4FE0-98C8-AAC89DF56D61)]
                    interface IDropTargetProvider : IInspectable
                    {
                        [propget] HRESULT DropEffect([out] [retval] HSTRING* value);
                        [propget] HRESULT DropEffects([out] UINT32* __valueSize, [out] [retval] [size_is(, *__valueSize)] HSTRING** value);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(49AC8399-D626-4543-94B9-A6D9A9593AF6)]
                    interface IExpandCollapseProvider : IInspectable
                    {
                        [propget] HRESULT ExpandCollapseState([out] [retval] Windows.UI.Xaml.Automation.ExpandCollapseState* value);
                        HRESULT Collapse();
                        HRESULT Expand();
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(FFF3683C-7407-45BB-A936-DF3ED6D3837D)]
                    interface IGridItemProvider : IInspectable
                    {
                        [propget] HRESULT Column([out] [retval] INT32* value);
                        [propget] HRESULT ColumnSpan([out] [retval] INT32* value);
                        [propget] HRESULT ContainingGrid([out] [retval] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple** value);
                        [propget] HRESULT Row([out] [retval] INT32* value);
                        [propget] HRESULT RowSpan([out] [retval] INT32* value);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(8B62B7A0-932C-4490-9A13-02FDB39A8F5B)]
                    interface IGridProvider : IInspectable
                    {
                        [propget] HRESULT ColumnCount([out] [retval] INT32* value);
                        [propget] HRESULT RowCount([out] [retval] INT32* value);
                        HRESULT GetItem([in] INT32 row, [in] INT32 column, [out] [retval] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [exclusiveto(Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple)]
                    [uuid(EC752224-9B77-4720-BB21-4AC89FDB1AFD)]
                    interface IIRawElementProviderSimple : IInspectable
                    {
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(F7D1A187-B13C-4540-B09E-6778E2DC9BA5)]
                    interface IInvokeProvider : IInspectable
                    {
                        HRESULT Invoke();
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(EF5CD845-E1D4-40F4-BAD5-C7FAD44A703E)]
                    interface IItemContainerProvider : IInspectable
                    {
                        HRESULT FindItemByProperty([in] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple* startAfter, [in] Windows.UI.Xaml.Automation.AutomationProperty* automationProperty, [in] IInspectable* value, [out] [retval] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(D014E196-0E50-4843-A5D2-C22897C8845A)]
                    interface IMultipleViewProvider : IInspectable
                    {
                        [propget] HRESULT CurrentView([out] [retval] INT32* value);
                        HRESULT GetSupportedViews([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] INT32** result);
                        HRESULT GetViewName([in] INT32 viewId, [out] [retval] HSTRING* result);
                        HRESULT SetCurrentView([in] INT32 viewId);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(C3CA36B9-0793-4ED0-BBF4-9FF4E0F98F80)]
                    interface IObjectModelProvider : IInspectable
                    {
                        HRESULT GetUnderlyingObjectModel([out] [retval] IInspectable** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(838A34A8-7D5F-4079-AF03-C3D015E93413)]
                    interface IRangeValueProvider : IInspectable
                    {
                        [propget] HRESULT IsReadOnly([out] [retval] boolean* value);
                        [propget] HRESULT LargeChange([out] [retval] DOUBLE* value);
                        [propget] HRESULT Maximum([out] [retval] DOUBLE* value);
                        [propget] HRESULT Minimum([out] [retval] DOUBLE* value);
                        [propget] HRESULT SmallChange([out] [retval] DOUBLE* value);
                        [propget] HRESULT Value([out] [retval] DOUBLE* value);
                        HRESULT SetValue([in] DOUBLE value);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(9A3EC090-5D2C-4E42-9EE6-9D58DB100B55)]
                    interface IScrollItemProvider : IInspectable
                    {
                        HRESULT ScrollIntoView();
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(374BF581-7716-4BBC-82EB-D997006EA999)]
                    interface IScrollProvider : IInspectable
                    {
                        [propget] HRESULT HorizontallyScrollable([out] [retval] boolean* value);
                        [propget] HRESULT HorizontalScrollPercent([out] [retval] DOUBLE* value);
                        [propget] HRESULT HorizontalViewSize([out] [retval] DOUBLE* value);
                        [propget] HRESULT VerticallyScrollable([out] [retval] boolean* value);
                        [propget] HRESULT VerticalScrollPercent([out] [retval] DOUBLE* value);
                        [propget] HRESULT VerticalViewSize([out] [retval] DOUBLE* value);
                        HRESULT Scroll([in] Windows.UI.Xaml.Automation.ScrollAmount horizontalAmount, [in] Windows.UI.Xaml.Automation.ScrollAmount verticalAmount);
                        HRESULT SetScrollPercent([in] DOUBLE horizontalPercent, [in] DOUBLE verticalPercent);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(6A4977C1-830D-42D2-BF62-042EBDDECC19)]
                    interface ISelectionItemProvider : IInspectable
                    {
                        [propget] HRESULT IsSelected([out] [retval] boolean* value);
                        [propget] HRESULT SelectionContainer([out] [retval] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple** value);
                        HRESULT AddToSelection();
                        HRESULT RemoveFromSelection();
                        HRESULT Select();
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(1F018FCA-B944-4395-8DE1-88F674AF51D3)]
                    interface ISelectionProvider : IInspectable
                    {
                        [propget] HRESULT CanSelectMultiple([out] [retval] boolean* value);
                        [propget] HRESULT IsSelectionRequired([out] [retval] boolean* value);
                        HRESULT GetSelection([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple*** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(EBDE8F92-6015-4826-B719-47521A81C67E)]
                    interface ISpreadsheetItemProvider : IInspectable
                    {
                        [propget] HRESULT Formula([out] [retval] HSTRING* value);
                        HRESULT GetAnnotationObjects([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple*** result);
                        HRESULT GetAnnotationTypes([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.AnnotationType** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(15359093-BD99-4CFD-9F07-3B14B315E23D)]
                    interface ISpreadsheetProvider : IInspectable
                    {
                        HRESULT GetItemByName([in] HSTRING name, [out] [retval] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(1A5B7A17-7C01-4BEC-9CD4-2DFA7DC246CD)]
                    interface IStylesProvider : IInspectable
                    {
                        [propget] HRESULT ExtendedProperties([out] [retval] HSTRING* value);
                        [propget] HRESULT FillColor([out] [retval] Windows.UI.Color* value);
                        [propget] HRESULT FillPatternColor([out] [retval] Windows.UI.Color* value);
                        [propget] HRESULT FillPatternStyle([out] [retval] HSTRING* value);
                        [propget] HRESULT Shape([out] [retval] HSTRING* value);
                        [propget] HRESULT StyleId([out] [retval] INT32* value);
                        [propget] HRESULT StyleName([out] [retval] HSTRING* value);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(3D60CECB-DA54-4AA3-B915-E3244427D4AC)]
                    interface ISynchronizedInputProvider : IInspectable
                    {
                        HRESULT Cancel();
                        HRESULT StartListening([in] Windows.UI.Xaml.Automation.SynchronizedInputType inputType);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(3B2C49CD-1DE2-4EE2-A3E1-FB553559D15D)]
                    interface ITableItemProvider : IInspectable
                    {
                        HRESULT GetColumnHeaderItems([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple*** result);
                        HRESULT GetRowHeaderItems([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple*** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(7A8ED399-6824-4595-BAB3-464BC9A04417)]
                    interface ITableProvider : IInspectable
                    {
                        [propget] HRESULT RowOrColumnMajor([out] [retval] Windows.UI.Xaml.Automation.RowOrColumnMajor* value);
                        HRESULT GetColumnHeaders([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple*** result);
                        HRESULT GetRowHeaders([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple*** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(1133C336-A89B-4130-9BE6-55E33334F557)]
                    interface ITextChildProvider : IInspectable
                    {
                        [propget] HRESULT TextContainer([out] [retval] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple** value);
                        [propget] HRESULT TextRange([out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** value);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(EA3605B4-3A05-400E-B5F9-4E91B40F6176)]
                    interface ITextEditProvider : IInspectable
                        requires
                            Windows.UI.Xaml.Automation.Provider.ITextProvider
                    {
                        HRESULT GetActiveComposition([out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** result);
                        HRESULT GetConversionTarget([out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(DB5BBC9F-4807-4F2A-8678-1B13F3C60E22)]
                    interface ITextProvider : IInspectable
                    {
                        [propget] HRESULT DocumentRange([out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** value);
                        [propget] HRESULT SupportedTextSelection([out] [retval] Windows.UI.Xaml.Automation.SupportedTextSelection* value);
                        HRESULT GetSelection([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider*** result);
                        HRESULT GetVisibleRanges([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider*** result);
                        HRESULT RangeFromChild([in] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple* childElement, [out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** result);
                        HRESULT RangeFromPoint([in] Windows.Foundation.Point screenLocation, [out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(DF1D48BC-0487-4E7F-9D5E-F09E77E41246)]
                    interface ITextProvider2 : IInspectable
                        requires
                            Windows.UI.Xaml.Automation.Provider.ITextProvider
                    {
                        HRESULT RangeFromAnnotation([in] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple* annotationElement, [out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** result);
                        HRESULT GetCaretRange([out] boolean* isActive, [out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** returnValue);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(0274688D-06E9-4F66-9446-28A5BE98FBD0)]
                    interface ITextRangeProvider : IInspectable
                    {
                        HRESULT Clone([out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** result);
                        HRESULT Compare([in] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider* textRangeProvider, [out] [retval] boolean* result);
                        HRESULT CompareEndpoints([in] Windows.UI.Xaml.Automation.Text.TextPatternRangeEndpoint endpoint, [in] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider* textRangeProvider, [in] Windows.UI.Xaml.Automation.Text.TextPatternRangeEndpoint targetEndpoint, [out] [retval] INT32* result);
                        HRESULT ExpandToEnclosingUnit([in] Windows.UI.Xaml.Automation.Text.TextUnit unit);
                        HRESULT FindAttribute([in] INT32 attributeId, [in] IInspectable* value, [in] boolean backward, [out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** result);
                        HRESULT FindText([in] HSTRING text, [in] boolean backward, [in] boolean ignoreCase, [out] [retval] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider** result);
                        HRESULT GetAttributeValue([in] INT32 attributeId, [out] [retval] IInspectable** result);
                        HRESULT GetBoundingRectangles([out] UINT32* __returnValueSize, [out] [size_is(, *__returnValueSize)] DOUBLE** returnValue);
                        HRESULT GetEnclosingElement([out] [retval] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple** result);
                        HRESULT GetText([in] INT32 maxLength, [out] [retval] HSTRING* result);
                        HRESULT Move([in] Windows.UI.Xaml.Automation.Text.TextUnit unit, [in] INT32 count, [out] [retval] INT32* result);
                        HRESULT MoveEndpointByUnit([in] Windows.UI.Xaml.Automation.Text.TextPatternRangeEndpoint endpoint, [in] Windows.UI.Xaml.Automation.Text.TextUnit unit, [in] INT32 count, [out] [retval] INT32* result);
                        HRESULT MoveEndpointByRange([in] Windows.UI.Xaml.Automation.Text.TextPatternRangeEndpoint endpoint, [in] Windows.UI.Xaml.Automation.Provider.ITextRangeProvider* textRangeProvider, [in] Windows.UI.Xaml.Automation.Text.TextPatternRangeEndpoint targetEndpoint);
                        HRESULT Select();
                        HRESULT AddToSelection();
                        HRESULT RemoveFromSelection();
                        HRESULT ScrollIntoView([in] boolean alignToTop);
                        HRESULT GetChildren([out] UINT32* __resultSize, [out] [retval] [size_is(, *__resultSize)] Windows.UI.Xaml.Automation.Provider.IRawElementProviderSimple*** result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(D3BE3DFB-9F54-4642-A7A5-5C18D5EE2A3F)]
                    interface ITextRangeProvider2 : IInspectable
                        requires
                            Windows.UI.Xaml.Automation.Provider.ITextRangeProvider
                    {
                        HRESULT ShowContextMenu();
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(93B88290-656F-44F7-AEAF-78B8F944D062)]
                    interface IToggleProvider : IInspectable
                    {
                        [propget] HRESULT ToggleState([out] [retval] Windows.UI.Xaml.Automation.ToggleState* value);
                        HRESULT Toggle();
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(79670FDD-F6A9-4A65-AF17-861DB799A2DA)]
                    interface ITransformProvider : IInspectable
                    {
                        [propget] HRESULT CanMove([out] [retval] boolean* value);
                        [propget] HRESULT CanResize([out] [retval] boolean* value);
                        [propget] HRESULT CanRotate([out] [retval] boolean* value);
                        HRESULT Move([in] DOUBLE x, [in] DOUBLE y);
                        HRESULT Resize([in] DOUBLE width, [in] DOUBLE height);
                        HRESULT Rotate([in] DOUBLE degrees);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(A8B11756-A39F-4E97-8C7D-C1EA8DD633C5)]
                    interface ITransformProvider2 : IInspectable
                        requires
                            Windows.UI.Xaml.Automation.Provider.ITransformProvider
                    {
                        [propget] HRESULT CanZoom([out] [retval] boolean* value);
                        [propget] HRESULT ZoomLevel([out] [retval] DOUBLE* value);
                        [propget] HRESULT MaxZoom([out] [retval] DOUBLE* value);
                        [propget] HRESULT MinZoom([out] [retval] DOUBLE* value);
                        HRESULT Zoom([in] DOUBLE zoom);
                        HRESULT ZoomByUnit([in] Windows.UI.Xaml.Automation.ZoomUnit zoomUnit);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(2086B7A7-AC0E-47D1-AB9B-2A64292AFDF8)]
                    interface IValueProvider : IInspectable
                    {
                        [propget] HRESULT IsReadOnly([out] [retval] boolean* value);
                        [propget] HRESULT Value([out] [retval] HSTRING* value);
                        HRESULT SetValue([in] HSTRING value);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(17D4A04B-D658-48E0-A574-5A516C58DFA7)]
                    interface IVirtualizedItemProvider : IInspectable
                    {
                        HRESULT Realize();
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [uuid(1BAA8B3D-38CF-415A-85D3-20E43A0EC1B1)]
                    interface IWindowProvider : IInspectable
                    {
                        [propget] HRESULT IsModal([out] [retval] boolean* value);
                        [propget] HRESULT IsTopmost([out] [retval] boolean* value);
                        [propget] HRESULT Maximizable([out] [retval] boolean* value);
                        [propget] HRESULT Minimizable([out] [retval] boolean* value);
                        [propget] HRESULT InteractionState([out] [retval] Windows.UI.Xaml.Automation.WindowInteractionState* value);
                        [propget] HRESULT VisualState([out] [retval] Windows.UI.Xaml.Automation.WindowVisualState* value);
                        HRESULT Close();
                        HRESULT SetVisualState([in] Windows.UI.Xaml.Automation.WindowVisualState state);
                        HRESULT WaitForInputIdle([in] INT32 milliseconds, [out] [retval] boolean* result);
                    }

                    [contract(Windows.Foundation.UniversalApiContract, 1.0)]
                    [marshaling_behavior(agile)]
                    [threading(both)]
                    runtimeclass IRawElementProviderSimple : Windows.UI.Xaml.DependencyObject
                    {
                        [default] interface Windows.UI.Xaml.Automation.Provider.IIRawElementProviderSimple;
                    }
                }
            }
        }
    }
}
