//
// 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.Foundation.Numerics.idl";
import "Windows.Perception.Spatial.idl";

// Forward Declare
namespace Windows
{
    namespace Foundation
    {
        namespace Numerics
        {
            typedef struct Quaternion Quaternion;

            typedef struct Vector2 Vector2;

            typedef struct Vector3 Vector3;
        }
    }
}
namespace Windows
{
    namespace Foundation
    {
        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace Perception
    {
        namespace Spatial
        {
            runtimeclass SpatialCoordinateSystem;
        }
    }
}
namespace Windows
{
    namespace ApplicationModel
    {
        namespace Holographic
        {
            interface IHolographicKeyboard;

            interface IHolographicKeyboardStatics;

            runtimeclass HolographicKeyboard;
        }
    }
}

// Generic instantiations

// Type definition
namespace Windows
{
    namespace ApplicationModel
    {
        namespace Holographic
        {
            [contract(Windows.Foundation.UniversalApiContract, 11.0)]
            [exclusiveto(Windows.ApplicationModel.Holographic.HolographicKeyboard)]
            [uuid(07DD0893-AA21-5E6F-A91B-11B2B3FD7BE3)]
            interface IHolographicKeyboard : IInspectable
            {
                [overload("SetPlacementOverride")] HRESULT SetPlacementOverride([in] Windows.Perception.Spatial.SpatialCoordinateSystem* coordinateSystem, [in] Windows.Foundation.Numerics.Vector3 topCenterPosition, [in] Windows.Foundation.Numerics.Quaternion orientation);
                [overload("SetPlacementOverride")] HRESULT SetPlacementOverrideWithMaxSize([in] Windows.Perception.Spatial.SpatialCoordinateSystem* coordinateSystem, [in] Windows.Foundation.Numerics.Vector3 topCenterPosition, [in] Windows.Foundation.Numerics.Quaternion orientation, [in] Windows.Foundation.Numerics.Vector2 maxSize);
                HRESULT ResetPlacementOverride();
            }

            [contract(Windows.Foundation.UniversalApiContract, 11.0)]
            [exclusiveto(Windows.ApplicationModel.Holographic.HolographicKeyboard)]
            [uuid(B676C624-63D7-58CF-B06B-08BAA032A23F)]
            interface IHolographicKeyboardStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.ApplicationModel.Holographic.HolographicKeyboard** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 11.0)]
            [marshaling_behavior(agile)]
            [static(Windows.ApplicationModel.Holographic.IHolographicKeyboardStatics, Windows.Foundation.UniversalApiContract, 11.0)]
            [threading(both)]
            runtimeclass HolographicKeyboard
            {
                [default] interface Windows.ApplicationModel.Holographic.IHolographicKeyboard;
            }
        }
    }
}
