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

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

        interface IAsyncAction;

        apicontract UniversalApiContract;
    }
}
namespace Windows
{
    namespace System
    {
        runtimeclass User;
    }
}
namespace Windows
{
    namespace ApplicationModel
    {
        namespace UserDataTasks
        {
            typedef enum UserDataTaskDaysOfWeek UserDataTaskDaysOfWeek;

            typedef enum UserDataTaskDetailsKind UserDataTaskDetailsKind;

            typedef enum UserDataTaskKind UserDataTaskKind;

            typedef enum UserDataTaskListOtherAppReadAccess UserDataTaskListOtherAppReadAccess;

            typedef enum UserDataTaskListOtherAppWriteAccess UserDataTaskListOtherAppWriteAccess;

            typedef enum UserDataTaskListSyncStatus UserDataTaskListSyncStatus;

            typedef enum UserDataTaskPriority UserDataTaskPriority;

            typedef enum UserDataTaskQueryKind UserDataTaskQueryKind;

            typedef enum UserDataTaskQuerySortProperty UserDataTaskQuerySortProperty;

            typedef enum UserDataTaskRecurrenceUnit UserDataTaskRecurrenceUnit;

            typedef enum UserDataTaskRegenerationUnit UserDataTaskRegenerationUnit;

            typedef enum UserDataTaskSensitivity UserDataTaskSensitivity;

            typedef enum UserDataTaskStoreAccessType UserDataTaskStoreAccessType;

            typedef enum UserDataTaskWeekOfMonth UserDataTaskWeekOfMonth;

            interface IUserDataTask;

            interface IUserDataTaskBatch;

            interface IUserDataTaskList;

            interface IUserDataTaskListLimitedWriteOperations;

            interface IUserDataTaskListSyncManager;

            interface IUserDataTaskManager;

            interface IUserDataTaskManagerStatics;

            interface IUserDataTaskQueryOptions;

            interface IUserDataTaskReader;

            interface IUserDataTaskRecurrenceProperties;

            interface IUserDataTaskRegenerationProperties;

            interface IUserDataTaskStore;

            runtimeclass UserDataTask;

            runtimeclass UserDataTaskBatch;

            runtimeclass UserDataTaskList;

            runtimeclass UserDataTaskListLimitedWriteOperations;

            runtimeclass UserDataTaskListSyncManager;

            runtimeclass UserDataTaskManager;

            runtimeclass UserDataTaskQueryOptions;

            runtimeclass UserDataTaskReader;

            runtimeclass UserDataTaskRecurrenceProperties;

            runtimeclass UserDataTaskRegenerationProperties;

            runtimeclass UserDataTaskStore;
        }
    }
}

// Generic instantiations
namespace Windows
{
    namespace ApplicationModel
    {
        namespace UserDataTasks
        {
            declare
            {
                interface Windows.Foundation.Collections.IIterable<Windows.ApplicationModel.UserDataTasks.UserDataTask*>;

                interface Windows.Foundation.Collections.IIterable<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>;

                interface Windows.Foundation.Collections.IIterator<Windows.ApplicationModel.UserDataTasks.UserDataTask*>;

                interface Windows.Foundation.Collections.IIterator<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>;

                interface Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.UserDataTasks.UserDataTask*>;

                interface Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>;

                interface Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTask*>;

                interface Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTaskBatch*>;

                interface Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>;

                interface Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTaskStore*>;

                interface Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>*>;

                interface Windows.Foundation.IReference<Windows.ApplicationModel.UserDataTasks.UserDataTaskDaysOfWeek>;

                interface Windows.Foundation.IReference<Windows.ApplicationModel.UserDataTasks.UserDataTaskWeekOfMonth>;

                interface Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.UserDataTasks.UserDataTaskListSyncManager*, IInspectable*>;
            }
        }
    }
}

// Type definition
namespace Windows
{
    namespace ApplicationModel
    {
        namespace UserDataTasks
        {
            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [flags]
            enum UserDataTaskDaysOfWeek
            {
                None      = 0x0,
                Sunday    = 0x1,
                Monday    = 0x2,
                Tuesday   = 0x4,
                Wednesday = 0x8,
                Thursday  = 0x10,
                Friday    = 0x20,
                Saturday  = 0x40
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskDetailsKind
            {
                PlainText = 0,
                Html      = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskKind
            {
                Single       = 0,
                Recurring    = 1,
                Regenerating = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskListOtherAppReadAccess
            {
                Full       = 0,
                SystemOnly = 1,
                None       = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskListOtherAppWriteAccess
            {
                Limited = 0,
                None    = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskListSyncStatus
            {
                Idle                = 0,
                Syncing             = 1,
                UpToDate            = 2,
                AuthenticationError = 3,
                PolicyError         = 4,
                UnknownError        = 5
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskPriority
            {
                Normal = 0,
                Low    = -1,
                High   = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskQueryKind
            {
                All        = 0,
                Incomplete = 1,
                Complete   = 2
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskQuerySortProperty
            {
                DueDate = 0
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskRecurrenceUnit
            {
                Daily        = 0,
                Weekly       = 1,
                Monthly      = 2,
                MonthlyOnDay = 3,
                Yearly       = 4,
                YearlyOnDay  = 5
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskRegenerationUnit
            {
                Daily   = 0,
                Weekly  = 1,
                Monthly = 2,
                Yearly  = 4
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskSensitivity
            {
                Public  = 0,
                Private = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskStoreAccessType
            {
                AppTasksReadWrite        = 0,
                AllTasksLimitedReadWrite = 1
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            enum UserDataTaskWeekOfMonth
            {
                First  = 0,
                Second = 1,
                Third  = 2,
                Fourth = 3,
                Last   = 4
            };

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTask)]
            [uuid(7C6585D1-E0D4-4F99-AEE2-BC2D5DDADF4C)]
            interface IUserDataTask : IInspectable
            {
                [propget] HRESULT Id([out] [retval] HSTRING* value);
                [propget] HRESULT ListId([out] [retval] HSTRING* value);
                [propget] HRESULT RemoteId([out] [retval] HSTRING* value);
                [propput] HRESULT RemoteId([in] HSTRING value);
                [propget] HRESULT CompletedDate([out] [retval] Windows.Foundation.IReference<Windows.Foundation.DateTime>** value);
                [propput] HRESULT CompletedDate([in] Windows.Foundation.IReference<Windows.Foundation.DateTime>* value);
                [propget] HRESULT Details([out] [retval] HSTRING* value);
                [propput] HRESULT Details([in] HSTRING value);
                [propget] HRESULT DetailsKind([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskDetailsKind* value);
                [propput] HRESULT DetailsKind([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskDetailsKind value);
                [propget] HRESULT DueDate([out] [retval] Windows.Foundation.IReference<Windows.Foundation.DateTime>** value);
                [propput] HRESULT DueDate([in] Windows.Foundation.IReference<Windows.Foundation.DateTime>* value);
                [propget] HRESULT Kind([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskKind* value);
                [propget] HRESULT Priority([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskPriority* value);
                [propput] HRESULT Priority([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskPriority value);
                [propget] HRESULT RecurrenceProperties([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskRecurrenceProperties** value);
                [propput] HRESULT RecurrenceProperties([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskRecurrenceProperties* value);
                [propget] HRESULT RegenerationProperties([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskRegenerationProperties** value);
                [propput] HRESULT RegenerationProperties([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskRegenerationProperties* value);
                [propget] HRESULT Reminder([out] [retval] Windows.Foundation.IReference<Windows.Foundation.DateTime>** value);
                [propput] HRESULT Reminder([in] Windows.Foundation.IReference<Windows.Foundation.DateTime>* value);
                [propget] HRESULT Sensitivity([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskSensitivity* value);
                [propput] HRESULT Sensitivity([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskSensitivity value);
                [propget] HRESULT Subject([out] [retval] HSTRING* value);
                [propput] HRESULT Subject([in] HSTRING value);
                [propget] HRESULT StartDate([out] [retval] Windows.Foundation.IReference<Windows.Foundation.DateTime>** value);
                [propput] HRESULT StartDate([in] Windows.Foundation.IReference<Windows.Foundation.DateTime>* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskBatch)]
            [uuid(382DA5FE-20B5-431C-8F42-A5D292EC930C)]
            interface IUserDataTaskBatch : IInspectable
            {
                [propget] HRESULT Tasks([out] [retval] Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.UserDataTasks.UserDataTask*>** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskList)]
            [uuid(49412E39-7C1D-4DF1-BED3-314B7CBF5E4E)]
            interface IUserDataTaskList : IInspectable
            {
                [propget] HRESULT Id([out] [retval] HSTRING* value);
                [propget] HRESULT UserDataAccountId([out] [retval] HSTRING* value);
                [propget] HRESULT DisplayName([out] [retval] HSTRING* value);
                [propput] HRESULT DisplayName([in] HSTRING value);
                [propget] HRESULT SourceDisplayName([out] [retval] HSTRING* value);
                [propget] HRESULT OtherAppReadAccess([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskListOtherAppReadAccess* value);
                [propput] HRESULT OtherAppReadAccess([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskListOtherAppReadAccess value);
                [propget] HRESULT OtherAppWriteAccess([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskListOtherAppWriteAccess* value);
                [propput] HRESULT OtherAppWriteAccess([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskListOtherAppWriteAccess value);
                [propget] HRESULT LimitedWriteOperations([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskListLimitedWriteOperations** value);
                [propget] HRESULT SyncManager([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskListSyncManager** value);
                HRESULT RegisterSyncManagerAsync([out] [retval] Windows.Foundation.IAsyncAction** result);
                [overload("GetTaskReader")] HRESULT GetTaskReader([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskReader** result);
                [overload("GetTaskReader")] HRESULT GetTaskReaderWithOptions([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskQueryOptions* options, [out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskReader** value);
                HRESULT GetTaskAsync([in] HSTRING userDataTask, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTask*>** operation);
                HRESULT SaveTaskAsync([in] Windows.ApplicationModel.UserDataTasks.UserDataTask* userDataTask, [out] [retval] Windows.Foundation.IAsyncAction** action);
                HRESULT DeleteTaskAsync([in] HSTRING userDataTaskId, [out] [retval] Windows.Foundation.IAsyncAction** action);
                HRESULT DeleteAsync([out] [retval] Windows.Foundation.IAsyncAction** asyncAction);
                HRESULT SaveAsync([out] [retval] Windows.Foundation.IAsyncAction** asyncAction);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskListLimitedWriteOperations)]
            [uuid(7AA267F2-6078-4183-919E-4F29F19CFAE9)]
            interface IUserDataTaskListLimitedWriteOperations : IInspectable
            {
                HRESULT TryCompleteTaskAsync([in] HSTRING userDataTaskId, [out] [retval] Windows.Foundation.IAsyncOperation<HSTRING>** operation);
                HRESULT TryCreateOrUpdateTaskAsync([in] Windows.ApplicationModel.UserDataTasks.UserDataTask* userDataTask, [out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
                HRESULT TryDeleteTaskAsync([in] HSTRING userDataTaskId, [out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
                HRESULT TrySkipOccurrenceAsync([in] HSTRING userDataTaskId, [out] [retval] Windows.Foundation.IAsyncOperation<boolean>** operation);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskListSyncManager)]
            [uuid(8E591A95-1DCF-469F-93EC-BA48BB553C6B)]
            interface IUserDataTaskListSyncManager : IInspectable
            {
                [propget] HRESULT LastAttemptedSyncTime([out] [retval] Windows.Foundation.DateTime* value);
                [propput] HRESULT LastAttemptedSyncTime([in] Windows.Foundation.DateTime value);
                [propget] HRESULT LastSuccessfulSyncTime([out] [retval] Windows.Foundation.DateTime* value);
                [propput] HRESULT LastSuccessfulSyncTime([in] Windows.Foundation.DateTime value);
                [propget] HRESULT Status([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskListSyncStatus* value);
                [propput] HRESULT Status([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskListSyncStatus value);
                HRESULT SyncAsync([out] [retval] Windows.Foundation.IAsyncOperation<boolean>** result);
                [eventadd] HRESULT SyncStatusChanged([in] Windows.Foundation.TypedEventHandler<Windows.ApplicationModel.UserDataTasks.UserDataTaskListSyncManager*, IInspectable*>* handler, [out] [retval] EventRegistrationToken* token);
                [eventremove] HRESULT SyncStatusChanged([in] EventRegistrationToken token);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskManager)]
            [uuid(8451C914-E60B-48A9-9211-7FB8A56CB84C)]
            interface IUserDataTaskManager : IInspectable
            {
                HRESULT RequestStoreAsync([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskStoreAccessType accessType, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTaskStore*>** operation);
                [propget] HRESULT User([out] [retval] Windows.System.User** value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskManager)]
            [uuid(B35539F8-C502-47FC-A81E-100883719D55)]
            interface IUserDataTaskManagerStatics : IInspectable
            {
                HRESULT GetDefault([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskManager** result);
                HRESULT GetForUser([in] Windows.System.User* user, [out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskManager** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskQueryOptions)]
            [uuid(959F27ED-909A-4D30-8C1B-331D8FE667E2)]
            interface IUserDataTaskQueryOptions : IInspectable
            {
                [propget] HRESULT SortProperty([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskQuerySortProperty* value);
                [propput] HRESULT SortProperty([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskQuerySortProperty value);
                [propget] HRESULT Kind([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskQueryKind* value);
                [propput] HRESULT Kind([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskQueryKind value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskReader)]
            [uuid(03E688B1-4CCF-4500-883B-E76290CFED63)]
            interface IUserDataTaskReader : IInspectable
            {
                HRESULT ReadBatchAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTaskBatch*>** result);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskRecurrenceProperties)]
            [uuid(73DF80B0-27C6-40CE-B149-9CD41485A69E)]
            interface IUserDataTaskRecurrenceProperties : IInspectable
            {
                [propget] HRESULT Unit([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskRecurrenceUnit* value);
                [propput] HRESULT Unit([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskRecurrenceUnit value);
                [propget] HRESULT Occurrences([out] [retval] Windows.Foundation.IReference<INT32>** value);
                [propput] HRESULT Occurrences([in] Windows.Foundation.IReference<INT32>* value);
                [propget] HRESULT Until([out] [retval] Windows.Foundation.IReference<Windows.Foundation.DateTime>** value);
                [propput] HRESULT Until([in] Windows.Foundation.IReference<Windows.Foundation.DateTime>* value);
                [propget] HRESULT Interval([out] [retval] INT32* value);
                [propput] HRESULT Interval([in] INT32 value);
                [propget] HRESULT DaysOfWeek([out] [retval] Windows.Foundation.IReference<Windows.ApplicationModel.UserDataTasks.UserDataTaskDaysOfWeek>** value);
                [propput] HRESULT DaysOfWeek([in] Windows.Foundation.IReference<Windows.ApplicationModel.UserDataTasks.UserDataTaskDaysOfWeek>* value);
                [propget] HRESULT WeekOfMonth([out] [retval] Windows.Foundation.IReference<Windows.ApplicationModel.UserDataTasks.UserDataTaskWeekOfMonth>** value);
                [propput] HRESULT WeekOfMonth([in] Windows.Foundation.IReference<Windows.ApplicationModel.UserDataTasks.UserDataTaskWeekOfMonth>* value);
                [propget] HRESULT Month([out] [retval] Windows.Foundation.IReference<INT32>** value);
                [propput] HRESULT Month([in] Windows.Foundation.IReference<INT32>* value);
                [propget] HRESULT Day([out] [retval] Windows.Foundation.IReference<INT32>** value);
                [propput] HRESULT Day([in] Windows.Foundation.IReference<INT32>* value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskRegenerationProperties)]
            [uuid(92AB0007-090E-4704-BB5C-84FC0B0D9C31)]
            interface IUserDataTaskRegenerationProperties : IInspectable
            {
                [propget] HRESULT Unit([out] [retval] Windows.ApplicationModel.UserDataTasks.UserDataTaskRegenerationUnit* value);
                [propput] HRESULT Unit([in] Windows.ApplicationModel.UserDataTasks.UserDataTaskRegenerationUnit value);
                [propget] HRESULT Occurrences([out] [retval] Windows.Foundation.IReference<INT32>** value);
                [propput] HRESULT Occurrences([in] Windows.Foundation.IReference<INT32>* value);
                [propget] HRESULT Until([out] [retval] Windows.Foundation.IReference<Windows.Foundation.DateTime>** value);
                [propput] HRESULT Until([in] Windows.Foundation.IReference<Windows.Foundation.DateTime>* value);
                [propget] HRESULT Interval([out] [retval] INT32* value);
                [propput] HRESULT Interval([in] INT32 value);
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [exclusiveto(Windows.ApplicationModel.UserDataTasks.UserDataTaskStore)]
            [uuid(F06A9CB0-F1DB-45BA-8A62-086004C0213D)]
            interface IUserDataTaskStore : IInspectable
            {
                [overload("CreateListAsync")] HRESULT CreateListAsync([in] HSTRING name, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>** operation);
                [overload("CreateListAsync")] HRESULT CreateListInAccountAsync([in] HSTRING name, [in] HSTRING userDataAccountId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>** result);
                HRESULT FindListsAsync([out] [retval] Windows.Foundation.IAsyncOperation<Windows.Foundation.Collections.IVectorView<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>*>** operation);
                HRESULT GetListAsync([in] HSTRING taskListId, [out] [retval] Windows.Foundation.IAsyncOperation<Windows.ApplicationModel.UserDataTasks.UserDataTaskList*>** operation);
            }

            [activatable(Windows.Foundation.UniversalApiContract, 4.0)]
            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTask
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTask;
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskBatch
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskBatch;
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskList
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskList;
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskListLimitedWriteOperations
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskListLimitedWriteOperations;
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskListSyncManager
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskListSyncManager;
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [static(Windows.ApplicationModel.UserDataTasks.IUserDataTaskManagerStatics, Windows.Foundation.UniversalApiContract, 4.0)]
            [threading(both)]
            runtimeclass UserDataTaskManager
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskManager;
            }

            [activatable(Windows.Foundation.UniversalApiContract, 4.0)]
            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskQueryOptions
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskQueryOptions;
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskReader
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskReader;
            }

            [activatable(Windows.Foundation.UniversalApiContract, 4.0)]
            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskRecurrenceProperties
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskRecurrenceProperties;
            }

            [activatable(Windows.Foundation.UniversalApiContract, 4.0)]
            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskRegenerationProperties
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskRegenerationProperties;
            }

            [contract(Windows.Foundation.UniversalApiContract, 4.0)]
            [marshaling_behavior(agile)]
            [threading(both)]
            runtimeclass UserDataTaskStore
            {
                [default] interface Windows.ApplicationModel.UserDataTasks.IUserDataTaskStore;
            }
        }
    }
}
