9#include <aws/core/client/AWSError.h>
10#include <aws/core/client/AsyncCallerContext.h>
11#include <aws/core/client/GenericClientConfiguration.h>
12#include <aws/core/http/HttpTypes.h>
13#include <aws/core/utils/memory/stl/AWSString.h>
14#include <aws/socialmessaging/SocialMessagingEndpointProvider.h>
15#include <aws/socialmessaging/SocialMessagingErrors.h>
22#include <aws/socialmessaging/model/AssociateWhatsAppBusinessAccountRequest.h>
23#include <aws/socialmessaging/model/AssociateWhatsAppBusinessAccountResult.h>
24#include <aws/socialmessaging/model/CreateWhatsAppFlowResult.h>
25#include <aws/socialmessaging/model/CreateWhatsAppMessageTemplateFromLibraryResult.h>
26#include <aws/socialmessaging/model/CreateWhatsAppMessageTemplateMediaResult.h>
27#include <aws/socialmessaging/model/CreateWhatsAppMessageTemplateResult.h>
28#include <aws/socialmessaging/model/DeleteWhatsAppFlowResult.h>
29#include <aws/socialmessaging/model/DeleteWhatsAppMessageMediaResult.h>
30#include <aws/socialmessaging/model/DeleteWhatsAppMessageTemplateResult.h>
31#include <aws/socialmessaging/model/DeprecateWhatsAppFlowResult.h>
32#include <aws/socialmessaging/model/DisassociateWhatsAppBusinessAccountResult.h>
33#include <aws/socialmessaging/model/GetLinkedWhatsAppBusinessAccountPhoneNumberResult.h>
34#include <aws/socialmessaging/model/GetLinkedWhatsAppBusinessAccountResult.h>
35#include <aws/socialmessaging/model/GetWhatsAppFlowPreviewResult.h>
36#include <aws/socialmessaging/model/GetWhatsAppFlowResult.h>
37#include <aws/socialmessaging/model/GetWhatsAppMessageMediaResult.h>
38#include <aws/socialmessaging/model/GetWhatsAppMessageTemplateResult.h>
39#include <aws/socialmessaging/model/ListLinkedWhatsAppBusinessAccountsRequest.h>
40#include <aws/socialmessaging/model/ListLinkedWhatsAppBusinessAccountsResult.h>
41#include <aws/socialmessaging/model/ListTagsForResourceResult.h>
42#include <aws/socialmessaging/model/ListWhatsAppFlowAssetsResult.h>
43#include <aws/socialmessaging/model/ListWhatsAppFlowsResult.h>
44#include <aws/socialmessaging/model/ListWhatsAppMessageTemplatesResult.h>
45#include <aws/socialmessaging/model/ListWhatsAppTemplateLibraryResult.h>
46#include <aws/socialmessaging/model/PostWhatsAppMessageMediaResult.h>
47#include <aws/socialmessaging/model/PublishWhatsAppFlowResult.h>
48#include <aws/socialmessaging/model/PutWhatsAppBusinessAccountEventDestinationsResult.h>
49#include <aws/socialmessaging/model/SendWhatsAppMessageResult.h>
50#include <aws/socialmessaging/model/TagResourceResult.h>
51#include <aws/socialmessaging/model/UntagResourceResult.h>
52#include <aws/socialmessaging/model/UpdateWhatsAppFlowAssetsResult.h>
53#include <aws/socialmessaging/model/UpdateWhatsAppFlowResult.h>
54#include <aws/socialmessaging/model/UpdateWhatsAppMessageTemplateResult.h>
60class HttpClientFactory;
64template <
typename R,
typename E>
74class AWSCredentialsProvider;
81namespace SocialMessaging {
88class AssociateWhatsAppBusinessAccountRequest;
89class CreateWhatsAppFlowRequest;
90class CreateWhatsAppMessageTemplateRequest;
91class CreateWhatsAppMessageTemplateFromLibraryRequest;
92class CreateWhatsAppMessageTemplateMediaRequest;
93class DeleteWhatsAppFlowRequest;
94class DeleteWhatsAppMessageMediaRequest;
95class DeleteWhatsAppMessageTemplateRequest;
96class DeprecateWhatsAppFlowRequest;
97class DisassociateWhatsAppBusinessAccountRequest;
98class GetLinkedWhatsAppBusinessAccountRequest;
99class GetLinkedWhatsAppBusinessAccountPhoneNumberRequest;
100class GetWhatsAppFlowRequest;
101class GetWhatsAppFlowPreviewRequest;
102class GetWhatsAppMessageMediaRequest;
103class GetWhatsAppMessageTemplateRequest;
104class ListLinkedWhatsAppBusinessAccountsRequest;
105class ListTagsForResourceRequest;
106class ListWhatsAppFlowAssetsRequest;
107class ListWhatsAppFlowsRequest;
108class ListWhatsAppMessageTemplatesRequest;
109class ListWhatsAppTemplateLibraryRequest;
110class PostWhatsAppMessageMediaRequest;
111class PublishWhatsAppFlowRequest;
112class PutWhatsAppBusinessAccountEventDestinationsRequest;
113class SendWhatsAppMessageRequest;
114class TagResourceRequest;
115class UntagResourceRequest;
116class UpdateWhatsAppFlowRequest;
117class UpdateWhatsAppFlowAssetsRequest;
118class UpdateWhatsAppMessageTemplateRequest;
198 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
201 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
205 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
209 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
213 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
216 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
223 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
230 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
234 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
238 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
241 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
254 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
257 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
263 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
267 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
276 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
280 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
283 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
286 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
289 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
292 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
299 const std::shared_ptr<const Aws::Client::AsyncCallerContext>&)>
EndpointProviderBase< SocialMessagingClientConfiguration, SocialMessagingBuiltInParameters, SocialMessagingClientContextParameters > SocialMessagingEndpointProviderBase
std::future< GetLinkedWhatsAppBusinessAccountOutcome > GetLinkedWhatsAppBusinessAccountOutcomeCallable
std::future< ListWhatsAppMessageTemplatesOutcome > ListWhatsAppMessageTemplatesOutcomeCallable
std::future< PostWhatsAppMessageMediaOutcome > PostWhatsAppMessageMediaOutcomeCallable
Aws::Utils::Outcome< CreateWhatsAppMessageTemplateMediaResult, SocialMessagingError > CreateWhatsAppMessageTemplateMediaOutcome
std::future< UntagResourceOutcome > UntagResourceOutcomeCallable
std::future< UpdateWhatsAppMessageTemplateOutcome > UpdateWhatsAppMessageTemplateOutcomeCallable
Aws::Utils::Outcome< DeleteWhatsAppMessageTemplateResult, SocialMessagingError > DeleteWhatsAppMessageTemplateOutcome
std::future< ListWhatsAppFlowAssetsOutcome > ListWhatsAppFlowAssetsOutcomeCallable
Aws::Utils::Outcome< UpdateWhatsAppFlowResult, SocialMessagingError > UpdateWhatsAppFlowOutcome
std::future< ListTagsForResourceOutcome > ListTagsForResourceOutcomeCallable
Aws::Utils::Outcome< ListWhatsAppMessageTemplatesResult, SocialMessagingError > ListWhatsAppMessageTemplatesOutcome
Aws::Utils::Outcome< PublishWhatsAppFlowResult, SocialMessagingError > PublishWhatsAppFlowOutcome
Aws::Utils::Outcome< GetLinkedWhatsAppBusinessAccountResult, SocialMessagingError > GetLinkedWhatsAppBusinessAccountOutcome
std::future< UpdateWhatsAppFlowAssetsOutcome > UpdateWhatsAppFlowAssetsOutcomeCallable
Aws::Utils::Outcome< ListLinkedWhatsAppBusinessAccountsResult, SocialMessagingError > ListLinkedWhatsAppBusinessAccountsOutcome
std::future< GetLinkedWhatsAppBusinessAccountPhoneNumberOutcome > GetLinkedWhatsAppBusinessAccountPhoneNumberOutcomeCallable
Aws::Utils::Outcome< DeleteWhatsAppFlowResult, SocialMessagingError > DeleteWhatsAppFlowOutcome
std::future< UpdateWhatsAppFlowOutcome > UpdateWhatsAppFlowOutcomeCallable
std::future< AssociateWhatsAppBusinessAccountOutcome > AssociateWhatsAppBusinessAccountOutcomeCallable
Aws::Utils::Outcome< UpdateWhatsAppMessageTemplateResult, SocialMessagingError > UpdateWhatsAppMessageTemplateOutcome
Aws::Utils::Outcome< GetWhatsAppFlowResult, SocialMessagingError > GetWhatsAppFlowOutcome
std::future< DeleteWhatsAppMessageMediaOutcome > DeleteWhatsAppMessageMediaOutcomeCallable
Aws::Utils::Outcome< CreateWhatsAppMessageTemplateFromLibraryResult, SocialMessagingError > CreateWhatsAppMessageTemplateFromLibraryOutcome
std::future< DeleteWhatsAppMessageTemplateOutcome > DeleteWhatsAppMessageTemplateOutcomeCallable
std::future< PutWhatsAppBusinessAccountEventDestinationsOutcome > PutWhatsAppBusinessAccountEventDestinationsOutcomeCallable
Aws::Utils::Outcome< UntagResourceResult, SocialMessagingError > UntagResourceOutcome
Aws::Utils::Outcome< GetWhatsAppMessageTemplateResult, SocialMessagingError > GetWhatsAppMessageTemplateOutcome
std::future< GetWhatsAppMessageTemplateOutcome > GetWhatsAppMessageTemplateOutcomeCallable
Aws::Utils::Outcome< TagResourceResult, SocialMessagingError > TagResourceOutcome
std::future< CreateWhatsAppMessageTemplateOutcome > CreateWhatsAppMessageTemplateOutcomeCallable
std::future< GetWhatsAppFlowOutcome > GetWhatsAppFlowOutcomeCallable
std::future< GetWhatsAppFlowPreviewOutcome > GetWhatsAppFlowPreviewOutcomeCallable
std::future< DeleteWhatsAppFlowOutcome > DeleteWhatsAppFlowOutcomeCallable
std::future< GetWhatsAppMessageMediaOutcome > GetWhatsAppMessageMediaOutcomeCallable
Aws::Utils::Outcome< CreateWhatsAppFlowResult, SocialMessagingError > CreateWhatsAppFlowOutcome
Aws::Utils::Outcome< ListWhatsAppFlowsResult, SocialMessagingError > ListWhatsAppFlowsOutcome
Aws::Utils::Outcome< ListTagsForResourceResult, SocialMessagingError > ListTagsForResourceOutcome
Aws::Utils::Outcome< DeprecateWhatsAppFlowResult, SocialMessagingError > DeprecateWhatsAppFlowOutcome
Aws::Utils::Outcome< CreateWhatsAppMessageTemplateResult, SocialMessagingError > CreateWhatsAppMessageTemplateOutcome
std::future< CreateWhatsAppMessageTemplateMediaOutcome > CreateWhatsAppMessageTemplateMediaOutcomeCallable
Aws::Utils::Outcome< GetLinkedWhatsAppBusinessAccountPhoneNumberResult, SocialMessagingError > GetLinkedWhatsAppBusinessAccountPhoneNumberOutcome
std::future< ListWhatsAppFlowsOutcome > ListWhatsAppFlowsOutcomeCallable
std::future< TagResourceOutcome > TagResourceOutcomeCallable
Aws::Utils::Outcome< AssociateWhatsAppBusinessAccountResult, SocialMessagingError > AssociateWhatsAppBusinessAccountOutcome
Aws::Utils::Outcome< PutWhatsAppBusinessAccountEventDestinationsResult, SocialMessagingError > PutWhatsAppBusinessAccountEventDestinationsOutcome
Aws::Utils::Outcome< DisassociateWhatsAppBusinessAccountResult, SocialMessagingError > DisassociateWhatsAppBusinessAccountOutcome
Aws::Utils::Outcome< GetWhatsAppFlowPreviewResult, SocialMessagingError > GetWhatsAppFlowPreviewOutcome
Aws::Utils::Outcome< PostWhatsAppMessageMediaResult, SocialMessagingError > PostWhatsAppMessageMediaOutcome
Aws::Utils::Outcome< GetWhatsAppMessageMediaResult, SocialMessagingError > GetWhatsAppMessageMediaOutcome
Aws::Utils::Outcome< DeleteWhatsAppMessageMediaResult, SocialMessagingError > DeleteWhatsAppMessageMediaOutcome
Aws::Utils::Outcome< ListWhatsAppTemplateLibraryResult, SocialMessagingError > ListWhatsAppTemplateLibraryOutcome
std::future< DisassociateWhatsAppBusinessAccountOutcome > DisassociateWhatsAppBusinessAccountOutcomeCallable
std::future< CreateWhatsAppFlowOutcome > CreateWhatsAppFlowOutcomeCallable
std::future< CreateWhatsAppMessageTemplateFromLibraryOutcome > CreateWhatsAppMessageTemplateFromLibraryOutcomeCallable
std::future< PublishWhatsAppFlowOutcome > PublishWhatsAppFlowOutcomeCallable
Aws::Utils::Outcome< SendWhatsAppMessageResult, SocialMessagingError > SendWhatsAppMessageOutcome
Aws::Utils::Outcome< ListWhatsAppFlowAssetsResult, SocialMessagingError > ListWhatsAppFlowAssetsOutcome
std::future< ListWhatsAppTemplateLibraryOutcome > ListWhatsAppTemplateLibraryOutcomeCallable
std::future< DeprecateWhatsAppFlowOutcome > DeprecateWhatsAppFlowOutcomeCallable
Aws::Utils::Outcome< UpdateWhatsAppFlowAssetsResult, SocialMessagingError > UpdateWhatsAppFlowAssetsOutcome
std::future< ListLinkedWhatsAppBusinessAccountsOutcome > ListLinkedWhatsAppBusinessAccountsOutcomeCallable
std::future< SendWhatsAppMessageOutcome > SendWhatsAppMessageOutcomeCallable
std::function< void(const SocialMessagingClient *, const Model::DeleteWhatsAppMessageTemplateRequest &, const Model::DeleteWhatsAppMessageTemplateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteWhatsAppMessageTemplateResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::GetWhatsAppFlowRequest &, const Model::GetWhatsAppFlowOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetWhatsAppFlowResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::GetWhatsAppFlowPreviewRequest &, const Model::GetWhatsAppFlowPreviewOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetWhatsAppFlowPreviewResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::ListWhatsAppMessageTemplatesRequest &, const Model::ListWhatsAppMessageTemplatesOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListWhatsAppMessageTemplatesResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::GetLinkedWhatsAppBusinessAccountPhoneNumberRequest &, const Model::GetLinkedWhatsAppBusinessAccountPhoneNumberOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetLinkedWhatsAppBusinessAccountPhoneNumberResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::SendWhatsAppMessageRequest &, const Model::SendWhatsAppMessageOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> SendWhatsAppMessageResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::ListWhatsAppFlowsRequest &, const Model::ListWhatsAppFlowsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListWhatsAppFlowsResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::DeprecateWhatsAppFlowRequest &, const Model::DeprecateWhatsAppFlowOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeprecateWhatsAppFlowResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::UpdateWhatsAppMessageTemplateRequest &, const Model::UpdateWhatsAppMessageTemplateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateWhatsAppMessageTemplateResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::GetLinkedWhatsAppBusinessAccountRequest &, const Model::GetLinkedWhatsAppBusinessAccountOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetLinkedWhatsAppBusinessAccountResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::CreateWhatsAppFlowRequest &, const Model::CreateWhatsAppFlowOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateWhatsAppFlowResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::DeleteWhatsAppFlowRequest &, const Model::DeleteWhatsAppFlowOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteWhatsAppFlowResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::ListLinkedWhatsAppBusinessAccountsRequest &, const Model::ListLinkedWhatsAppBusinessAccountsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListLinkedWhatsAppBusinessAccountsResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::UntagResourceRequest &, const Model::UntagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UntagResourceResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::PublishWhatsAppFlowRequest &, const Model::PublishWhatsAppFlowOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PublishWhatsAppFlowResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::TagResourceRequest &, const Model::TagResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> TagResourceResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::CreateWhatsAppMessageTemplateMediaRequest &, const Model::CreateWhatsAppMessageTemplateMediaOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateWhatsAppMessageTemplateMediaResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::DisassociateWhatsAppBusinessAccountRequest &, const Model::DisassociateWhatsAppBusinessAccountOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DisassociateWhatsAppBusinessAccountResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::UpdateWhatsAppFlowAssetsRequest &, const Model::UpdateWhatsAppFlowAssetsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateWhatsAppFlowAssetsResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::ListTagsForResourceRequest &, const Model::ListTagsForResourceOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListTagsForResourceResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::CreateWhatsAppMessageTemplateRequest &, const Model::CreateWhatsAppMessageTemplateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateWhatsAppMessageTemplateResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::CreateWhatsAppMessageTemplateFromLibraryRequest &, const Model::CreateWhatsAppMessageTemplateFromLibraryOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> CreateWhatsAppMessageTemplateFromLibraryResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::DeleteWhatsAppMessageMediaRequest &, const Model::DeleteWhatsAppMessageMediaOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> DeleteWhatsAppMessageMediaResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::ListWhatsAppFlowAssetsRequest &, const Model::ListWhatsAppFlowAssetsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListWhatsAppFlowAssetsResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::GetWhatsAppMessageMediaRequest &, const Model::GetWhatsAppMessageMediaOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetWhatsAppMessageMediaResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::PutWhatsAppBusinessAccountEventDestinationsRequest &, const Model::PutWhatsAppBusinessAccountEventDestinationsOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PutWhatsAppBusinessAccountEventDestinationsResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::GetWhatsAppMessageTemplateRequest &, const Model::GetWhatsAppMessageTemplateOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> GetWhatsAppMessageTemplateResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::UpdateWhatsAppFlowRequest &, const Model::UpdateWhatsAppFlowOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> UpdateWhatsAppFlowResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::PostWhatsAppMessageMediaRequest &, const Model::PostWhatsAppMessageMediaOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> PostWhatsAppMessageMediaResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::ListWhatsAppTemplateLibraryRequest &, const Model::ListWhatsAppTemplateLibraryOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> ListWhatsAppTemplateLibraryResponseReceivedHandler
std::function< void(const SocialMessagingClient *, const Model::AssociateWhatsAppBusinessAccountRequest &, const Model::AssociateWhatsAppBusinessAccountOutcome &, const std::shared_ptr< const Aws::Client::AsyncCallerContext > &)> AssociateWhatsAppBusinessAccountResponseReceivedHandler