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

import "inspectable.idl";
import "AsyncInfo.idl";
import "EventToken.idl";
import "windowscontracts.idl";
import "Windows.Foundation.idl";
import "Windows.ApplicationModel.Core.idl";

// Forward Declare
namespace Windows
{
    namespace ApplicationModel
    {
        namespace Core
        {
            runtimeclass AppListEntry;
        }
    }
}
namespace Windows
{
    namespace Foundation
    {
        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace UI
    {
        namespace Shell
        {
            interface IAdaptiveCard;

            interface IAdaptiveCardBuilderStatics;

            interface ITaskbarManager;

            interface ITaskbarManagerStatics;

            runtimeclass AdaptiveCardBuilder;

            runtimeclass TaskbarManager;
        }
    }
}

// Generic instantiations

// Type definition
namespace Windows
{
    namespace UI
    {
        namespace Shell
        {
            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [uuid(72D0568C-A274-41CD-82A8-989D40B9B05E)]
            interface IAdaptiveCard : IInspectable
            {
                HRESULT ToJson([out] [retval] HSTRING* result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [uuid(766D8F08-D3FE-4347-A0BC-B9EA9A6DC28E)]
            interface IAdaptiveCardBuilderStatics : IInspectable
            {
                HRESULT CreateAdaptiveCardFromJson([in] HSTRING value, [out] [retval] Windows.UI.Shell.IAdaptiveCard** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.UI.Shell.TaskbarManager)]
            [uuid(87490A19-1AD9-49F4-B2E8-86738DC5AC40)]
            interface ITaskbarManager : IInspectable
            {
                [propget] HRESULT IsSupported([out] [retval] boolean* value);
                [propget] HRESULT IsPinningAllowed([out] [retval] boolean* value);
                HRESULT IsCurrentAppPinnedAsync([out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
                HRESULT IsAppListEntryPinnedAsync([in] Windows.ApplicationModel.Core.AppListEntry* appListEntry, [out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
                HRESULT RequestPinCurrentAppAsync([out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
                HRESULT RequestPinAppListEntryAsync([in] Windows.ApplicationModel.Core.AppListEntry* appListEntry, [out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [exclusiveto(Windows.UI.Shell.TaskbarManager)]
            [uuid(DB32AB74-DE52-4FE6-B7B6-95FF9F8395DF)]
            interface ITaskbarManagerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.UI.Shell.TaskbarManager** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [marshaling_behavior(agile)]
            [static(Windows.UI.Shell.IAdaptiveCardBuilderStatics, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass AdaptiveCardBuilder
            {
            }

            [contract(Windows.Foundation.UniversalApiContract, 5.0)]
            [marshaling_behavior(agile)]
            [static(Windows.UI.Shell.ITaskbarManagerStatics, Windows.Foundation.UniversalApiContract, 5.0)]
            [threading(both)]
            runtimeclass TaskbarManager
            {
                [default] interface Windows.UI.Shell.ITaskbarManager;
            }
        }
    }
}
