// C++/WinRT v2.0.250303.1 // Copyright (c) Microsoft Corporation. All rights reserved. // Licensed under the MIT License. #pragma once #ifndef WINRT_Windows_ApplicationModel_VoiceCommands_0_H #define WINRT_Windows_ApplicationModel_VoiceCommands_0_H WINRT_EXPORT namespace winrt::Windows::ApplicationModel::AppService { struct AppServiceTriggerDetails; } WINRT_EXPORT namespace winrt::Windows::Foundation { struct EventRegistrationToken; struct IAsyncAction; template struct WINRT_IMPL_EMPTY_BASES TypedEventHandler; } WINRT_EXPORT namespace winrt::Windows::Foundation::Collections { template struct WINRT_IMPL_EMPTY_BASES IIterable; } WINRT_EXPORT namespace winrt::Windows::Globalization { struct Language; } WINRT_EXPORT namespace winrt::Windows::Media::SpeechRecognition { struct SpeechRecognitionResult; } WINRT_EXPORT namespace winrt::Windows::Storage { struct IStorageFile; struct StorageFile; } WINRT_EXPORT namespace winrt::Windows::ApplicationModel::VoiceCommands { enum class VoiceCommandCompletionReason : int32_t { Unknown = 0, CommunicationFailed = 1, ResourceLimitsExceeded = 2, Canceled = 3, TimeoutExceeded = 4, AppLaunched = 5, Completed = 6, }; enum class VoiceCommandContentTileType : int32_t { TitleOnly = 0, TitleWithText = 1, TitleWith68x68Icon = 2, TitleWith68x68IconAndText = 3, TitleWith68x92Icon = 4, TitleWith68x92IconAndText = 5, TitleWith280x140Icon = 6, TitleWith280x140IconAndText = 7, }; struct IVoiceCommand; struct IVoiceCommandCompletedEventArgs; struct IVoiceCommandConfirmationResult; struct IVoiceCommandContentTile; struct IVoiceCommandDefinition; struct IVoiceCommandDefinitionManagerStatics; struct IVoiceCommandDisambiguationResult; struct IVoiceCommandResponse; struct IVoiceCommandResponseStatics; struct IVoiceCommandServiceConnection; struct IVoiceCommandServiceConnectionStatics; struct IVoiceCommandUserMessage; struct VoiceCommand; struct VoiceCommandCompletedEventArgs; struct VoiceCommandConfirmationResult; struct VoiceCommandContentTile; struct VoiceCommandDefinition; struct VoiceCommandDefinitionManager; struct VoiceCommandDisambiguationResult; struct VoiceCommandResponse; struct VoiceCommandServiceConnection; struct VoiceCommandUserMessage; } 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{ 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 = class_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 = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = class_category; }; template <> struct category{ using type = enum_category; }; template <> struct category{ using type = enum_category; }; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommand"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandCompletedEventArgs"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandConfirmationResult"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandContentTile"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandDefinition"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandDefinitionManager"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandDisambiguationResult"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandResponse"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandServiceConnection"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandUserMessage"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandCompletionReason"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.VoiceCommandContentTileType"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommand"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandCompletedEventArgs"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandConfirmationResult"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandContentTile"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandDefinition"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandDefinitionManagerStatics"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandDisambiguationResult"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandResponse"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandResponseStatics"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandServiceConnection"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandServiceConnectionStatics"; template <> inline constexpr auto& name_v = L"Windows.ApplicationModel.VoiceCommands.IVoiceCommandUserMessage"; template <> inline constexpr guid guid_v{ 0x936F5273,0xEC82,0x42A6,{ 0xA5,0x5C,0xD2,0xD7,0x9E,0xC6,0xF9,0x20 } }; // 936F5273-EC82-42A6-A55C-D2D79EC6F920 template <> inline constexpr guid guid_v{ 0xC85E675D,0xFE42,0x432C,{ 0x99,0x07,0x09,0xDF,0x9F,0xCF,0x64,0xE8 } }; // C85E675D-FE42-432C-9907-09DF9FCF64E8 template <> inline constexpr guid guid_v{ 0xA022593E,0x8221,0x4526,{ 0xB0,0x83,0x84,0x09,0x72,0x26,0x22,0x47 } }; // A022593E-8221-4526-B083-840972262247 template <> inline constexpr guid guid_v{ 0x3EEFE9F0,0xB8C7,0x4C76,{ 0xA0,0xDE,0x16,0x07,0x89,0x5E,0xE3,0x27 } }; // 3EEFE9F0-B8C7-4C76-A0DE-1607895EE327 template <> inline constexpr guid guid_v{ 0x7972AAD0,0x0974,0x4979,{ 0x98,0x4B,0xCB,0x89,0x59,0xCD,0x61,0xAE } }; // 7972AAD0-0974-4979-984B-CB8959CD61AE template <> inline constexpr guid guid_v{ 0x8FE7A69E,0x067E,0x4F16,{ 0xA1,0x8C,0x5B,0x17,0xE9,0x49,0x99,0x40 } }; // 8FE7A69E-067E-4F16-A18C-5B17E9499940 template <> inline constexpr guid guid_v{ 0xECC68CFE,0xC9AC,0x45DF,{ 0xA8,0xEA,0xFE,0xEA,0x08,0xEF,0x9C,0x5E } }; // ECC68CFE-C9AC-45DF-A8EA-FEEA08EF9C5E template <> inline constexpr guid guid_v{ 0x0284B30E,0x8A3B,0x4CC4,{ 0xA6,0xA1,0xCA,0xD5,0xBE,0x27,0x16,0xB5 } }; // 0284B30E-8A3B-4CC4-A6A1-CAD5BE2716B5 template <> inline constexpr guid guid_v{ 0x2932F813,0x0D3B,0x49F2,{ 0x96,0xDD,0x62,0x50,0x19,0xBD,0x3B,0x5D } }; // 2932F813-0D3B-49F2-96DD-625019BD3B5D template <> inline constexpr guid guid_v{ 0xD894BB9F,0x21DA,0x44A4,{ 0x98,0xA2,0xFB,0x13,0x19,0x20,0xA9,0xCC } }; // D894BB9F-21DA-44A4-98A2-FB131920A9CC template <> inline constexpr guid guid_v{ 0x370EBFFB,0x2D34,0x42DF,{ 0x87,0x70,0x07,0x4D,0x0F,0x33,0x46,0x97 } }; // 370EBFFB-2D34-42DF-8770-074D0F334697 template <> inline constexpr guid guid_v{ 0x674EB3C0,0x44F6,0x4F07,{ 0xB9,0x79,0x4C,0x72,0x3F,0xC0,0x85,0x97 } }; // 674EB3C0-44F6-4F07-B979-4C723FC08597 template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommand; }; template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommandCompletedEventArgs; }; template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommandConfirmationResult; }; template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommandContentTile; }; template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommandDefinition; }; template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommandDisambiguationResult; }; template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommandResponse; }; template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommandServiceConnection; }; template <> struct default_interface{ using type = winrt::Windows::ApplicationModel::VoiceCommands::IVoiceCommandUserMessage; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_CommandName(void**) noexcept = 0; virtual int32_t __stdcall get_Properties(void**) noexcept = 0; virtual int32_t __stdcall get_SpeechRecognitionResult(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Reason(int32_t*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Confirmed(bool*) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Title(void**) noexcept = 0; virtual int32_t __stdcall put_Title(void*) noexcept = 0; virtual int32_t __stdcall get_TextLine1(void**) noexcept = 0; virtual int32_t __stdcall put_TextLine1(void*) noexcept = 0; virtual int32_t __stdcall get_TextLine2(void**) noexcept = 0; virtual int32_t __stdcall put_TextLine2(void*) noexcept = 0; virtual int32_t __stdcall get_TextLine3(void**) noexcept = 0; virtual int32_t __stdcall put_TextLine3(void*) noexcept = 0; virtual int32_t __stdcall get_Image(void**) noexcept = 0; virtual int32_t __stdcall put_Image(void*) noexcept = 0; virtual int32_t __stdcall get_AppContext(void**) noexcept = 0; virtual int32_t __stdcall put_AppContext(void*) noexcept = 0; virtual int32_t __stdcall get_AppLaunchArgument(void**) noexcept = 0; virtual int32_t __stdcall put_AppLaunchArgument(void*) noexcept = 0; virtual int32_t __stdcall get_ContentTileType(int32_t*) noexcept = 0; virtual int32_t __stdcall put_ContentTileType(int32_t) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Language(void**) noexcept = 0; virtual int32_t __stdcall get_Name(void**) noexcept = 0; virtual int32_t __stdcall SetPhraseListAsync(void*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall InstallCommandDefinitionsFromStorageFileAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall get_InstalledCommandDefinitions(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_SelectedItem(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_Message(void**) noexcept = 0; virtual int32_t __stdcall put_Message(void*) noexcept = 0; virtual int32_t __stdcall get_RepeatMessage(void**) noexcept = 0; virtual int32_t __stdcall put_RepeatMessage(void*) noexcept = 0; virtual int32_t __stdcall get_AppLaunchArgument(void**) noexcept = 0; virtual int32_t __stdcall put_AppLaunchArgument(void*) noexcept = 0; virtual int32_t __stdcall get_VoiceCommandContentTiles(void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_MaxSupportedVoiceCommandContentTiles(uint32_t*) noexcept = 0; virtual int32_t __stdcall CreateResponse(void*, void**) noexcept = 0; virtual int32_t __stdcall CreateResponseWithTiles(void*, void*, void**) noexcept = 0; virtual int32_t __stdcall CreateResponseForPrompt(void*, void*, void**) noexcept = 0; virtual int32_t __stdcall CreateResponseForPromptWithTiles(void*, void*, void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall GetVoiceCommandAsync(void**) noexcept = 0; virtual int32_t __stdcall RequestConfirmationAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall RequestDisambiguationAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall ReportProgressAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall ReportSuccessAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall ReportFailureAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall RequestAppLaunchAsync(void*, void**) noexcept = 0; virtual int32_t __stdcall get_Language(void**) noexcept = 0; virtual int32_t __stdcall add_VoiceCommandCompleted(void*, winrt::event_token*) noexcept = 0; virtual int32_t __stdcall remove_VoiceCommandCompleted(winrt::event_token) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall FromAppServiceTriggerDetails(void*, void**) noexcept = 0; }; }; template <> struct abi { struct WINRT_IMPL_NOVTABLE type : inspectable_abi { virtual int32_t __stdcall get_DisplayMessage(void**) noexcept = 0; virtual int32_t __stdcall put_DisplayMessage(void*) noexcept = 0; virtual int32_t __stdcall get_SpokenMessage(void**) noexcept = 0; virtual int32_t __stdcall put_SpokenMessage(void*) noexcept = 0; }; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommand { [[nodiscard]] auto CommandName() const; [[nodiscard]] auto Properties() const; [[nodiscard]] auto SpeechRecognitionResult() const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommand; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandCompletedEventArgs { [[nodiscard]] auto Reason() const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandCompletedEventArgs; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandConfirmationResult { [[nodiscard]] auto Confirmed() const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandConfirmationResult; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandContentTile { [[nodiscard]] auto Title() const; auto Title(param::hstring const& value) const; [[nodiscard]] auto TextLine1() const; auto TextLine1(param::hstring const& value) const; [[nodiscard]] auto TextLine2() const; auto TextLine2(param::hstring const& value) const; [[nodiscard]] auto TextLine3() const; auto TextLine3(param::hstring const& value) const; [[nodiscard]] auto Image() const; auto Image(winrt::Windows::Storage::IStorageFile const& value) const; [[nodiscard]] auto AppContext() const; auto AppContext(winrt::Windows::Foundation::IInspectable const& value) const; [[nodiscard]] auto AppLaunchArgument() const; auto AppLaunchArgument(param::hstring const& value) const; [[nodiscard]] auto ContentTileType() const; auto ContentTileType(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandContentTileType const& value) const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandContentTile; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandDefinition { [[nodiscard]] auto Language() const; [[nodiscard]] auto Name() const; auto SetPhraseListAsync(param::hstring const& phraseListName, param::async_iterable const& phraseList) const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandDefinition; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandDefinitionManagerStatics { auto InstallCommandDefinitionsFromStorageFileAsync(winrt::Windows::Storage::StorageFile const& file) const; [[nodiscard]] auto InstalledCommandDefinitions() const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandDefinitionManagerStatics; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandDisambiguationResult { [[nodiscard]] auto SelectedItem() const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandDisambiguationResult; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandResponse { [[nodiscard]] auto Message() const; auto Message(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandUserMessage const& value) const; [[nodiscard]] auto RepeatMessage() const; auto RepeatMessage(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandUserMessage const& value) const; [[nodiscard]] auto AppLaunchArgument() const; auto AppLaunchArgument(param::hstring const& value) const; [[nodiscard]] auto VoiceCommandContentTiles() const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandResponse; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandResponseStatics { [[nodiscard]] auto MaxSupportedVoiceCommandContentTiles() const; auto CreateResponse(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandUserMessage const& userMessage) const; auto CreateResponse(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandUserMessage const& message, param::iterable const& contentTiles) const; auto CreateResponseForPrompt(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandUserMessage const& message, winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandUserMessage const& repeatMessage) const; auto CreateResponseForPrompt(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandUserMessage const& message, winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandUserMessage const& repeatMessage, param::iterable const& contentTiles) const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandResponseStatics; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandServiceConnection { auto GetVoiceCommandAsync() const; auto RequestConfirmationAsync(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandResponse const& response) const; auto RequestDisambiguationAsync(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandResponse const& response) const; auto ReportProgressAsync(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandResponse const& response) const; auto ReportSuccessAsync(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandResponse const& response) const; auto ReportFailureAsync(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandResponse const& response) const; auto RequestAppLaunchAsync(winrt::Windows::ApplicationModel::VoiceCommands::VoiceCommandResponse const& response) const; [[nodiscard]] auto Language() const; auto VoiceCommandCompleted(winrt::Windows::Foundation::TypedEventHandler const& handler) const; using VoiceCommandCompleted_revoker = impl::event_revoker::remove_VoiceCommandCompleted>; [[nodiscard]] auto VoiceCommandCompleted(auto_revoke_t, winrt::Windows::Foundation::TypedEventHandler const& handler) const; auto VoiceCommandCompleted(winrt::event_token const& token) const noexcept; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandServiceConnection; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandServiceConnectionStatics { auto FromAppServiceTriggerDetails(winrt::Windows::ApplicationModel::AppService::AppServiceTriggerDetails const& triggerDetails) const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandServiceConnectionStatics; }; template struct consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandUserMessage { [[nodiscard]] auto DisplayMessage() const; auto DisplayMessage(param::hstring const& value) const; [[nodiscard]] auto SpokenMessage() const; auto SpokenMessage(param::hstring const& value) const; }; template <> struct consume { template using type = consume_Windows_ApplicationModel_VoiceCommands_IVoiceCommandUserMessage; }; } #endif