/** * 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 SSOAdminClient 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 SSOAdminClient 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 SSOAdmin { using SSOAdminClientConfiguration = Aws::Client::GenericClientConfiguration; using SSOAdminEndpointProviderBase = Aws::SSOAdmin::Endpoint::SSOAdminEndpointProviderBase; using SSOAdminEndpointProvider = Aws::SSOAdmin::Endpoint::SSOAdminEndpointProvider; namespace Model { /* Service model forward declarations required in SSOAdminClient header */ class AttachCustomerManagedPolicyReferenceToPermissionSetRequest; class AttachManagedPolicyToPermissionSetRequest; class CreateAccountAssignmentRequest; class CreateInstanceAccessControlAttributeConfigurationRequest; class CreatePermissionSetRequest; class DeleteAccountAssignmentRequest; class DeleteInlinePolicyFromPermissionSetRequest; class DeleteInstanceAccessControlAttributeConfigurationRequest; class DeletePermissionSetRequest; class DeletePermissionsBoundaryFromPermissionSetRequest; class DescribeAccountAssignmentCreationStatusRequest; class DescribeAccountAssignmentDeletionStatusRequest; class DescribeInstanceAccessControlAttributeConfigurationRequest; class DescribePermissionSetRequest; class DescribePermissionSetProvisioningStatusRequest; class DetachCustomerManagedPolicyReferenceFromPermissionSetRequest; class DetachManagedPolicyFromPermissionSetRequest; class GetInlinePolicyForPermissionSetRequest; class GetPermissionsBoundaryForPermissionSetRequest; class ListAccountAssignmentCreationStatusRequest; class ListAccountAssignmentDeletionStatusRequest; class ListAccountAssignmentsRequest; class ListAccountsForProvisionedPermissionSetRequest; class ListCustomerManagedPolicyReferencesInPermissionSetRequest; class ListInstancesRequest; class ListManagedPoliciesInPermissionSetRequest; class ListPermissionSetProvisioningStatusRequest; class ListPermissionSetsRequest; class ListPermissionSetsProvisionedToAccountRequest; class ListTagsForResourceRequest; class ProvisionPermissionSetRequest; class PutInlinePolicyToPermissionSetRequest; class PutPermissionsBoundaryToPermissionSetRequest; class TagResourceRequest; class UntagResourceRequest; class UpdateInstanceAccessControlAttributeConfigurationRequest; class UpdatePermissionSetRequest; /* End of service model forward declarations required in SSOAdminClient header */ /* Service model Outcome class definitions */ typedef Aws::Utils::Outcome AttachCustomerManagedPolicyReferenceToPermissionSetOutcome; typedef Aws::Utils::Outcome AttachManagedPolicyToPermissionSetOutcome; typedef Aws::Utils::Outcome CreateAccountAssignmentOutcome; typedef Aws::Utils::Outcome CreateInstanceAccessControlAttributeConfigurationOutcome; typedef Aws::Utils::Outcome CreatePermissionSetOutcome; typedef Aws::Utils::Outcome DeleteAccountAssignmentOutcome; typedef Aws::Utils::Outcome DeleteInlinePolicyFromPermissionSetOutcome; typedef Aws::Utils::Outcome DeleteInstanceAccessControlAttributeConfigurationOutcome; typedef Aws::Utils::Outcome DeletePermissionSetOutcome; typedef Aws::Utils::Outcome DeletePermissionsBoundaryFromPermissionSetOutcome; typedef Aws::Utils::Outcome DescribeAccountAssignmentCreationStatusOutcome; typedef Aws::Utils::Outcome DescribeAccountAssignmentDeletionStatusOutcome; typedef Aws::Utils::Outcome DescribeInstanceAccessControlAttributeConfigurationOutcome; typedef Aws::Utils::Outcome DescribePermissionSetOutcome; typedef Aws::Utils::Outcome DescribePermissionSetProvisioningStatusOutcome; typedef Aws::Utils::Outcome DetachCustomerManagedPolicyReferenceFromPermissionSetOutcome; typedef Aws::Utils::Outcome DetachManagedPolicyFromPermissionSetOutcome; typedef Aws::Utils::Outcome GetInlinePolicyForPermissionSetOutcome; typedef Aws::Utils::Outcome GetPermissionsBoundaryForPermissionSetOutcome; typedef Aws::Utils::Outcome ListAccountAssignmentCreationStatusOutcome; typedef Aws::Utils::Outcome ListAccountAssignmentDeletionStatusOutcome; typedef Aws::Utils::Outcome ListAccountAssignmentsOutcome; typedef Aws::Utils::Outcome ListAccountsForProvisionedPermissionSetOutcome; typedef Aws::Utils::Outcome ListCustomerManagedPolicyReferencesInPermissionSetOutcome; typedef Aws::Utils::Outcome ListInstancesOutcome; typedef Aws::Utils::Outcome ListManagedPoliciesInPermissionSetOutcome; typedef Aws::Utils::Outcome ListPermissionSetProvisioningStatusOutcome; typedef Aws::Utils::Outcome ListPermissionSetsOutcome; typedef Aws::Utils::Outcome ListPermissionSetsProvisionedToAccountOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome ProvisionPermissionSetOutcome; typedef Aws::Utils::Outcome PutInlinePolicyToPermissionSetOutcome; typedef Aws::Utils::Outcome PutPermissionsBoundaryToPermissionSetOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateInstanceAccessControlAttributeConfigurationOutcome; typedef Aws::Utils::Outcome UpdatePermissionSetOutcome; /* End of service model Outcome class definitions */ /* Service model Outcome callable definitions */ typedef std::future AttachCustomerManagedPolicyReferenceToPermissionSetOutcomeCallable; typedef std::future AttachManagedPolicyToPermissionSetOutcomeCallable; typedef std::future CreateAccountAssignmentOutcomeCallable; typedef std::future CreateInstanceAccessControlAttributeConfigurationOutcomeCallable; typedef std::future CreatePermissionSetOutcomeCallable; typedef std::future DeleteAccountAssignmentOutcomeCallable; typedef std::future DeleteInlinePolicyFromPermissionSetOutcomeCallable; typedef std::future DeleteInstanceAccessControlAttributeConfigurationOutcomeCallable; typedef std::future DeletePermissionSetOutcomeCallable; typedef std::future DeletePermissionsBoundaryFromPermissionSetOutcomeCallable; typedef std::future DescribeAccountAssignmentCreationStatusOutcomeCallable; typedef std::future DescribeAccountAssignmentDeletionStatusOutcomeCallable; typedef std::future DescribeInstanceAccessControlAttributeConfigurationOutcomeCallable; typedef std::future DescribePermissionSetOutcomeCallable; typedef std::future DescribePermissionSetProvisioningStatusOutcomeCallable; typedef std::future DetachCustomerManagedPolicyReferenceFromPermissionSetOutcomeCallable; typedef std::future DetachManagedPolicyFromPermissionSetOutcomeCallable; typedef std::future GetInlinePolicyForPermissionSetOutcomeCallable; typedef std::future GetPermissionsBoundaryForPermissionSetOutcomeCallable; typedef std::future ListAccountAssignmentCreationStatusOutcomeCallable; typedef std::future ListAccountAssignmentDeletionStatusOutcomeCallable; typedef std::future ListAccountAssignmentsOutcomeCallable; typedef std::future ListAccountsForProvisionedPermissionSetOutcomeCallable; typedef std::future ListCustomerManagedPolicyReferencesInPermissionSetOutcomeCallable; typedef std::future ListInstancesOutcomeCallable; typedef std::future ListManagedPoliciesInPermissionSetOutcomeCallable; typedef std::future ListPermissionSetProvisioningStatusOutcomeCallable; typedef std::future ListPermissionSetsOutcomeCallable; typedef std::future ListPermissionSetsProvisionedToAccountOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future ProvisionPermissionSetOutcomeCallable; typedef std::future PutInlinePolicyToPermissionSetOutcomeCallable; typedef std::future PutPermissionsBoundaryToPermissionSetOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateInstanceAccessControlAttributeConfigurationOutcomeCallable; typedef std::future UpdatePermissionSetOutcomeCallable; /* End of service model Outcome callable definitions */ } // namespace Model class SSOAdminClient; /* Service model async handlers definitions */ typedef std::function&) > AttachCustomerManagedPolicyReferenceToPermissionSetResponseReceivedHandler; typedef std::function&) > AttachManagedPolicyToPermissionSetResponseReceivedHandler; typedef std::function&) > CreateAccountAssignmentResponseReceivedHandler; typedef std::function&) > CreateInstanceAccessControlAttributeConfigurationResponseReceivedHandler; typedef std::function&) > CreatePermissionSetResponseReceivedHandler; typedef std::function&) > DeleteAccountAssignmentResponseReceivedHandler; typedef std::function&) > DeleteInlinePolicyFromPermissionSetResponseReceivedHandler; typedef std::function&) > DeleteInstanceAccessControlAttributeConfigurationResponseReceivedHandler; typedef std::function&) > DeletePermissionSetResponseReceivedHandler; typedef std::function&) > DeletePermissionsBoundaryFromPermissionSetResponseReceivedHandler; typedef std::function&) > DescribeAccountAssignmentCreationStatusResponseReceivedHandler; typedef std::function&) > DescribeAccountAssignmentDeletionStatusResponseReceivedHandler; typedef std::function&) > DescribeInstanceAccessControlAttributeConfigurationResponseReceivedHandler; typedef std::function&) > DescribePermissionSetResponseReceivedHandler; typedef std::function&) > DescribePermissionSetProvisioningStatusResponseReceivedHandler; typedef std::function&) > DetachCustomerManagedPolicyReferenceFromPermissionSetResponseReceivedHandler; typedef std::function&) > DetachManagedPolicyFromPermissionSetResponseReceivedHandler; typedef std::function&) > GetInlinePolicyForPermissionSetResponseReceivedHandler; typedef std::function&) > GetPermissionsBoundaryForPermissionSetResponseReceivedHandler; typedef std::function&) > ListAccountAssignmentCreationStatusResponseReceivedHandler; typedef std::function&) > ListAccountAssignmentDeletionStatusResponseReceivedHandler; typedef std::function&) > ListAccountAssignmentsResponseReceivedHandler; typedef std::function&) > ListAccountsForProvisionedPermissionSetResponseReceivedHandler; typedef std::function&) > ListCustomerManagedPolicyReferencesInPermissionSetResponseReceivedHandler; typedef std::function&) > ListInstancesResponseReceivedHandler; typedef std::function&) > ListManagedPoliciesInPermissionSetResponseReceivedHandler; typedef std::function&) > ListPermissionSetProvisioningStatusResponseReceivedHandler; typedef std::function&) > ListPermissionSetsResponseReceivedHandler; typedef std::function&) > ListPermissionSetsProvisionedToAccountResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > ProvisionPermissionSetResponseReceivedHandler; typedef std::function&) > PutInlinePolicyToPermissionSetResponseReceivedHandler; typedef std::function&) > PutPermissionsBoundaryToPermissionSetResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateInstanceAccessControlAttributeConfigurationResponseReceivedHandler; typedef std::function&) > UpdatePermissionSetResponseReceivedHandler; /* End of service model async handlers definitions */ } // namespace SSOAdmin } // namespace Aws