// C++/WinRT v2.0.250303.1 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. #pragma once #ifndef WINRT_Windows_UI_Shell_Tasks_0_H #define WINRT_Windows_UI_Shell_Tasks_0_H WINRT_EXPORT namespace winrt::Windows::Foundation { struct Uri; } WINRT_EXPORT namespace winrt::Windows::UI::Shell::Tasks { enum class AppTaskState : int32_t { Running = 0, Completed = 1, NeedsAttention = 2, Paused = 3, Error = 4, }; struct IAppTaskContent; struct IAppTaskContentStatics; struct IAppTaskInfo; struct IAppTaskInfo2; struct IAppTaskInfoStatics; struct IAppTaskResultAsset; struct IAppTaskResultAssetFactory; struct AppTaskContent; struct AppTaskInfo; struct AppTaskResultAsset; struct AppTaskContract; } namespace winrt::impl { template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = interface_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = enum_category; }; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.AppTaskContent"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.AppTaskInfo"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.AppTaskResultAsset"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.AppTaskState"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.IAppTaskContent"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.IAppTaskContentStatics"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.IAppTaskInfo"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.IAppTaskInfo2"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.IAppTaskInfoStatics"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.IAppTaskResultAsset"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.IAppTaskResultAssetFactory"; template <> inline constexpr auto& name_v = L"Windows.UI.Shell.Tasks.AppTaskContract"; template <> inline constexpr guid guid_v{ 0x2411BF59,0x1B2D,0x5B63,{ 0x81,0x81,0x03,0xD6,0xC2,0x24,0x8A,0x68 } }; // 2411BF59-1B2D-5B63-8181-03D6C2248A68 template <> inline constexpr guid guid_v{ 0xAABD19F6,0x7AFC,0x5B1B,{ 0x94,0xF6,0x5D,0xC9,0xDC,0x9A,0xF9,0xE7 } }; // AABD19F6-7AFC-5B1B-94F6-5DC9DC9AF9E7 template <> inline constexpr guid guid_v{ 0x6720EED6,0x435B,0x5DB9,{ 0xBE,0x66,0x93,0x43,0xB7,0x06,0x54,0xF7 } }; // 6720EED6-435B-5DB9-BE66-9343B70654F7 template <> inline constexpr guid guid_v{ 0xAD724D71,0xF137,0x51C0,{ 0x81,0x11,0x35,0x52,0x43,0x6B,0xF4,0x47 } }; // AD724D71-F137-51C0-8111-3552436BF447 template <> inline constexpr guid guid_v{ 0xA0B0434F,0xC640,0x5800,{ 0x88,0xC9,0xD7,0x69,0x1A,0xC2,0xF4,0x8F } }; // A0B0434F-C640-5800-88C9-D7691AC2F48F template <> inline constexpr guid guid_v{ 0x75D0C2B3,0x8A31,0x5F8F,{ 0xBD,0xA4,0xBD,0xCA,0x96,0xE9,0x55,0x32 } }; // 75D0C2B3-8A31-5F8F-BDA4-BDCA96E95532 template <> inline constexpr guid guid_v{ 0x0334D9DF,0x0E06,0x5999,{ 0xBA,0x41,0x85,0xD7,0x2E,0x98,0x00,0x85 } }; // 0334D9DF-0E06-5999-BA41-85D72E980085 template <> struct default_interface{ using type = winrt::Windows::UI::Shell::Tasks::IAppTaskContent; }; template <> struct default_interface{ using type = winrt::Windows::UI::Shell::Tasks::IAppTaskInfo; }; template <> struct default_interface{ using type = winrt::Windows::UI::Shell::Tasks::IAppTaskResultAsset; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall AddButton(void*, void*) noexcept = 0; virtual int32_t __stdcall SetTextInput(void*, void*) noexcept = 0; virtual int32_t __stdcall SetQuestion(void*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateSequenceOfSteps(uint32_t, void**, void*, void**) noexcept = 0; virtual int32_t __stdcall CreatePreviewThumbnail(void*, void*, void**) noexcept = 0; virtual int32_t __stdcall CreateTextSummaryResult(void*, void**) noexcept = 0; virtual int32_t __stdcall CreateGeneratedAssetsResult(uint32_t, void**, void**) noexcept = 0; virtual int32_t __stdcall get_MaxButtons(uint32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall Remove() noexcept = 0; virtual int32_t __stdcall Update(int32_t, void*) noexcept = 0; virtual int32_t __stdcall UpdateState(int32_t) noexcept = 0; virtual int32_t __stdcall UpdateTitles(void*, void*) noexcept = 0; virtual int32_t __stdcall GetCompletedSteps(uint32_t* __resultSize, void***) noexcept = 0; virtual int32_t __stdcall GetExecutingStep(void**) noexcept = 0; virtual int32_t __stdcall get_Title(void**) noexcept = 0; virtual int32_t __stdcall get_Subtitle(void**) noexcept = 0; virtual int32_t __stdcall get_DeepLink(void**) noexcept = 0; virtual int32_t __stdcall get_IconUri(void**) noexcept = 0; virtual int32_t __stdcall get_State(int32_t*) noexcept = 0; virtual int32_t __stdcall get_StartTime(int64_t*) noexcept = 0; virtual int32_t __stdcall get_EndTime(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Id(void**) noexcept = 0; virtual int32_t __stdcall get_HiddenByUser(bool*) noexcept = 0; virtual int32_t __stdcall UpdateDeepLink(void*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall IsSupported(bool*) noexcept = 0; virtual int32_t __stdcall FindAll(uint32_t* __resultSize, void***) noexcept = 0; virtual int32_t __stdcall Create(void*, void*, void*, void*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall CreateInstance(void*, void*, void*, void*, void**) noexcept = 0; }; }; template struct consume_Windows_UI_Shell_Tasks_IAppTaskContent { auto AddButton(param::hstring const& text, winrt::Windows::Foundation::Uri const& actionUri) const; auto SetTextInput(param::hstring const& placeholderText, param::hstring const& actionUriTemplate) const; auto SetQuestion(param::hstring const& question) const; }; template <> struct consume { template using type = consume_Windows_UI_Shell_Tasks_IAppTaskContent; }; template struct consume_Windows_UI_Shell_Tasks_IAppTaskContentStatics { auto CreateSequenceOfSteps(array_view completedSteps, param::hstring const& executingStep) const; auto CreatePreviewThumbnail(winrt::Windows::Foundation::Uri const& imageUri, param::hstring const& executingStep) const; auto CreateTextSummaryResult(param::hstring const& text) const; auto CreateGeneratedAssetsResult(array_view assets) const; [[nodiscard]] auto MaxButtons() const; }; template <> struct consume { template using type = consume_Windows_UI_Shell_Tasks_IAppTaskContentStatics; }; template struct consume_Windows_UI_Shell_Tasks_IAppTaskInfo { auto Remove() const; auto Update(winrt::Windows::UI::Shell::Tasks::AppTaskState const& state, winrt::Windows::UI::Shell::Tasks::AppTaskContent const& content) const; auto UpdateState(winrt::Windows::UI::Shell::Tasks::AppTaskState const& state) const; auto UpdateTitles(param::hstring const& title, param::hstring const& subtitle) const; auto GetCompletedSteps() const; auto GetExecutingStep() const; [[nodiscard]] auto Title() const; [[nodiscard]] auto Subtitle() const; [[nodiscard]] auto DeepLink() const; [[nodiscard]] auto IconUri() const; [[nodiscard]] auto State() const; [[nodiscard]] auto StartTime() const; [[nodiscard]] auto EndTime() const; }; template <> struct consume { template using type = consume_Windows_UI_Shell_Tasks_IAppTaskInfo; }; template struct consume_Windows_UI_Shell_Tasks_IAppTaskInfo2 { [[nodiscard]] auto Id() const; [[nodiscard]] auto HiddenByUser() const; auto UpdateDeepLink(winrt::Windows::Foundation::Uri const& deepLink) const; }; template <> struct consume { template using type = consume_Windows_UI_Shell_Tasks_IAppTaskInfo2; }; template struct consume_Windows_UI_Shell_Tasks_IAppTaskInfoStatics { auto IsSupported() const; auto FindAll() const; auto Create(param::hstring const& title, param::hstring const& subtitle, winrt::Windows::Foundation::Uri const& deepLink, winrt::Windows::Foundation::Uri const& iconUri, winrt::Windows::UI::Shell::Tasks::AppTaskContent const& content) const; }; template <> struct consume { template using type = consume_Windows_UI_Shell_Tasks_IAppTaskInfoStatics; }; template struct consume_Windows_UI_Shell_Tasks_IAppTaskResultAsset { }; template <> struct consume { template using type = consume_Windows_UI_Shell_Tasks_IAppTaskResultAsset; }; template struct consume_Windows_UI_Shell_Tasks_IAppTaskResultAssetFactory { auto CreateInstance(param::hstring const& name, param::hstring const& context, winrt::Windows::Foundation::Uri const& iconUri, winrt::Windows::Foundation::Uri const& assetUri) const; }; template <> struct consume { template using type = consume_Windows_UI_Shell_Tasks_IAppTaskResultAssetFactory; }; } #endif