/** * 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 NetworkFirewallClient 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 /* End of service model headers required in NetworkFirewallClient 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 NetworkFirewall { using NetworkFirewallClientConfiguration = Aws::Client::GenericClientConfiguration; using NetworkFirewallEndpointProviderBase = Aws::NetworkFirewall::Endpoint::NetworkFirewallEndpointProviderBase; using NetworkFirewallEndpointProvider = Aws::NetworkFirewall::Endpoint::NetworkFirewallEndpointProvider; namespace Model { /* Service model forward declarations required in NetworkFirewallClient header */ class AssociateFirewallPolicyRequest; class AssociateSubnetsRequest; class CreateFirewallRequest; class CreateFirewallPolicyRequest; class CreateRuleGroupRequest; class CreateTLSInspectionConfigurationRequest; class DeleteFirewallRequest; class DeleteFirewallPolicyRequest; class DeleteResourcePolicyRequest; class DeleteRuleGroupRequest; class DeleteTLSInspectionConfigurationRequest; class DescribeFirewallRequest; class DescribeFirewallPolicyRequest; class DescribeLoggingConfigurationRequest; class DescribeResourcePolicyRequest; class DescribeRuleGroupRequest; class DescribeRuleGroupMetadataRequest; class DescribeTLSInspectionConfigurationRequest; class DisassociateSubnetsRequest; class ListFirewallPoliciesRequest; class ListFirewallsRequest; class ListRuleGroupsRequest; class ListTLSInspectionConfigurationsRequest; class ListTagsForResourceRequest; class PutResourcePolicyRequest; class TagResourceRequest; class UntagResourceRequest; class UpdateFirewallDeleteProtectionRequest; class UpdateFirewallDescriptionRequest; class UpdateFirewallEncryptionConfigurationRequest; class UpdateFirewallPolicyRequest; class UpdateFirewallPolicyChangeProtectionRequest; class UpdateLoggingConfigurationRequest; class UpdateRuleGroupRequest; class UpdateSubnetChangeProtectionRequest; class UpdateTLSInspectionConfigurationRequest; /* End of service model forward declarations required in NetworkFirewallClient header */ /* Service model Outcome class definitions */ typedef Aws::Utils::Outcome AssociateFirewallPolicyOutcome; typedef Aws::Utils::Outcome AssociateSubnetsOutcome; typedef Aws::Utils::Outcome CreateFirewallOutcome; typedef Aws::Utils::Outcome CreateFirewallPolicyOutcome; typedef Aws::Utils::Outcome CreateRuleGroupOutcome; typedef Aws::Utils::Outcome CreateTLSInspectionConfigurationOutcome; typedef Aws::Utils::Outcome DeleteFirewallOutcome; typedef Aws::Utils::Outcome DeleteFirewallPolicyOutcome; typedef Aws::Utils::Outcome DeleteResourcePolicyOutcome; typedef Aws::Utils::Outcome DeleteRuleGroupOutcome; typedef Aws::Utils::Outcome DeleteTLSInspectionConfigurationOutcome; typedef Aws::Utils::Outcome DescribeFirewallOutcome; typedef Aws::Utils::Outcome DescribeFirewallPolicyOutcome; typedef Aws::Utils::Outcome DescribeLoggingConfigurationOutcome; typedef Aws::Utils::Outcome DescribeResourcePolicyOutcome; typedef Aws::Utils::Outcome DescribeRuleGroupOutcome; typedef Aws::Utils::Outcome DescribeRuleGroupMetadataOutcome; typedef Aws::Utils::Outcome DescribeTLSInspectionConfigurationOutcome; typedef Aws::Utils::Outcome DisassociateSubnetsOutcome; typedef Aws::Utils::Outcome ListFirewallPoliciesOutcome; typedef Aws::Utils::Outcome ListFirewallsOutcome; typedef Aws::Utils::Outcome ListRuleGroupsOutcome; typedef Aws::Utils::Outcome ListTLSInspectionConfigurationsOutcome; typedef Aws::Utils::Outcome ListTagsForResourceOutcome; typedef Aws::Utils::Outcome PutResourcePolicyOutcome; typedef Aws::Utils::Outcome TagResourceOutcome; typedef Aws::Utils::Outcome UntagResourceOutcome; typedef Aws::Utils::Outcome UpdateFirewallDeleteProtectionOutcome; typedef Aws::Utils::Outcome UpdateFirewallDescriptionOutcome; typedef Aws::Utils::Outcome UpdateFirewallEncryptionConfigurationOutcome; typedef Aws::Utils::Outcome UpdateFirewallPolicyOutcome; typedef Aws::Utils::Outcome UpdateFirewallPolicyChangeProtectionOutcome; typedef Aws::Utils::Outcome UpdateLoggingConfigurationOutcome; typedef Aws::Utils::Outcome UpdateRuleGroupOutcome; typedef Aws::Utils::Outcome UpdateSubnetChangeProtectionOutcome; typedef Aws::Utils::Outcome UpdateTLSInspectionConfigurationOutcome; /* End of service model Outcome class definitions */ /* Service model Outcome callable definitions */ typedef std::future AssociateFirewallPolicyOutcomeCallable; typedef std::future AssociateSubnetsOutcomeCallable; typedef std::future CreateFirewallOutcomeCallable; typedef std::future CreateFirewallPolicyOutcomeCallable; typedef std::future CreateRuleGroupOutcomeCallable; typedef std::future CreateTLSInspectionConfigurationOutcomeCallable; typedef std::future DeleteFirewallOutcomeCallable; typedef std::future DeleteFirewallPolicyOutcomeCallable; typedef std::future DeleteResourcePolicyOutcomeCallable; typedef std::future DeleteRuleGroupOutcomeCallable; typedef std::future DeleteTLSInspectionConfigurationOutcomeCallable; typedef std::future DescribeFirewallOutcomeCallable; typedef std::future DescribeFirewallPolicyOutcomeCallable; typedef std::future DescribeLoggingConfigurationOutcomeCallable; typedef std::future DescribeResourcePolicyOutcomeCallable; typedef std::future DescribeRuleGroupOutcomeCallable; typedef std::future DescribeRuleGroupMetadataOutcomeCallable; typedef std::future DescribeTLSInspectionConfigurationOutcomeCallable; typedef std::future DisassociateSubnetsOutcomeCallable; typedef std::future ListFirewallPoliciesOutcomeCallable; typedef std::future ListFirewallsOutcomeCallable; typedef std::future ListRuleGroupsOutcomeCallable; typedef std::future ListTLSInspectionConfigurationsOutcomeCallable; typedef std::future ListTagsForResourceOutcomeCallable; typedef std::future PutResourcePolicyOutcomeCallable; typedef std::future TagResourceOutcomeCallable; typedef std::future UntagResourceOutcomeCallable; typedef std::future UpdateFirewallDeleteProtectionOutcomeCallable; typedef std::future UpdateFirewallDescriptionOutcomeCallable; typedef std::future UpdateFirewallEncryptionConfigurationOutcomeCallable; typedef std::future UpdateFirewallPolicyOutcomeCallable; typedef std::future UpdateFirewallPolicyChangeProtectionOutcomeCallable; typedef std::future UpdateLoggingConfigurationOutcomeCallable; typedef std::future UpdateRuleGroupOutcomeCallable; typedef std::future UpdateSubnetChangeProtectionOutcomeCallable; typedef std::future UpdateTLSInspectionConfigurationOutcomeCallable; /* End of service model Outcome callable definitions */ } // namespace Model class NetworkFirewallClient; /* Service model async handlers definitions */ typedef std::function&) > AssociateFirewallPolicyResponseReceivedHandler; typedef std::function&) > AssociateSubnetsResponseReceivedHandler; typedef std::function&) > CreateFirewallResponseReceivedHandler; typedef std::function&) > CreateFirewallPolicyResponseReceivedHandler; typedef std::function&) > CreateRuleGroupResponseReceivedHandler; typedef std::function&) > CreateTLSInspectionConfigurationResponseReceivedHandler; typedef std::function&) > DeleteFirewallResponseReceivedHandler; typedef std::function&) > DeleteFirewallPolicyResponseReceivedHandler; typedef std::function&) > DeleteResourcePolicyResponseReceivedHandler; typedef std::function&) > DeleteRuleGroupResponseReceivedHandler; typedef std::function&) > DeleteTLSInspectionConfigurationResponseReceivedHandler; typedef std::function&) > DescribeFirewallResponseReceivedHandler; typedef std::function&) > DescribeFirewallPolicyResponseReceivedHandler; typedef std::function&) > DescribeLoggingConfigurationResponseReceivedHandler; typedef std::function&) > DescribeResourcePolicyResponseReceivedHandler; typedef std::function&) > DescribeRuleGroupResponseReceivedHandler; typedef std::function&) > DescribeRuleGroupMetadataResponseReceivedHandler; typedef std::function&) > DescribeTLSInspectionConfigurationResponseReceivedHandler; typedef std::function&) > DisassociateSubnetsResponseReceivedHandler; typedef std::function&) > ListFirewallPoliciesResponseReceivedHandler; typedef std::function&) > ListFirewallsResponseReceivedHandler; typedef std::function&) > ListRuleGroupsResponseReceivedHandler; typedef std::function&) > ListTLSInspectionConfigurationsResponseReceivedHandler; typedef std::function&) > ListTagsForResourceResponseReceivedHandler; typedef std::function&) > PutResourcePolicyResponseReceivedHandler; typedef std::function&) > TagResourceResponseReceivedHandler; typedef std::function&) > UntagResourceResponseReceivedHandler; typedef std::function&) > UpdateFirewallDeleteProtectionResponseReceivedHandler; typedef std::function&) > UpdateFirewallDescriptionResponseReceivedHandler; typedef std::function&) > UpdateFirewallEncryptionConfigurationResponseReceivedHandler; typedef std::function&) > UpdateFirewallPolicyResponseReceivedHandler; typedef std::function&) > UpdateFirewallPolicyChangeProtectionResponseReceivedHandler; typedef std::function&) > UpdateLoggingConfigurationResponseReceivedHandler; typedef std::function&) > UpdateRuleGroupResponseReceivedHandler; typedef std::function&) > UpdateSubnetChangeProtectionResponseReceivedHandler; typedef std::function&) > UpdateTLSInspectionConfigurationResponseReceivedHandler; /* End of service model async handlers definitions */ } // namespace NetworkFirewall } // namespace Aws