//
// 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.ApplicationModel.UserActivities.idl";

// Forward Declare
namespace Windows
{
    namespace ApplicationModel
    {
        namespace UserActivities
        {
            runtimeclass UserActivity;

            runtimeclass UserActivityChannel;

            runtimeclass UserActivitySession;
        }
    }
}
namespace Windows
{
    namespace Foundation
    {
        typedef struct DateTime DateTime;

        interface IAsyncAction;

        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace ApplicationModel
    {
        namespace UserActivities
        {
            namespace Core
            {
                interface ICoreUserActivityManagerStatics;

                runtimeclass CoreUserActivityManager;
            }
        }
    }
}

// Generic instantiations

// Type definition
namespace Windows
{
    namespace ApplicationModel
    {
        namespace UserActivities
        {
            namespace Core
            {
                [contract(Windows.Foundation.UniversalApiContract, 5.0)]
                [exclusiveto(Windows.ApplicationModel.UserActivities.Core.CoreUserActivityManager)]
                [uuid(CA3ADB02-A4BE-4D4D-BFA8-6795F4264EFB)]
                interface ICoreUserActivityManagerStatics : IInspectable
                {
                    HRESULT CreateUserActivitySessionInBackground([in] Windows.ApplicationModel.UserActivities.UserActivity* activity, [out] [retval] Windows.ApplicationModel.UserActivities.UserActivitySession** result);
                    HRESULT DeleteUserActivitySessionsInTimeRangeAsync([in] Windows.ApplicationModel.UserActivities.UserActivityChannel* channel, [in] Windows.Foundation.DateTime startTime, [in] Windows.Foundation.DateTime endTime, [out] [retval] Windows.Foundation.IAsyncAction** operation);
                }

                [contract(Windows.Foundation.UniversalApiContract, 5.0)]
                [marshaling_behavior(agile)]
                [static(Windows.ApplicationModel.UserActivities.Core.ICoreUserActivityManagerStatics, Windows.Foundation.UniversalApiContract, 5.0)]
                [threading(both)]
                runtimeclass CoreUserActivityManager
                {
                }
            }
        }
    }
}
