Module: Aws::WAFV2::ClientApi Private

Includes:
Seahorse::Model
Defined in:
lib/aws-sdk-wafv2/client_api.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Constant Summary collapse

APIKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'APIKey')
APIKeySummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'APIKeySummaries')
APIKeySummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'APIKeySummary')
APIKeyTokenDomains =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'APIKeyTokenDomains')
APIKeyVersion =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'APIKeyVersion')
AWSManagedRulesACFPRuleSet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AWSManagedRulesACFPRuleSet')
AWSManagedRulesATPRuleSet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AWSManagedRulesATPRuleSet')
AWSManagedRulesBotControlRuleSet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AWSManagedRulesBotControlRuleSet')
Action =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Action')
ActionCondition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ActionCondition')
ActionValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ActionValue')
AddressField =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AddressField')
AddressFields =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'AddressFields')
All =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'All')
AllQueryArguments =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AllQueryArguments')
AllowAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AllowAction')
AndStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AndStatement')
AssociateWebACLRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssociateWebACLRequest')
AssociateWebACLResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssociateWebACLResponse')
AssociatedResourceType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'AssociatedResourceType')
AssociationConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'AssociationConfig')
BlockAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'BlockAction')
Body =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Body')
BodyParsingFallbackBehavior =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'BodyParsingFallbackBehavior')
Boolean =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BooleanShape.new(name: 'Boolean')
ByteMatchStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ByteMatchStatement')
CapacityUnit =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'CapacityUnit')
CaptchaAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CaptchaAction')
CaptchaConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CaptchaConfig')
CaptchaResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CaptchaResponse')
ChallengeAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ChallengeAction')
ChallengeConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ChallengeConfig')
ChallengeResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ChallengeResponse')
CheckCapacityRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CheckCapacityRequest')
CheckCapacityResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CheckCapacityResponse')
ComparisonOperator =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ComparisonOperator')
Condition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Condition')
Conditions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Conditions')
ConsumedCapacity =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ConsumedCapacity')
CookieMatchPattern =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CookieMatchPattern')
CookieNames =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'CookieNames')
Cookies =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Cookies')
CountAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CountAction')
Country =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Country')
CountryCode =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'CountryCode')
CountryCodes =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'CountryCodes')
CreateAPIKeyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateAPIKeyRequest')
CreateAPIKeyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateAPIKeyResponse')
CreateIPSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateIPSetRequest')
CreateIPSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateIPSetResponse')
CreateRegexPatternSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRegexPatternSetRequest')
CreateRegexPatternSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRegexPatternSetResponse')
CreateRuleGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRuleGroupRequest')
CreateRuleGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateRuleGroupResponse')
CreateWebACLRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateWebACLRequest')
CreateWebACLResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CreateWebACLResponse')
CreationPathString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'CreationPathString')
CustomHTTPHeader =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CustomHTTPHeader')
CustomHTTPHeaderName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'CustomHTTPHeaderName')
CustomHTTPHeaderValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'CustomHTTPHeaderValue')
CustomHTTPHeaders =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'CustomHTTPHeaders')
CustomRequestHandling =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CustomRequestHandling')
CustomResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CustomResponse')
CustomResponseBodies =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'CustomResponseBodies')
CustomResponseBody =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'CustomResponseBody')
DefaultAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DefaultAction')
DeleteAPIKeyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAPIKeyRequest')
DeleteAPIKeyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteAPIKeyResponse')
DeleteFirewallManagerRuleGroupsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteFirewallManagerRuleGroupsRequest')
DeleteFirewallManagerRuleGroupsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteFirewallManagerRuleGroupsResponse')
DeleteIPSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteIPSetRequest')
DeleteIPSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteIPSetResponse')
DeleteLoggingConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteLoggingConfigurationRequest')
DeleteLoggingConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteLoggingConfigurationResponse')
DeletePermissionPolicyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeletePermissionPolicyRequest')
DeletePermissionPolicyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeletePermissionPolicyResponse')
DeleteRegexPatternSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRegexPatternSetRequest')
DeleteRegexPatternSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRegexPatternSetResponse')
DeleteRuleGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRuleGroupRequest')
DeleteRuleGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteRuleGroupResponse')
DeleteWebACLRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteWebACLRequest')
DeleteWebACLResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DeleteWebACLResponse')
DescribeAllManagedProductsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeAllManagedProductsRequest')
DescribeAllManagedProductsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeAllManagedProductsResponse')
DescribeManagedProductsByVendorRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeManagedProductsByVendorRequest')
DescribeManagedProductsByVendorResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeManagedProductsByVendorResponse')
DescribeManagedRuleGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeManagedRuleGroupRequest')
DescribeManagedRuleGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DescribeManagedRuleGroupResponse')
DisassociateWebACLRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DisassociateWebACLRequest')
DisassociateWebACLResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'DisassociateWebACLResponse')
DownloadUrl =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'DownloadUrl')
EmailField =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'EmailField')
EnableMachineLearning =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BooleanShape.new(name: 'EnableMachineLearning')
EntityDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'EntityDescription')
EntityId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'EntityId')
EntityName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'EntityName')
ErrorMessage =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ErrorMessage')
ErrorReason =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ErrorReason')
EvaluationWindowSec =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'EvaluationWindowSec')
ExcludedRule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ExcludedRule')
ExcludedRules =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ExcludedRules')
FailureCode =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'FailureCode')
FailureReason =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FailureReason')
FailureValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FailureValue')
FallbackBehavior =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FallbackBehavior')
FieldIdentifier =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FieldIdentifier')
FieldToMatch =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'FieldToMatch')
FieldToMatchData =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FieldToMatchData')
Filter =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Filter')
FilterBehavior =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FilterBehavior')
FilterRequirement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'FilterRequirement')
Filters =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Filters')
FirewallManagerRuleGroup =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'FirewallManagerRuleGroup')
FirewallManagerRuleGroups =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'FirewallManagerRuleGroups')
FirewallManagerStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'FirewallManagerStatement')
ForwardedIPConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ForwardedIPConfig')
ForwardedIPHeaderName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ForwardedIPHeaderName')
ForwardedIPPosition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ForwardedIPPosition')
GenerateMobileSdkReleaseUrlRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GenerateMobileSdkReleaseUrlRequest')
GenerateMobileSdkReleaseUrlResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GenerateMobileSdkReleaseUrlResponse')
GeoMatchStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GeoMatchStatement')
GetDecryptedAPIKeyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetDecryptedAPIKeyRequest')
GetDecryptedAPIKeyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetDecryptedAPIKeyResponse')
GetIPSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetIPSetRequest')
GetIPSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetIPSetResponse')
GetLoggingConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetLoggingConfigurationRequest')
GetLoggingConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetLoggingConfigurationResponse')
GetManagedRuleSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetManagedRuleSetRequest')
GetManagedRuleSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetManagedRuleSetResponse')
GetMobileSdkReleaseRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMobileSdkReleaseRequest')
GetMobileSdkReleaseResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetMobileSdkReleaseResponse')
GetPermissionPolicyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetPermissionPolicyRequest')
GetPermissionPolicyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetPermissionPolicyResponse')
GetRateBasedStatementManagedKeysRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRateBasedStatementManagedKeysRequest')
GetRateBasedStatementManagedKeysResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRateBasedStatementManagedKeysResponse')
GetRegexPatternSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRegexPatternSetRequest')
GetRegexPatternSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRegexPatternSetResponse')
GetRuleGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRuleGroupRequest')
GetRuleGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetRuleGroupResponse')
GetSampledRequestsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSampledRequestsRequest')
GetSampledRequestsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetSampledRequestsResponse')
GetWebACLForResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetWebACLForResourceRequest')
GetWebACLForResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetWebACLForResourceResponse')
GetWebACLRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetWebACLRequest')
GetWebACLResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'GetWebACLResponse')
HTTPHeader =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'HTTPHeader')
HTTPHeaders =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'HTTPHeaders')
HTTPMethod =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'HTTPMethod')
HTTPRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'HTTPRequest')
HTTPVersion =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'HTTPVersion')
HeaderMatchPattern =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'HeaderMatchPattern')
HeaderName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'HeaderName')
HeaderNames =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'HeaderNames')
HeaderOrder =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'HeaderOrder')
HeaderValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'HeaderValue')
Headers =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Headers')
IPAddress =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IPAddress')
IPAddressVersion =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IPAddressVersion')
IPAddresses =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'IPAddresses')
IPSet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'IPSet')
IPSetForwardedIPConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'IPSetForwardedIPConfig')
IPSetReferenceStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'IPSetReferenceStatement')
IPSetSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'IPSetSummaries')
IPSetSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'IPSetSummary')
IPString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'IPString')
ImmunityTimeProperty =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ImmunityTimeProperty')
InspectionLevel =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'InspectionLevel')
JA3Fingerprint =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JA3Fingerprint')
JsonBody =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JsonBody')
JsonMatchPattern =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'JsonMatchPattern')
JsonMatchScope =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'JsonMatchScope')
JsonPointerPath =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'JsonPointerPath')
JsonPointerPaths =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'JsonPointerPaths')
Label =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Label')
LabelMatchKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LabelMatchKey')
LabelMatchScope =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LabelMatchScope')
LabelMatchStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LabelMatchStatement')
LabelName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LabelName')
LabelNameCondition =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LabelNameCondition')
LabelNamespace =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LabelNamespace')
LabelSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'LabelSummaries')
LabelSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LabelSummary')
Labels =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Labels')
ListAPIKeysRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAPIKeysRequest')
ListAPIKeysResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAPIKeysResponse')
ListAvailableManagedRuleGroupVersionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailableManagedRuleGroupVersionsRequest')
ListAvailableManagedRuleGroupVersionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailableManagedRuleGroupVersionsResponse')
ListAvailableManagedRuleGroupsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailableManagedRuleGroupsRequest')
ListAvailableManagedRuleGroupsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListAvailableManagedRuleGroupsResponse')
ListIPSetsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListIPSetsRequest')
ListIPSetsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListIPSetsResponse')
ListLoggingConfigurationsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListLoggingConfigurationsRequest')
ListLoggingConfigurationsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListLoggingConfigurationsResponse')
ListManagedRuleSetsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListManagedRuleSetsRequest')
ListManagedRuleSetsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListManagedRuleSetsResponse')
ListMaxItems =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ListMaxItems')
ListMobileSdkReleasesRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMobileSdkReleasesRequest')
ListMobileSdkReleasesResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListMobileSdkReleasesResponse')
ListRegexPatternSetsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRegexPatternSetsRequest')
ListRegexPatternSetsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRegexPatternSetsResponse')
ListResourcesForWebACLRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListResourcesForWebACLRequest')
ListResourcesForWebACLResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListResourcesForWebACLResponse')
ListRuleGroupsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRuleGroupsRequest')
ListRuleGroupsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListRuleGroupsResponse')
ListTagsForResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceRequest')
ListTagsForResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListTagsForResourceResponse')
ListWebACLsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListWebACLsRequest')
ListWebACLsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ListWebACLsResponse')
LockToken =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LockToken')
LogDestinationConfigs =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'LogDestinationConfigs')
LogScope =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LogScope')
LogType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LogType')
LoggingConfiguration =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LoggingConfiguration')
LoggingConfigurations =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'LoggingConfigurations')
LoggingFilter =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'LoggingFilter')
LoginPathString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'LoginPathString')
ManagedProductDescriptor =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ManagedProductDescriptor')
ManagedProductDescriptors =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ManagedProductDescriptors')
ManagedRuleGroupConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ManagedRuleGroupConfig')
ManagedRuleGroupConfigs =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ManagedRuleGroupConfigs')
ManagedRuleGroupStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ManagedRuleGroupStatement')
ManagedRuleGroupSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ManagedRuleGroupSummaries')
ManagedRuleGroupSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ManagedRuleGroupSummary')
ManagedRuleGroupVersion =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ManagedRuleGroupVersion')
ManagedRuleGroupVersions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ManagedRuleGroupVersions')
ManagedRuleSet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ManagedRuleSet')
ManagedRuleSetSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ManagedRuleSetSummaries')
ManagedRuleSetSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ManagedRuleSetSummary')
ManagedRuleSetVersion =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ManagedRuleSetVersion')
MapMatchScope =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MapMatchScope')
Method =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Method')
MetricName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'MetricName')
MobileSdkRelease =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'MobileSdkRelease')
NextMarker =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'NextMarker')
NoneAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'NoneAction')
NotStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'NotStatement')
OrStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'OrStatement')
OutputUrl =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'OutputUrl')
OverrideAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'OverrideAction')
OversizeHandling =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'OversizeHandling')
PaginationLimit =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'PaginationLimit')
ParameterExceptionField =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ParameterExceptionField')
ParameterExceptionParameter =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ParameterExceptionParameter')
PasswordField =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PasswordField')
PayloadType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'PayloadType')
PhoneNumberField =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PhoneNumberField')
PhoneNumberFields =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'PhoneNumberFields')
Platform =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Platform')
PolicyString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'PolicyString')
PopulationSize =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'PopulationSize')
PositionalConstraint =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'PositionalConstraint')
ProductDescription =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ProductDescription')
ProductId =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ProductId')
Shapes::StringShape.new(name: 'ProductLink')
ProductTitle =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ProductTitle')
PublishedVersions =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'PublishedVersions')
PutLoggingConfigurationRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutLoggingConfigurationRequest')
PutLoggingConfigurationResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutLoggingConfigurationResponse')
PutManagedRuleSetVersionsRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutManagedRuleSetVersionsRequest')
PutManagedRuleSetVersionsResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutManagedRuleSetVersionsResponse')
PutPermissionPolicyRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutPermissionPolicyRequest')
PutPermissionPolicyResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'PutPermissionPolicyResponse')
QueryString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'QueryString')
RateBasedStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateBasedStatement')
RateBasedStatementAggregateKeyType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RateBasedStatementAggregateKeyType')
RateBasedStatementCustomKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateBasedStatementCustomKey')
RateBasedStatementCustomKeys =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RateBasedStatementCustomKeys')
RateBasedStatementManagedKeysIPSet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateBasedStatementManagedKeysIPSet')
RateLimit =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'RateLimit')
RateLimitCookie =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitCookie')
RateLimitForwardedIP =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitForwardedIP')
RateLimitHTTPMethod =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitHTTPMethod')
RateLimitHeader =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitHeader')
RateLimitIP =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitIP')
RateLimitLabelNamespace =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitLabelNamespace')
RateLimitQueryArgument =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitQueryArgument')
RateLimitQueryString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitQueryString')
RateLimitUriPath =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RateLimitUriPath')
RedactedFields =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RedactedFields')
Regex =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Regex')
RegexMatchStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RegexMatchStatement')
RegexPatternSet =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RegexPatternSet')
RegexPatternSetReferenceStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RegexPatternSetReferenceStatement')
RegexPatternSetSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RegexPatternSetSummaries')
RegexPatternSetSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RegexPatternSetSummary')
RegexPatternString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RegexPatternString')
RegistrationPagePathString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'RegistrationPagePathString')
RegularExpressionList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RegularExpressionList')
ReleaseNotes =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ReleaseNotes')
ReleaseSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ReleaseSummaries')
ReleaseSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ReleaseSummary')
RequestBody =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'RequestBody')
RequestBodyAssociatedResourceTypeConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RequestBodyAssociatedResourceTypeConfig')
RequestInspection =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RequestInspection')
RequestInspectionACFP =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RequestInspectionACFP')
ResourceArn =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResourceArn')
ResourceArns =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResourceArns')
ResourceType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResourceType')
ResponseCode =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ResponseCode')
ResponseContent =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResponseContent')
ResponseContentType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResponseContentType')
ResponseInspection =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResponseInspection')
ResponseInspectionBodyContains =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResponseInspectionBodyContains')
ResponseInspectionBodyContainsFailureStrings =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseInspectionBodyContainsFailureStrings')
ResponseInspectionBodyContainsSuccessStrings =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseInspectionBodyContainsSuccessStrings')
ResponseInspectionHeader =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResponseInspectionHeader')
ResponseInspectionHeaderFailureValues =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseInspectionHeaderFailureValues')
ResponseInspectionHeaderName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'ResponseInspectionHeaderName')
ResponseInspectionHeaderSuccessValues =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseInspectionHeaderSuccessValues')
ResponseInspectionJson =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResponseInspectionJson')
ResponseInspectionJsonFailureValues =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseInspectionJsonFailureValues')
ResponseInspectionJsonSuccessValues =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseInspectionJsonSuccessValues')
ResponseInspectionStatusCode =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'ResponseInspectionStatusCode')
ResponseInspectionStatusCodeFailureCodes =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseInspectionStatusCodeFailureCodes')
ResponseInspectionStatusCodeSuccessCodes =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'ResponseInspectionStatusCodeSuccessCodes')
ResponseStatusCode =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'ResponseStatusCode')
Rule =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Rule')
RuleAction =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RuleAction')
RuleActionOverride =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RuleActionOverride')
RuleActionOverrides =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RuleActionOverrides')
RuleGroup =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RuleGroup')
RuleGroupReferenceStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RuleGroupReferenceStatement')
RuleGroupSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RuleGroupSummaries')
RuleGroupSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RuleGroupSummary')
RulePriority =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'RulePriority')
RuleSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'RuleSummaries')
RuleSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'RuleSummary')
Rules =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Rules')
SampleWeight =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'SampleWeight')
SampledHTTPRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SampledHTTPRequest')
SampledHTTPRequests =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'SampledHTTPRequests')
Scope =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'Scope')
SearchString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::BlobShape.new(name: 'SearchString')
SensitivityLevel =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SensitivityLevel')
SingleCookieName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SingleCookieName')
SingleHeader =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SingleHeader')
SingleQueryArgument =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SingleQueryArgument')
Size =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'Size')
SizeConstraintStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SizeConstraintStatement')
SizeInspectionLimit =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SizeInspectionLimit')
SolveTimestamp =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'SolveTimestamp')
SourceType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SourceType')
SqliMatchStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'SqliMatchStatement')
Statement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Statement')
Statements =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'Statements')
String =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'String')
SuccessCode =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'SuccessCode')
SuccessValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'SuccessValue')
Tag =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'Tag')
TagInfoForResource =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagInfoForResource')
TagKey =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagKey')
TagKeyList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TagKeyList')
TagList =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TagList')
TagResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceRequest')
TagResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TagResourceResponse')
TagValue =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TagValue')
TextTransformation =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TextTransformation')
TextTransformationPriority =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'TextTransformationPriority')
TextTransformationType =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TextTransformationType')
TextTransformations =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TextTransformations')
TimeWindow =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'TimeWindow')
TimeWindowDay =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'TimeWindowDay')
TimeWindowSecond =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::IntegerShape.new(name: 'TimeWindowSecond')
Timestamp =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::TimestampShape.new(name: 'Timestamp')
TokenDomain =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'TokenDomain')
TokenDomains =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'TokenDomains')
URIString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'URIString')
UntagResourceRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceRequest')
UntagResourceResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UntagResourceResponse')
UpdateIPSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateIPSetRequest')
UpdateIPSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateIPSetResponse')
UpdateManagedRuleSetVersionExpiryDateRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateManagedRuleSetVersionExpiryDateRequest')
UpdateManagedRuleSetVersionExpiryDateResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateManagedRuleSetVersionExpiryDateResponse')
UpdateRegexPatternSetRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRegexPatternSetRequest')
UpdateRegexPatternSetResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRegexPatternSetResponse')
UpdateRuleGroupRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRuleGroupRequest')
UpdateRuleGroupResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateRuleGroupResponse')
UpdateWebACLRequest =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateWebACLRequest')
UpdateWebACLResponse =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UpdateWebACLResponse')
UriPath =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UriPath')
UsernameField =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'UsernameField')
VendorName =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'VendorName')
VersionKeyString =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StringShape.new(name: 'VersionKeyString')
VersionToPublish =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VersionToPublish')
VersionsToPublish =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::MapShape.new(name: 'VersionsToPublish')
VisibilityConfig =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'VisibilityConfig')
WAFAssociatedItemException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFAssociatedItemException')
WAFConfigurationWarningException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFConfigurationWarningException')
WAFDuplicateItemException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFDuplicateItemException')
WAFExpiredManagedRuleGroupVersionException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFExpiredManagedRuleGroupVersionException')
WAFInternalErrorException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFInternalErrorException')
WAFInvalidOperationException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFInvalidOperationException')
WAFInvalidParameterException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFInvalidParameterException')
WAFInvalidPermissionPolicyException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFInvalidPermissionPolicyException')
WAFInvalidResourceException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFInvalidResourceException')
WAFLimitsExceededException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFLimitsExceededException')
WAFLogDestinationPermissionIssueException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFLogDestinationPermissionIssueException')
WAFNonexistentItemException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFNonexistentItemException')
WAFOptimisticLockException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFOptimisticLockException')
WAFServiceLinkedRoleErrorException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFServiceLinkedRoleErrorException')
WAFSubscriptionNotFoundException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFSubscriptionNotFoundException')
WAFTagOperationException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFTagOperationException')
WAFTagOperationInternalErrorException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFTagOperationInternalErrorException')
WAFUnavailableEntityException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFUnavailableEntityException')
WAFUnsupportedAggregateKeyTypeException =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WAFUnsupportedAggregateKeyTypeException')
WebACL =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WebACL')
WebACLSummaries =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::ListShape.new(name: 'WebACLSummaries')
WebACLSummary =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'WebACLSummary')
XssMatchStatement =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Shapes::StructureShape.new(name: 'XssMatchStatement')
API =

This constant is part of a private API. You should avoid using this constant if possible, as it may be removed or be changed in the future.

Seahorse::Model::Api.new.tap do |api|

  api.version = "2019-07-29"

  api. = {
    "apiVersion" => "2019-07-29",
    "auth" => ["aws.auth#sigv4"],
    "endpointPrefix" => "wafv2",
    "jsonVersion" => "1.1",
    "protocol" => "json",
    "protocols" => ["json"],
    "serviceAbbreviation" => "WAFV2",
    "serviceFullName" => "AWS WAFV2",
    "serviceId" => "WAFV2",
    "signatureVersion" => "v4",
    "targetPrefix" => "AWSWAF_20190729",
    "uid" => "wafv2-2019-07-29",
  }

  api.add_operation(:associate_web_acl, Seahorse::Model::Operation.new.tap do |o|
    o.name = "AssociateWebACL"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: AssociateWebACLRequest)
    o.output = Shapes::ShapeRef.new(shape: AssociateWebACLResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFUnavailableEntityException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:check_capacity, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CheckCapacity"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CheckCapacityRequest)
    o.output = Shapes::ShapeRef.new(shape: CheckCapacityResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidResourceException)
    o.errors << Shapes::ShapeRef.new(shape: WAFUnavailableEntityException)
    o.errors << Shapes::ShapeRef.new(shape: WAFSubscriptionNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: WAFExpiredManagedRuleGroupVersionException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:create_api_key, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateAPIKey"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateAPIKeyRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateAPIKeyResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
  end)

  api.add_operation(:create_ip_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateIPSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateIPSetRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateIPSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFDuplicateItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:create_regex_pattern_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateRegexPatternSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateRegexPatternSetRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateRegexPatternSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFDuplicateItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:create_rule_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateRuleGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateRuleGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateRuleGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFDuplicateItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFUnavailableEntityException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFSubscriptionNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:create_web_acl, Seahorse::Model::Operation.new.tap do |o|
    o.name = "CreateWebACL"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: CreateWebACLRequest)
    o.output = Shapes::ShapeRef.new(shape: CreateWebACLResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFDuplicateItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidResourceException)
    o.errors << Shapes::ShapeRef.new(shape: WAFUnavailableEntityException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFSubscriptionNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFConfigurationWarningException)
    o.errors << Shapes::ShapeRef.new(shape: WAFExpiredManagedRuleGroupVersionException)
  end)

  api.add_operation(:delete_api_key, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteAPIKey"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteAPIKeyRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteAPIKeyResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:delete_firewall_manager_rule_groups, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteFirewallManagerRuleGroups"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteFirewallManagerRuleGroupsRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteFirewallManagerRuleGroupsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:delete_ip_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteIPSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteIPSetRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteIPSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFAssociatedItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:delete_logging_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteLoggingConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteLoggingConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteLoggingConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:delete_permission_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeletePermissionPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeletePermissionPolicyRequest)
    o.output = Shapes::ShapeRef.new(shape: DeletePermissionPolicyResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
  end)

  api.add_operation(:delete_regex_pattern_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteRegexPatternSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteRegexPatternSetRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteRegexPatternSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFAssociatedItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:delete_rule_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteRuleGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteRuleGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteRuleGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFAssociatedItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:delete_web_acl, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DeleteWebACL"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DeleteWebACLRequest)
    o.output = Shapes::ShapeRef.new(shape: DeleteWebACLResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFAssociatedItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:describe_all_managed_products, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeAllManagedProducts"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeAllManagedProductsRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeAllManagedProductsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
  end)

  api.add_operation(:describe_managed_products_by_vendor, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeManagedProductsByVendor"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeManagedProductsByVendorRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeManagedProductsByVendorResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
  end)

  api.add_operation(:describe_managed_rule_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DescribeManagedRuleGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DescribeManagedRuleGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: DescribeManagedRuleGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidResourceException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFExpiredManagedRuleGroupVersionException)
  end)

  api.add_operation(:disassociate_web_acl, Seahorse::Model::Operation.new.tap do |o|
    o.name = "DisassociateWebACL"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: DisassociateWebACLRequest)
    o.output = Shapes::ShapeRef.new(shape: DisassociateWebACLResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:generate_mobile_sdk_release_url, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GenerateMobileSdkReleaseUrl"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GenerateMobileSdkReleaseUrlRequest)
    o.output = Shapes::ShapeRef.new(shape: GenerateMobileSdkReleaseUrlResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:get_decrypted_api_key, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetDecryptedAPIKey"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetDecryptedAPIKeyRequest)
    o.output = Shapes::ShapeRef.new(shape: GetDecryptedAPIKeyResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidResourceException)
  end)

  api.add_operation(:get_ip_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetIPSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetIPSetRequest)
    o.output = Shapes::ShapeRef.new(shape: GetIPSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:get_logging_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetLoggingConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetLoggingConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: GetLoggingConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:get_managed_rule_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetManagedRuleSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetManagedRuleSetRequest)
    o.output = Shapes::ShapeRef.new(shape: GetManagedRuleSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:get_mobile_sdk_release, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetMobileSdkRelease"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetMobileSdkReleaseRequest)
    o.output = Shapes::ShapeRef.new(shape: GetMobileSdkReleaseResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:get_permission_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetPermissionPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetPermissionPolicyRequest)
    o.output = Shapes::ShapeRef.new(shape: GetPermissionPolicyResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
  end)

  api.add_operation(:get_rate_based_statement_managed_keys, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRateBasedStatementManagedKeys"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetRateBasedStatementManagedKeysRequest)
    o.output = Shapes::ShapeRef.new(shape: GetRateBasedStatementManagedKeysResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFUnsupportedAggregateKeyTypeException)
  end)

  api.add_operation(:get_regex_pattern_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRegexPatternSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetRegexPatternSetRequest)
    o.output = Shapes::ShapeRef.new(shape: GetRegexPatternSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:get_rule_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetRuleGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetRuleGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: GetRuleGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:get_sampled_requests, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetSampledRequests"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetSampledRequestsRequest)
    o.output = Shapes::ShapeRef.new(shape: GetSampledRequestsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
  end)

  api.add_operation(:get_web_acl, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetWebACL"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetWebACLRequest)
    o.output = Shapes::ShapeRef.new(shape: GetWebACLResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:get_web_acl_for_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "GetWebACLForResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: GetWebACLForResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: GetWebACLForResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFUnavailableEntityException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_api_keys, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListAPIKeys"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListAPIKeysRequest)
    o.output = Shapes::ShapeRef.new(shape: ListAPIKeysResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidResourceException)
  end)

  api.add_operation(:list_available_managed_rule_group_versions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListAvailableManagedRuleGroupVersions"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListAvailableManagedRuleGroupVersionsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListAvailableManagedRuleGroupVersionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_available_managed_rule_groups, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListAvailableManagedRuleGroups"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListAvailableManagedRuleGroupsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListAvailableManagedRuleGroupsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_ip_sets, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListIPSets"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListIPSetsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListIPSetsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_logging_configurations, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListLoggingConfigurations"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListLoggingConfigurationsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListLoggingConfigurationsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_managed_rule_sets, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListManagedRuleSets"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListManagedRuleSetsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListManagedRuleSetsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_mobile_sdk_releases, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListMobileSdkReleases"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListMobileSdkReleasesRequest)
    o.output = Shapes::ShapeRef.new(shape: ListMobileSdkReleasesResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_regex_pattern_sets, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRegexPatternSets"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListRegexPatternSetsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListRegexPatternSetsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_resources_for_web_acl, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListResourcesForWebACL"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListResourcesForWebACLRequest)
    o.output = Shapes::ShapeRef.new(shape: ListResourcesForWebACLResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_rule_groups, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListRuleGroups"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListRuleGroupsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListRuleGroupsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_tags_for_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListTagsForResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListTagsForResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: ListTagsForResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:list_web_acls, Seahorse::Model::Operation.new.tap do |o|
    o.name = "ListWebACLs"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: ListWebACLsRequest)
    o.output = Shapes::ShapeRef.new(shape: ListWebACLsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:put_logging_configuration, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutLoggingConfiguration"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutLoggingConfigurationRequest)
    o.output = Shapes::ShapeRef.new(shape: PutLoggingConfigurationResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFServiceLinkedRoleErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLogDestinationPermissionIssueException)
  end)

  api.add_operation(:put_managed_rule_set_versions, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutManagedRuleSetVersions"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutManagedRuleSetVersionsRequest)
    o.output = Shapes::ShapeRef.new(shape: PutManagedRuleSetVersionsResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:put_permission_policy, Seahorse::Model::Operation.new.tap do |o|
    o.name = "PutPermissionPolicy"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: PutPermissionPolicyRequest)
    o.output = Shapes::ShapeRef.new(shape: PutPermissionPolicyResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidPermissionPolicyException)
  end)

  api.add_operation(:tag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "TagResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: TagResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: TagResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:untag_resource, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UntagResource"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UntagResourceRequest)
    o.output = Shapes::ShapeRef.new(shape: UntagResourceResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFTagOperationInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:update_ip_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateIPSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateIPSetRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateIPSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFDuplicateItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:update_managed_rule_set_version_expiry_date, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateManagedRuleSetVersionExpiryDate"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateManagedRuleSetVersionExpiryDateRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateManagedRuleSetVersionExpiryDateResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:update_regex_pattern_set, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateRegexPatternSet"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateRegexPatternSetRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateRegexPatternSetResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFDuplicateItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
  end)

  api.add_operation(:update_rule_group, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateRuleGroup"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateRuleGroupRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateRuleGroupResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFDuplicateItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFUnavailableEntityException)
    o.errors << Shapes::ShapeRef.new(shape: WAFSubscriptionNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFConfigurationWarningException)
  end)

  api.add_operation(:update_web_acl, Seahorse::Model::Operation.new.tap do |o|
    o.name = "UpdateWebACL"
    o.http_method = "POST"
    o.http_request_uri = "/"
    o.input = Shapes::ShapeRef.new(shape: UpdateWebACLRequest)
    o.output = Shapes::ShapeRef.new(shape: UpdateWebACLResponse)
    o.errors << Shapes::ShapeRef.new(shape: WAFInternalErrorException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidParameterException)
    o.errors << Shapes::ShapeRef.new(shape: WAFNonexistentItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFDuplicateItemException)
    o.errors << Shapes::ShapeRef.new(shape: WAFOptimisticLockException)
    o.errors << Shapes::ShapeRef.new(shape: WAFLimitsExceededException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidResourceException)
    o.errors << Shapes::ShapeRef.new(shape: WAFUnavailableEntityException)
    o.errors << Shapes::ShapeRef.new(shape: WAFSubscriptionNotFoundException)
    o.errors << Shapes::ShapeRef.new(shape: WAFInvalidOperationException)
    o.errors << Shapes::ShapeRef.new(shape: WAFExpiredManagedRuleGroupVersionException)
    o.errors << Shapes::ShapeRef.new(shape: WAFConfigurationWarningException)
  end)
end