// WARNING: Please don't edit this file. It was generated by C++/WinRT // v2.0.250303.1 #pragma once #ifndef WINRT_Windows_AI_Actions_Hosting_0_H #define WINRT_Windows_AI_Actions_Hosting_0_H WINRT_EXPORT namespace winrt::Windows::AI::Actions { struct ActionEntity; enum class ActionEntityKind : int32_t; struct ActionFeedback; struct ActionInvocationContext; } WINRT_EXPORT namespace winrt::Windows::Foundation { struct EventRegistrationToken; struct IAsyncAction; template struct WINRT_IMPL_EMPTY_BASES TypedEventHandler; } WINRT_EXPORT namespace winrt::Windows::Foundation::Collections { struct PropertySet; } WINRT_EXPORT namespace winrt::Windows::UI { struct WindowId; } WINRT_EXPORT namespace winrt::Windows::AI::Actions::Hosting { struct IActionCatalog; struct IActionCatalog2; struct IActionCatalog3; struct IActionDefinition; struct IActionDefinition2; struct IActionDefinition3; struct IActionDefinition4; struct IActionDefinition5; struct IActionEntityRegistrationInfo; struct IActionInstance; struct IActionInstanceDisplayInfo; struct IActionOverload; struct IActionOverload2; struct ActionCatalog; struct ActionDefinition; struct ActionEntityRegistrationInfo; struct ActionInstance; struct ActionInstanceDisplayInfo; struct ActionOverload; } 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 = interface_category; }; template <> struct category< winrt::Windows::AI::Actions::Hosting::IActionEntityRegistrationInfo> { using type = interface_category; }; template <> struct category { using type = interface_category; }; template <> struct category< winrt::Windows::AI::Actions::Hosting::IActionInstanceDisplayInfo> { 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< winrt::Windows::AI::Actions::Hosting::ActionEntityRegistrationInfo> { using type = class_category; }; template <> struct category { using type = class_category; }; template <> struct category< winrt::Windows::AI::Actions::Hosting::ActionInstanceDisplayInfo> { using type = class_category; }; template <> struct category { using type = class_category; }; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.ActionCatalog"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.ActionDefinition"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.ActionEntityRegistrationInfo"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.ActionInstance"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.ActionInstanceDisplayInfo"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.ActionOverload"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionCatalog"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionCatalog2"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionCatalog3"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionDefinition"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionDefinition2"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionDefinition3"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionDefinition4"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionDefinition5"; template <> inline constexpr auto& name_v< winrt::Windows::AI::Actions::Hosting::IActionEntityRegistrationInfo> = L"Windows.AI.Actions.Hosting.IActionEntityRegistrationInfo"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionInstance"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionInstanceDisplayInfo"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionOverload"; template <> inline constexpr auto& name_v = L"Windows.AI.Actions.Hosting.IActionOverload2"; template <> inline constexpr guid guid_v{ 0xDBE7C537, 0x66EA, 0x5394, {0x90, 0x85, 0x4F, 0xC1, 0x9D, 0x78, 0x37, 0x5C}}; // DBE7C537-66EA-5394-9085-4FC19D78375C template <> inline constexpr guid guid_v{ 0x370360B1, 0xA14B, 0x5EA8, {0xB6, 0x11, 0xB5, 0xF7, 0x03, 0x42, 0xBA, 0x44}}; // 370360B1-A14B-5EA8-B611-B5F70342BA44 template <> inline constexpr guid guid_v{ 0x2E05D518, 0x8680, 0x55D3, {0x82, 0x0D, 0x26, 0x05, 0xAD, 0xB7, 0xD6, 0x2D}}; // 2E05D518-8680-55D3-820D-2605ADB7D62D template <> inline constexpr guid guid_v{ 0xFE766ADD, 0x924D, 0x5231, {0x85, 0x5E, 0xDA, 0xC9, 0xE8, 0x2C, 0x7E, 0x6C}}; // FE766ADD-924D-5231-855E-DAC9E82C7E6C template <> inline constexpr guid guid_v{ 0xC1F44733, 0xF563, 0x54E2, {0xBD, 0x2B, 0xDC, 0x4C, 0x73, 0x20, 0x54, 0xCF}}; // C1F44733-F563-54E2-BD2B-DC4C732054CF template <> inline constexpr guid guid_v{ 0x89C9A7E0, 0x4BFD, 0x55F4, {0x9E, 0xED, 0xDC, 0xE2, 0x25, 0x01, 0x14, 0xFA}}; // 89C9A7E0-4BFD-55F4-9EED-DCE2250114FA template <> inline constexpr guid guid_v{ 0x6DD91071, 0x8847, 0x55B6, {0x95, 0x18, 0x9F, 0xF8, 0xDE, 0x42, 0x1E, 0xB7}}; // 6DD91071-8847-55B6-9518-9FF8DE421EB7 template <> inline constexpr guid guid_v{ 0x5BEA33EF, 0xD325, 0x53A8, {0x8D, 0xB3, 0x0D, 0x77, 0x1F, 0x4D, 0x1E, 0x54}}; // 5BEA33EF-D325-53A8-8DB3-0D771F4D1E54 template <> inline constexpr guid guid_v{ 0xC3B92BDB, 0x03C3, 0x5A9E, {0xB0, 0x49, 0x00, 0x2F, 0xA0, 0x40, 0x56, 0x99}}; // C3B92BDB-03C3-5A9E-B049-002FA0405699 template <> inline constexpr guid guid_v{ 0x809BCB6E, 0xE6EF, 0x5F16, {0xB8, 0x9A, 0x06, 0xB8, 0x89, 0x3D, 0xF2, 0x0E}}; // 809BCB6E-E6EF-5F16-B89A-06B8893DF20E template <> inline constexpr guid guid_v{ 0xFCFDCE21, 0x678B, 0x5602, {0xB9, 0xDC, 0x2F, 0x45, 0x33, 0xA6, 0xF4, 0xB2}}; // FCFDCE21-678B-5602-B9DC-2F4533A6F4B2 template <> inline constexpr guid guid_v{ 0x5D184610, 0xD09D, 0x5375, {0x98, 0x49, 0x50, 0x5C, 0x35, 0x9D, 0xCA, 0x01}}; // 5D184610-D09D-5375-9849-505C359DCA01 template <> inline constexpr guid guid_v{ 0x57EC9906, 0x8231, 0x5A9E, {0x92, 0x9F, 0xBF, 0x39, 0xE9, 0x52, 0xEB, 0x93}}; // 57EC9906-8231-5A9E-929F-BF39E952EB93 template <> struct default_interface { using type = winrt::Windows::AI::Actions::Hosting::IActionCatalog; }; template <> struct default_interface< winrt::Windows::AI::Actions::Hosting::ActionDefinition> { using type = winrt::Windows::AI::Actions::Hosting::IActionDefinition; }; template <> struct default_interface< winrt::Windows::AI::Actions::Hosting::ActionEntityRegistrationInfo> { using type = winrt::Windows::AI::Actions::Hosting::IActionEntityRegistrationInfo; }; template <> struct default_interface { using type = winrt::Windows::AI::Actions::Hosting::IActionInstance; }; template <> struct default_interface< winrt::Windows::AI::Actions::Hosting::ActionInstanceDisplayInfo> { using type = winrt::Windows::AI::Actions::Hosting::IActionInstanceDisplayInfo; }; template <> struct default_interface { using type = winrt::Windows::AI::Actions::Hosting::IActionOverload; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetAllActions(uint32_t* __resultSize, void***) noexcept = 0; virtual int32_t __stdcall add_Changed(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_Changed(winrt::event_token) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetActionsForInputs(uint32_t, void**, uint32_t* __resultSize, void***) noexcept = 0; virtual int32_t __stdcall GetActionsForInputs2( uint32_t, void**, struct struct_Windows_UI_WindowId, uint32_t* __resultSize, void***) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetActionsForCurrentApp(uint32_t* __resultSize, 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_Description(void**) noexcept = 0; virtual int32_t __stdcall get_IconFullPath(void**) noexcept = 0; virtual int32_t __stdcall get_PackageFamilyName(void**) noexcept = 0; virtual int32_t __stdcall GetInputs(uint32_t* __resultSize, void***) noexcept = 0; virtual int32_t __stdcall GetOutputs(uint32_t* __resultSize, void***) noexcept = 0; virtual int32_t __stdcall GetOverloads(uint32_t* __resultSize, void***) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_DisplaysUI(bool*) noexcept = 0; virtual int32_t __stdcall get_UsesGenerativeAI(bool*) noexcept = 0; virtual int32_t __stdcall get_SchemaVersion(uint32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_PackageRelativeApplicationId( void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_IsCurrentlyAvailable(bool*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetIconFullPath(void*, void**) noexcept = 0; }; }; template <> struct abi< winrt::Windows::AI::Actions::Hosting::IActionEntityRegistrationInfo> { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Name(void**) noexcept = 0; virtual int32_t __stdcall put_Name(void*) noexcept = 0; virtual int32_t __stdcall get_Kind(int32_t*) noexcept = 0; virtual int32_t __stdcall put_Kind(int32_t) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_DisplayInfo(void**) noexcept = 0; virtual int32_t __stdcall get_Definition(void**) noexcept = 0; virtual int32_t __stdcall get_Context(void**) noexcept = 0; virtual int32_t __stdcall InvokeAsync(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Description(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_DescriptionTemplate(void**) noexcept = 0; virtual int32_t __stdcall GetInputs(uint32_t* __resultSize, void***) noexcept = 0; virtual int32_t __stdcall InvokeAsync(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall InvokeFeedbackAsync(void*, void*, void**) noexcept = 0; virtual int32_t __stdcall GetSupportsFeedback(bool*) noexcept = 0; }; }; template struct consume_Windows_AI_Actions_Hosting_IActionCatalog { auto GetAllActions() const; auto Changed(winrt::Windows::Foundation::TypedEventHandler< winrt::Windows::AI::Actions::Hosting::ActionCatalog, winrt::Windows::Foundation::IInspectable> const& handler) const; using Changed_revoker = impl::event_revoker::remove_Changed>; [[nodiscard]] auto Changed( auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler< winrt::Windows::AI::Actions::Hosting::ActionCatalog, winrt::Windows::Foundation::IInspectable> const& handler) const; auto Changed(winrt::event_token const& token) const noexcept; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionCatalog; }; template struct consume_Windows_AI_Actions_Hosting_IActionCatalog2 { auto GetActionsForInputs( array_view inputEntities) const; auto GetActionsForInputs( array_view inputEntities, winrt::Windows::UI::WindowId const& invokerWindowId) const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionCatalog2; }; template struct consume_Windows_AI_Actions_Hosting_IActionCatalog3 { auto GetActionsForCurrentApp() const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionCatalog3; }; template struct consume_Windows_AI_Actions_Hosting_IActionDefinition { [[nodiscard]] auto Id() const; [[nodiscard]] auto Description() const; [[nodiscard]] auto IconFullPath() const; [[nodiscard]] auto PackageFamilyName() const; auto GetInputs() const; auto GetOutputs() const; auto GetOverloads() const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionDefinition; }; template struct consume_Windows_AI_Actions_Hosting_IActionDefinition2 { [[nodiscard]] auto DisplaysUI() const; [[nodiscard]] auto UsesGenerativeAI() const; [[nodiscard]] auto SchemaVersion() const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionDefinition2; }; template struct consume_Windows_AI_Actions_Hosting_IActionDefinition3 { [[nodiscard]] auto PackageRelativeApplicationId() const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionDefinition3; }; template struct consume_Windows_AI_Actions_Hosting_IActionDefinition4 { [[nodiscard]] auto IsCurrentlyAvailable() const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionDefinition4; }; template struct consume_Windows_AI_Actions_Hosting_IActionDefinition5 { auto GetIconFullPath( winrt::Windows::Foundation::Collections::PropertySet const& qualifierValues) const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionDefinition5; }; template struct consume_Windows_AI_Actions_Hosting_IActionEntityRegistrationInfo { [[nodiscard]] auto Name() const; auto Name(param::hstring const& value) const; [[nodiscard]] auto Kind() const; auto Kind(winrt::Windows::AI::Actions::ActionEntityKind const& value) const; }; template <> struct consume< winrt::Windows::AI::Actions::Hosting::IActionEntityRegistrationInfo> { template using type = consume_Windows_AI_Actions_Hosting_IActionEntityRegistrationInfo; }; template struct consume_Windows_AI_Actions_Hosting_IActionInstance { [[nodiscard]] auto DisplayInfo() const; [[nodiscard]] auto Definition() const; [[nodiscard]] auto Context() const; auto InvokeAsync() const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionInstance; }; template struct consume_Windows_AI_Actions_Hosting_IActionInstanceDisplayInfo { [[nodiscard]] auto Description() const; }; template <> struct consume< winrt::Windows::AI::Actions::Hosting::IActionInstanceDisplayInfo> { template using type = consume_Windows_AI_Actions_Hosting_IActionInstanceDisplayInfo; }; template struct consume_Windows_AI_Actions_Hosting_IActionOverload { [[nodiscard]] auto DescriptionTemplate() const; auto GetInputs() const; auto InvokeAsync(winrt::Windows::AI::Actions::ActionInvocationContext const& context) const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionOverload; }; template struct consume_Windows_AI_Actions_Hosting_IActionOverload2 { auto InvokeFeedbackAsync( winrt::Windows::AI::Actions::ActionInvocationContext const& context, winrt::Windows::AI::Actions::ActionFeedback const& feedback) const; auto GetSupportsFeedback() const; }; template <> struct consume { template using type = consume_Windows_AI_Actions_Hosting_IActionOverload2; }; } // namespace winrt::impl #endif