/** * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. * SPDX-License-Identifier: Apache-2.0. */ #pragma once /* Generic header includes */ #include #include #include #include #include #include #include #include #include /* End of generic header includes */ /* Service model headers required in CleanRoomsClient header */ #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include /* End of service model headers required in CleanRoomsClient header */ namespace Aws { namespace Http { class HttpClient; class HttpClientFactory; } // namespace Http namespace Utils { template< typename R, typename E> class Outcome; namespace Threading { class Executor; } // namespace Threading } // namespace Utils namespace Auth { class AWSCredentials; class AWSCredentialsProvider; } // namespace Auth namespace Client { class RetryStrategy; } // namespace Client namespace CleanRooms { using CleanRoomsClientConfiguration = Aws::Client::GenericClientConfiguration; using CleanRoomsEndpointProviderBase = Aws::CleanRooms::Endpoint::CleanRoomsEndpointProviderBase; using CleanRoomsEndpointProvider = Aws::CleanRooms::Endpoint::CleanRoomsEndpointProvider; namespace Model { /* Service model forward declarations required in CleanRoomsClient header */ class BatchGetSchemaRequest; class CreateCollaborationRequest; class CreateConfiguredTableRequest; class CreateConfiguredTableAnalysisRuleRequest; class CreateConfiguredTableAssociationRequest; class CreateMembershipRequest; class DeleteCollaborationRequest; class DeleteConfiguredTableRequest; class DeleteConfiguredTableAnalysisRuleRequest; class DeleteConfiguredTableAssociationRequest; class DeleteMemberRequest; class DeleteMembershipRequest; class GetCollaborationRequest; class GetConfiguredTableRequest; class GetConfiguredTableAnalysisRuleRequest; class GetConfiguredTableAssociationRequest; class GetMembershipRequest; class GetProtectedQueryRequest; class GetSchemaRequest; class GetSchemaAnalysisRuleRequest; class ListCollaborationsRequest; class ListConfiguredTableAssociationsRequest; class ListConfiguredTablesRequest; class ListMembersRequest; class ListMembershipsRequest; class ListProtectedQueriesRequest; class ListSchemasRequest; class ListTagsForResourceRequest; class StartProtectedQueryRequest; class TagResourceRequest; class UntagResourceRequest; class UpdateCollaborationRequest; class UpdateConfiguredTableRequest; class UpdateConfiguredTableAnalysisRuleRequest; class UpdateConfiguredTableAssociationRequest; class UpdateMembershipRequest; class UpdateProtectedQueryRequest; /* End of service model forward declarations required in CleanRoomsClient header */ /* Service model Outcome class definitions */ typedef Aws::Utils::Outcome BatchGetSchemaOutcome; typedef Aws::Utils::Outcome CreateCollaborationOutcome; typedef Aws::Utils::Outcome CreateConfiguredTableOutcome; typedef Aws::Utils::Outcome CreateConfiguredTableAnalysisRuleOutcome; typedef Aws::Utils::Outcome CreateConfiguredTableAssociationOutcome; typedef Aws::Utils::Outcome CreateMembershipOutcome; typedef Aws::Utils::Outcome DeleteCollaborationOutcome; typedef Aws::Utils::Outcome DeleteConfiguredTableOutcome; typedef Aws::Utils::Outcome DeleteConfiguredTableAnalysisRuleOutcome; typedef Aws::Utils::Outcome DeleteConfiguredTableAssociationOutcome; typedef Aws::Utils::Outcome DeleteMemberOutcome; typedef Aws::Utils::Outcome DeleteMembershipOutcome; typedef Aws::Utils::Outcome GetCollaborationOutcome; typedef Aws::Utils::Outcome GetConfiguredTableOutcome; typedef Aws::Utils::Outcome GetConfiguredTableAnalysisRuleOutcome; typedef Aws::Utils::Outcome GetConfiguredTableAssociationOutcome; typedef Aws::Utils::Outcome GetMembershipOutcome; typedef Aws::Utils::Outcome GetProtectedQueryOutcome; typedef Aws::Utils::Outcome GetSchemaOutcome; typedef Aws::Utils::Outcome GetSchemaAnalysisRuleOutcome; typedef Aws::Utils::Outcome ListCollaborationsOutcome; typedef Aws::Utils::Outcome ListConfiguredTableAssociationsOutcome; typedef Aws::Utils::Outcome ListConfiguredTablesOutcome; typedef Aws::Utils::Outcome ListMembersOutcome; typedef Aws::Utils::Outcome ListMembershipsOutcome; typedef Aws::Utils::Outcome ListProtectedQueriesOutcome; typedef Aws::Utils::Outcome ListSchemasOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome StartProtectedQueryOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateCollaborationOutcome; typedef Aws::Utils::Outcome UpdateConfiguredTableOutcome; typedef Aws::Utils::Outcome UpdateConfiguredTableAnalysisRuleOutcome; typedef Aws::Utils::Outcome UpdateConfiguredTableAssociationOutcome; typedef Aws::Utils::Outcome UpdateMembershipOutcome; typedef Aws::Utils::Outcome UpdateProtectedQueryOutcome; /* End of service model Outcome class definitions */ /* Service model Outcome callable definitions */ typedef std::future BatchGetSchemaOutcomeCallable; typedef std::future CreateCollaborationOutcomeCallable; typedef std::future CreateConfiguredTableOutcomeCallable; typedef std::future CreateConfiguredTableAnalysisRuleOutcomeCallable; typedef std::future CreateConfiguredTableAssociationOutcomeCallable; typedef std::future CreateMembershipOutcomeCallable; typedef std::future DeleteCollaborationOutcomeCallable; typedef std::future DeleteConfiguredTableOutcomeCallable; typedef std::future DeleteConfiguredTableAnalysisRuleOutcomeCallable; typedef std::future DeleteConfiguredTableAssociationOutcomeCallable; typedef std::future DeleteMemberOutcomeCallable; typedef std::future DeleteMembershipOutcomeCallable; typedef std::future GetCollaborationOutcomeCallable; typedef std::future GetConfiguredTableOutcomeCallable; typedef std::future GetConfiguredTableAnalysisRuleOutcomeCallable; typedef std::future GetConfiguredTableAssociationOutcomeCallable; typedef std::future GetMembershipOutcomeCallable; typedef std::future GetProtectedQueryOutcomeCallable; typedef std::future GetSchemaOutcomeCallable; typedef std::future GetSchemaAnalysisRuleOutcomeCallable; typedef std::future ListCollaborationsOutcomeCallable; typedef std::future ListConfiguredTableAssociationsOutcomeCallable; typedef std::future ListConfiguredTablesOutcomeCallable; typedef std::future ListMembersOutcomeCallable; typedef std::future ListMembershipsOutcomeCallable; typedef std::future ListProtectedQueriesOutcomeCallable; typedef std::future ListSchemasOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future StartProtectedQueryOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateCollaborationOutcomeCallable; typedef std::future UpdateConfiguredTableOutcomeCallable; typedef std::future UpdateConfiguredTableAnalysisRuleOutcomeCallable; typedef std::future UpdateConfiguredTableAssociationOutcomeCallable; typedef std::future UpdateMembershipOutcomeCallable; typedef std::future UpdateProtectedQueryOutcomeCallable; /* End of service model Outcome callable definitions */ } // namespace Model class CleanRoomsClient; /* Service model async handlers definitions */ typedef std::function&) > BatchGetSchemaResponseReceivedHandler; typedef std::function&) > CreateCollaborationResponseReceivedHandler; typedef std::function&) > CreateConfiguredTableResponseReceivedHandler; typedef std::function&) > CreateConfiguredTableAnalysisRuleResponseReceivedHandler; typedef std::function&) > CreateConfiguredTableAssociationResponseReceivedHandler; typedef std::function&) > CreateMembershipResponseReceivedHandler; typedef std::function&) > DeleteCollaborationResponseReceivedHandler; typedef std::function&) > DeleteConfiguredTableResponseReceivedHandler; typedef std::function&) > DeleteConfiguredTableAnalysisRuleResponseReceivedHandler; typedef std::function&) > DeleteConfiguredTableAssociationResponseReceivedHandler; typedef std::function&) > DeleteMemberResponseReceivedHandler; typedef std::function&) > DeleteMembershipResponseReceivedHandler; typedef std::function&) > GetCollaborationResponseReceivedHandler; typedef std::function&) > GetConfiguredTableResponseReceivedHandler; typedef std::function&) > GetConfiguredTableAnalysisRuleResponseReceivedHandler; typedef std::function&) > GetConfiguredTableAssociationResponseReceivedHandler; typedef std::function&) > GetMembershipResponseReceivedHandler; typedef std::function&) > GetProtectedQueryResponseReceivedHandler; typedef std::function&) > GetSchemaResponseReceivedHandler; typedef std::function&) > GetSchemaAnalysisRuleResponseReceivedHandler; typedef std::function&) > ListCollaborationsResponseReceivedHandler; typedef std::function&) > ListConfiguredTableAssociationsResponseReceivedHandler; typedef std::function&) > ListConfiguredTablesResponseReceivedHandler; typedef std::function&) > ListMembersResponseReceivedHandler; typedef std::function&) > ListMembershipsResponseReceivedHandler; typedef std::function&) > ListProtectedQueriesResponseReceivedHandler; typedef std::function&) > ListSchemasResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > StartProtectedQueryResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateCollaborationResponseReceivedHandler; typedef std::function&) > UpdateConfiguredTableResponseReceivedHandler; typedef std::function&) > UpdateConfiguredTableAnalysisRuleResponseReceivedHandler; typedef std::function&) > UpdateConfiguredTableAssociationResponseReceivedHandler; typedef std::function&) > UpdateMembershipResponseReceivedHandler; typedef std::function&) > UpdateProtectedQueryResponseReceivedHandler; /* End of service model async handlers definitions */ } // namespace CleanRooms } // namespace Aws