@aws-sdk/client-wafv2 3.332.0 → 3.335.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist-cjs/models/models_0.js +19 -1
  2. package/dist-cjs/protocols/Aws_json1_1.js +15 -1
  3. package/dist-es/models/models_0.js +17 -0
  4. package/dist-es/protocols/Aws_json1_1.js +16 -2
  5. package/dist-types/WAFV2Client.d.ts +3 -2
  6. package/dist-types/commands/CheckCapacityCommand.d.ts +52 -2
  7. package/dist-types/commands/CreateRuleGroupCommand.d.ts +52 -2
  8. package/dist-types/commands/CreateWebACLCommand.d.ts +52 -2
  9. package/dist-types/commands/GetRateBasedStatementManagedKeysCommand.d.ts +9 -2
  10. package/dist-types/commands/GetRuleGroupCommand.d.ts +52 -2
  11. package/dist-types/commands/GetWebACLCommand.d.ts +52 -2
  12. package/dist-types/commands/GetWebACLForResourceCommand.d.ts +52 -2
  13. package/dist-types/commands/UpdateRuleGroupCommand.d.ts +52 -2
  14. package/dist-types/commands/UpdateWebACLCommand.d.ts +52 -2
  15. package/dist-types/endpoint/EndpointParameters.d.ts +2 -1
  16. package/dist-types/models/models_0.d.ts +353 -48
  17. package/dist-types/protocols/Aws_json1_1.d.ts +2 -2
  18. package/dist-types/runtimeConfig.browser.d.ts +12 -12
  19. package/dist-types/runtimeConfig.d.ts +9 -9
  20. package/dist-types/runtimeConfig.native.d.ts +13 -13
  21. package/dist-types/runtimeConfig.shared.d.ts +4 -4
  22. package/dist-types/ts3.4/WAFV2Client.d.ts +7 -5
  23. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +1 -2
  24. package/dist-types/ts3.4/models/models_0.d.ts +47 -0
  25. package/dist-types/ts3.4/protocols/Aws_json1_1.d.ts +2 -2
  26. package/dist-types/ts3.4/runtimeConfig.browser.d.ts +18 -15
  27. package/dist-types/ts3.4/runtimeConfig.d.ts +12 -12
  28. package/dist-types/ts3.4/runtimeConfig.native.d.ts +20 -15
  29. package/dist-types/ts3.4/runtimeConfig.shared.d.ts +4 -4
  30. package/package.json +5 -4
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.WAFInvalidPermissionPolicyException = exports.WAFServiceLinkedRoleErrorException = exports.WAFLogDestinationPermissionIssueException = exports.ResourceType = exports.FailureReason = exports.FilterRequirement = exports.FilterBehavior = exports.Platform = exports.WAFAssociatedItemException = exports.WAFConfigurationWarningException = exports.ResponseContentType = exports.WAFTagOperationInternalErrorException = exports.WAFTagOperationException = exports.WAFOptimisticLockException = exports.WAFDuplicateItemException = exports.IPAddressVersion = exports.WAFSubscriptionNotFoundException = exports.WAFLimitsExceededException = exports.WAFInvalidResourceException = exports.WAFExpiredManagedRuleGroupVersionException = exports.Scope = exports.SizeInspectionLimit = exports.WAFUnavailableEntityException = exports.WAFNonexistentItemException = exports.WAFInvalidParameterException = exports.ParameterExceptionField = exports.WAFInvalidOperationException = exports.WAFInternalErrorException = exports.AssociatedResourceType = exports.SensitivityLevel = exports.ComparisonOperator = exports.RateBasedStatementAggregateKeyType = exports.InspectionLevel = exports.PayloadType = exports.LabelMatchScope = exports.ForwardedIPPosition = exports.FallbackBehavior = exports.CountryCode = exports.TextTransformationType = exports.PositionalConstraint = exports.JsonMatchScope = exports.BodyParsingFallbackBehavior = exports.MapMatchScope = exports.OversizeHandling = exports.ActionValue = void 0;
3
+ exports.WAFInvalidPermissionPolicyException = exports.WAFServiceLinkedRoleErrorException = exports.WAFLogDestinationPermissionIssueException = exports.ResourceType = exports.FailureReason = exports.WAFUnsupportedAggregateKeyTypeException = exports.FilterRequirement = exports.FilterBehavior = exports.Platform = exports.WAFAssociatedItemException = exports.WAFConfigurationWarningException = exports.ResponseContentType = exports.WAFTagOperationInternalErrorException = exports.WAFTagOperationException = exports.WAFOptimisticLockException = exports.WAFDuplicateItemException = exports.IPAddressVersion = exports.WAFSubscriptionNotFoundException = exports.WAFLimitsExceededException = exports.WAFInvalidResourceException = exports.WAFExpiredManagedRuleGroupVersionException = exports.Scope = exports.SizeInspectionLimit = exports.WAFUnavailableEntityException = exports.WAFNonexistentItemException = exports.WAFInvalidParameterException = exports.ParameterExceptionField = exports.WAFInvalidOperationException = exports.WAFInternalErrorException = exports.AssociatedResourceType = exports.SensitivityLevel = exports.ComparisonOperator = exports.RateBasedStatementAggregateKeyType = exports.InspectionLevel = exports.PayloadType = exports.LabelMatchScope = exports.ForwardedIPPosition = exports.FallbackBehavior = exports.CountryCode = exports.TextTransformationType = exports.PositionalConstraint = exports.JsonMatchScope = exports.BodyParsingFallbackBehavior = exports.MapMatchScope = exports.OversizeHandling = exports.ActionValue = void 0;
4
4
  const WAFV2ServiceException_1 = require("./WAFV2ServiceException");
5
5
  exports.ActionValue = {
6
6
  ALLOW: "ALLOW",
@@ -334,6 +334,8 @@ exports.InspectionLevel = {
334
334
  TARGETED: "TARGETED",
335
335
  };
336
336
  exports.RateBasedStatementAggregateKeyType = {
337
+ CONSTANT: "CONSTANT",
338
+ CUSTOM_KEYS: "CUSTOM_KEYS",
337
339
  FORWARDED_IP: "FORWARDED_IP",
338
340
  IP: "IP",
339
341
  };
@@ -390,6 +392,7 @@ exports.ParameterExceptionField = {
390
392
  CHALLENGE_CONFIG: "CHALLENGE_CONFIG",
391
393
  CHANGE_PROPAGATION_STATUS: "CHANGE_PROPAGATION_STATUS",
392
394
  COOKIE_MATCH_PATTERN: "COOKIE_MATCH_PATTERN",
395
+ CUSTOM_KEYS: "CUSTOM_KEYS",
393
396
  CUSTOM_REQUEST_HANDLING: "CUSTOM_REQUEST_HANDLING",
394
397
  CUSTOM_RESPONSE: "CUSTOM_RESPONSE",
395
398
  CUSTOM_RESPONSE_BODY: "CUSTOM_RESPONSE_BODY",
@@ -436,6 +439,7 @@ exports.ParameterExceptionField = {
436
439
  RULE_ACTION: "RULE_ACTION",
437
440
  RULE_GROUP: "RULE_GROUP",
438
441
  RULE_GROUP_REFERENCE_STATEMENT: "RULE_GROUP_REFERENCE_STATEMENT",
442
+ SCOPE_DOWN: "SCOPE_DOWN",
439
443
  SCOPE_VALUE: "SCOPE_VALUE",
440
444
  SINGLE_HEADER: "SINGLE_HEADER",
441
445
  SINGLE_QUERY_ARGUMENT: "SINGLE_QUERY_ARGUMENT",
@@ -664,6 +668,20 @@ exports.FilterRequirement = {
664
668
  MEETS_ALL: "MEETS_ALL",
665
669
  MEETS_ANY: "MEETS_ANY",
666
670
  };
671
+ class WAFUnsupportedAggregateKeyTypeException extends WAFV2ServiceException_1.WAFV2ServiceException {
672
+ constructor(opts) {
673
+ super({
674
+ name: "WAFUnsupportedAggregateKeyTypeException",
675
+ $fault: "client",
676
+ ...opts,
677
+ });
678
+ this.name = "WAFUnsupportedAggregateKeyTypeException";
679
+ this.$fault = "client";
680
+ Object.setPrototypeOf(this, WAFUnsupportedAggregateKeyTypeException.prototype);
681
+ this.Message = opts.Message;
682
+ }
683
+ }
684
+ exports.WAFUnsupportedAggregateKeyTypeException = WAFUnsupportedAggregateKeyTypeException;
667
685
  exports.FailureReason = {
668
686
  TOKEN_DOMAIN_MISMATCH: "TOKEN_DOMAIN_MISMATCH",
669
687
  TOKEN_EXPIRED: "TOKEN_EXPIRED",
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.se_UpdateRuleGroupCommand = exports.se_UpdateRegexPatternSetCommand = exports.se_UpdateManagedRuleSetVersionExpiryDateCommand = exports.se_UpdateIPSetCommand = exports.se_UntagResourceCommand = exports.se_TagResourceCommand = exports.se_PutPermissionPolicyCommand = exports.se_PutManagedRuleSetVersionsCommand = exports.se_PutLoggingConfigurationCommand = exports.se_ListWebACLsCommand = exports.se_ListTagsForResourceCommand = exports.se_ListRuleGroupsCommand = exports.se_ListResourcesForWebACLCommand = exports.se_ListRegexPatternSetsCommand = exports.se_ListMobileSdkReleasesCommand = exports.se_ListManagedRuleSetsCommand = exports.se_ListLoggingConfigurationsCommand = exports.se_ListIPSetsCommand = exports.se_ListAvailableManagedRuleGroupVersionsCommand = exports.se_ListAvailableManagedRuleGroupsCommand = exports.se_ListAPIKeysCommand = exports.se_GetWebACLForResourceCommand = exports.se_GetWebACLCommand = exports.se_GetSampledRequestsCommand = exports.se_GetRuleGroupCommand = exports.se_GetRegexPatternSetCommand = exports.se_GetRateBasedStatementManagedKeysCommand = exports.se_GetPermissionPolicyCommand = exports.se_GetMobileSdkReleaseCommand = exports.se_GetManagedRuleSetCommand = exports.se_GetLoggingConfigurationCommand = exports.se_GetIPSetCommand = exports.se_GetDecryptedAPIKeyCommand = exports.se_GenerateMobileSdkReleaseUrlCommand = exports.se_DisassociateWebACLCommand = exports.se_DescribeManagedRuleGroupCommand = exports.se_DeleteWebACLCommand = exports.se_DeleteRuleGroupCommand = exports.se_DeleteRegexPatternSetCommand = exports.se_DeletePermissionPolicyCommand = exports.se_DeleteLoggingConfigurationCommand = exports.se_DeleteIPSetCommand = exports.se_DeleteFirewallManagerRuleGroupsCommand = exports.se_CreateWebACLCommand = exports.se_CreateRuleGroupCommand = exports.se_CreateRegexPatternSetCommand = exports.se_CreateIPSetCommand = exports.se_CreateAPIKeyCommand = exports.se_CheckCapacityCommand = exports.se_AssociateWebACLCommand = void 0;
4
4
  exports.de_UpdateRegexPatternSetCommand = exports.de_UpdateManagedRuleSetVersionExpiryDateCommand = exports.de_UpdateIPSetCommand = exports.de_UntagResourceCommand = exports.de_TagResourceCommand = exports.de_PutPermissionPolicyCommand = exports.de_PutManagedRuleSetVersionsCommand = exports.de_PutLoggingConfigurationCommand = exports.de_ListWebACLsCommand = exports.de_ListTagsForResourceCommand = exports.de_ListRuleGroupsCommand = exports.de_ListResourcesForWebACLCommand = exports.de_ListRegexPatternSetsCommand = exports.de_ListMobileSdkReleasesCommand = exports.de_ListManagedRuleSetsCommand = exports.de_ListLoggingConfigurationsCommand = exports.de_ListIPSetsCommand = exports.de_ListAvailableManagedRuleGroupVersionsCommand = exports.de_ListAvailableManagedRuleGroupsCommand = exports.de_ListAPIKeysCommand = exports.de_GetWebACLForResourceCommand = exports.de_GetWebACLCommand = exports.de_GetSampledRequestsCommand = exports.de_GetRuleGroupCommand = exports.de_GetRegexPatternSetCommand = exports.de_GetRateBasedStatementManagedKeysCommand = exports.de_GetPermissionPolicyCommand = exports.de_GetMobileSdkReleaseCommand = exports.de_GetManagedRuleSetCommand = exports.de_GetLoggingConfigurationCommand = exports.de_GetIPSetCommand = exports.de_GetDecryptedAPIKeyCommand = exports.de_GenerateMobileSdkReleaseUrlCommand = exports.de_DisassociateWebACLCommand = exports.de_DescribeManagedRuleGroupCommand = exports.de_DeleteWebACLCommand = exports.de_DeleteRuleGroupCommand = exports.de_DeleteRegexPatternSetCommand = exports.de_DeletePermissionPolicyCommand = exports.de_DeleteLoggingConfigurationCommand = exports.de_DeleteIPSetCommand = exports.de_DeleteFirewallManagerRuleGroupsCommand = exports.de_CreateWebACLCommand = exports.de_CreateRuleGroupCommand = exports.de_CreateRegexPatternSetCommand = exports.de_CreateIPSetCommand = exports.de_CreateAPIKeyCommand = exports.de_CheckCapacityCommand = exports.de_AssociateWebACLCommand = exports.se_UpdateWebACLCommand = void 0;
5
5
  exports.de_UpdateWebACLCommand = exports.de_UpdateRuleGroupCommand = void 0;
6
- const protocol_http_1 = require("@aws-sdk/protocol-http");
7
6
  const smithy_client_1 = require("@aws-sdk/smithy-client");
7
+ const protocol_http_1 = require("@smithy/protocol-http");
8
8
  const models_0_1 = require("../models/models_0");
9
9
  const WAFV2ServiceException_1 = require("../models/WAFV2ServiceException");
10
10
  const se_AssociateWebACLCommand = async (input, context) => {
@@ -1510,6 +1510,9 @@ const de_GetRateBasedStatementManagedKeysCommandError = async (output, context)
1510
1510
  case "WAFNonexistentItemException":
1511
1511
  case "com.amazonaws.wafv2#WAFNonexistentItemException":
1512
1512
  throw await de_WAFNonexistentItemExceptionRes(parsedOutput, context);
1513
+ case "WAFUnsupportedAggregateKeyTypeException":
1514
+ case "com.amazonaws.wafv2#WAFUnsupportedAggregateKeyTypeException":
1515
+ throw await de_WAFUnsupportedAggregateKeyTypeExceptionRes(parsedOutput, context);
1513
1516
  default:
1514
1517
  const parsedBody = parsedOutput.body;
1515
1518
  return throwDefaultError({
@@ -2890,6 +2893,15 @@ const de_WAFUnavailableEntityExceptionRes = async (parsedOutput, context) => {
2890
2893
  });
2891
2894
  return (0, smithy_client_1.decorateServiceException)(exception, body);
2892
2895
  };
2896
+ const de_WAFUnsupportedAggregateKeyTypeExceptionRes = async (parsedOutput, context) => {
2897
+ const body = parsedOutput.body;
2898
+ const deserialized = (0, smithy_client_1._json)(body);
2899
+ const exception = new models_0_1.WAFUnsupportedAggregateKeyTypeException({
2900
+ $metadata: deserializeMetadata(parsedOutput),
2901
+ ...deserialized,
2902
+ });
2903
+ return (0, smithy_client_1.decorateServiceException)(exception, body);
2904
+ };
2893
2905
  const se_AndStatement = (input, context) => {
2894
2906
  return (0, smithy_client_1.take)(input, {
2895
2907
  Statements: (_) => se_Statements(_, context),
@@ -2970,6 +2982,7 @@ const se_OrStatement = (input, context) => {
2970
2982
  const se_RateBasedStatement = (input, context) => {
2971
2983
  return (0, smithy_client_1.take)(input, {
2972
2984
  AggregateKeyType: [],
2985
+ CustomKeys: smithy_client_1._json,
2973
2986
  ForwardedIPConfig: smithy_client_1._json,
2974
2987
  Limit: [],
2975
2988
  ScopeDownStatement: (_) => se_Statement(_, context),
@@ -3256,6 +3269,7 @@ const de_PublishedVersions = (output, context) => {
3256
3269
  const de_RateBasedStatement = (output, context) => {
3257
3270
  return (0, smithy_client_1.take)(output, {
3258
3271
  AggregateKeyType: smithy_client_1.expectString,
3272
+ CustomKeys: smithy_client_1._json,
3259
3273
  ForwardedIPConfig: smithy_client_1._json,
3260
3274
  Limit: smithy_client_1.expectLong,
3261
3275
  ScopeDownStatement: (_) => de_Statement(_, context),
@@ -331,6 +331,8 @@ export const InspectionLevel = {
331
331
  TARGETED: "TARGETED",
332
332
  };
333
333
  export const RateBasedStatementAggregateKeyType = {
334
+ CONSTANT: "CONSTANT",
335
+ CUSTOM_KEYS: "CUSTOM_KEYS",
334
336
  FORWARDED_IP: "FORWARDED_IP",
335
337
  IP: "IP",
336
338
  };
@@ -385,6 +387,7 @@ export const ParameterExceptionField = {
385
387
  CHALLENGE_CONFIG: "CHALLENGE_CONFIG",
386
388
  CHANGE_PROPAGATION_STATUS: "CHANGE_PROPAGATION_STATUS",
387
389
  COOKIE_MATCH_PATTERN: "COOKIE_MATCH_PATTERN",
390
+ CUSTOM_KEYS: "CUSTOM_KEYS",
388
391
  CUSTOM_REQUEST_HANDLING: "CUSTOM_REQUEST_HANDLING",
389
392
  CUSTOM_RESPONSE: "CUSTOM_RESPONSE",
390
393
  CUSTOM_RESPONSE_BODY: "CUSTOM_RESPONSE_BODY",
@@ -431,6 +434,7 @@ export const ParameterExceptionField = {
431
434
  RULE_ACTION: "RULE_ACTION",
432
435
  RULE_GROUP: "RULE_GROUP",
433
436
  RULE_GROUP_REFERENCE_STATEMENT: "RULE_GROUP_REFERENCE_STATEMENT",
437
+ SCOPE_DOWN: "SCOPE_DOWN",
434
438
  SCOPE_VALUE: "SCOPE_VALUE",
435
439
  SINGLE_HEADER: "SINGLE_HEADER",
436
440
  SINGLE_QUERY_ARGUMENT: "SINGLE_QUERY_ARGUMENT",
@@ -646,6 +650,19 @@ export const FilterRequirement = {
646
650
  MEETS_ALL: "MEETS_ALL",
647
651
  MEETS_ANY: "MEETS_ANY",
648
652
  };
653
+ export class WAFUnsupportedAggregateKeyTypeException extends __BaseException {
654
+ constructor(opts) {
655
+ super({
656
+ name: "WAFUnsupportedAggregateKeyTypeException",
657
+ $fault: "client",
658
+ ...opts,
659
+ });
660
+ this.name = "WAFUnsupportedAggregateKeyTypeException";
661
+ this.$fault = "client";
662
+ Object.setPrototypeOf(this, WAFUnsupportedAggregateKeyTypeException.prototype);
663
+ this.Message = opts.Message;
664
+ }
665
+ }
649
666
  export const FailureReason = {
650
667
  TOKEN_DOMAIN_MISMATCH: "TOKEN_DOMAIN_MISMATCH",
651
668
  TOKEN_EXPIRED: "TOKEN_EXPIRED",
@@ -1,6 +1,6 @@
1
- import { HttpRequest as __HttpRequest } from "@aws-sdk/protocol-http";
2
1
  import { _json, decorateServiceException as __decorateServiceException, expectBoolean as __expectBoolean, expectInt32 as __expectInt32, expectLong as __expectLong, expectNonNull as __expectNonNull, expectNumber as __expectNumber, expectString as __expectString, parseEpochTimestamp as __parseEpochTimestamp, take, withBaseException, } from "@aws-sdk/smithy-client";
3
- import { WAFAssociatedItemException, WAFConfigurationWarningException, WAFDuplicateItemException, WAFExpiredManagedRuleGroupVersionException, WAFInternalErrorException, WAFInvalidOperationException, WAFInvalidParameterException, WAFInvalidPermissionPolicyException, WAFInvalidResourceException, WAFLimitsExceededException, WAFLogDestinationPermissionIssueException, WAFNonexistentItemException, WAFOptimisticLockException, WAFServiceLinkedRoleErrorException, WAFSubscriptionNotFoundException, WAFTagOperationException, WAFTagOperationInternalErrorException, WAFUnavailableEntityException, } from "../models/models_0";
2
+ import { HttpRequest as __HttpRequest } from "@smithy/protocol-http";
3
+ import { WAFAssociatedItemException, WAFConfigurationWarningException, WAFDuplicateItemException, WAFExpiredManagedRuleGroupVersionException, WAFInternalErrorException, WAFInvalidOperationException, WAFInvalidParameterException, WAFInvalidPermissionPolicyException, WAFInvalidResourceException, WAFLimitsExceededException, WAFLogDestinationPermissionIssueException, WAFNonexistentItemException, WAFOptimisticLockException, WAFServiceLinkedRoleErrorException, WAFSubscriptionNotFoundException, WAFTagOperationException, WAFTagOperationInternalErrorException, WAFUnavailableEntityException, WAFUnsupportedAggregateKeyTypeException, } from "../models/models_0";
4
4
  import { WAFV2ServiceException as __BaseException } from "../models/WAFV2ServiceException";
5
5
  export const se_AssociateWebACLCommand = async (input, context) => {
6
6
  const headers = sharedHeaders("AssociateWebACL");
@@ -1430,6 +1430,9 @@ const de_GetRateBasedStatementManagedKeysCommandError = async (output, context)
1430
1430
  case "WAFNonexistentItemException":
1431
1431
  case "com.amazonaws.wafv2#WAFNonexistentItemException":
1432
1432
  throw await de_WAFNonexistentItemExceptionRes(parsedOutput, context);
1433
+ case "WAFUnsupportedAggregateKeyTypeException":
1434
+ case "com.amazonaws.wafv2#WAFUnsupportedAggregateKeyTypeException":
1435
+ throw await de_WAFUnsupportedAggregateKeyTypeExceptionRes(parsedOutput, context);
1433
1436
  default:
1434
1437
  const parsedBody = parsedOutput.body;
1435
1438
  return throwDefaultError({
@@ -2783,6 +2786,15 @@ const de_WAFUnavailableEntityExceptionRes = async (parsedOutput, context) => {
2783
2786
  });
2784
2787
  return __decorateServiceException(exception, body);
2785
2788
  };
2789
+ const de_WAFUnsupportedAggregateKeyTypeExceptionRes = async (parsedOutput, context) => {
2790
+ const body = parsedOutput.body;
2791
+ const deserialized = _json(body);
2792
+ const exception = new WAFUnsupportedAggregateKeyTypeException({
2793
+ $metadata: deserializeMetadata(parsedOutput),
2794
+ ...deserialized,
2795
+ });
2796
+ return __decorateServiceException(exception, body);
2797
+ };
2786
2798
  const se_AndStatement = (input, context) => {
2787
2799
  return take(input, {
2788
2800
  Statements: (_) => se_Statements(_, context),
@@ -2863,6 +2875,7 @@ const se_OrStatement = (input, context) => {
2863
2875
  const se_RateBasedStatement = (input, context) => {
2864
2876
  return take(input, {
2865
2877
  AggregateKeyType: [],
2878
+ CustomKeys: _json,
2866
2879
  ForwardedIPConfig: _json,
2867
2880
  Limit: [],
2868
2881
  ScopeDownStatement: (_) => se_Statement(_, context),
@@ -3149,6 +3162,7 @@ const de_PublishedVersions = (output, context) => {
3149
3162
  const de_RateBasedStatement = (output, context) => {
3150
3163
  return take(output, {
3151
3164
  AggregateKeyType: __expectString,
3165
+ CustomKeys: _json,
3152
3166
  ForwardedIPConfig: _json,
3153
3167
  Limit: __expectLong,
3154
3168
  ScopeDownStatement: (_) => de_Statement(_, context),
@@ -4,9 +4,10 @@ import { HostHeaderInputConfig, HostHeaderResolvedConfig } from "@aws-sdk/middle
4
4
  import { RetryInputConfig, RetryResolvedConfig } from "@aws-sdk/middleware-retry";
5
5
  import { AwsAuthInputConfig, AwsAuthResolvedConfig } from "@aws-sdk/middleware-signing";
6
6
  import { UserAgentInputConfig, UserAgentResolvedConfig } from "@aws-sdk/middleware-user-agent";
7
- import { HttpHandler as __HttpHandler } from "@aws-sdk/protocol-http";
8
7
  import { Client as __Client, DefaultsMode as __DefaultsMode, SmithyConfiguration as __SmithyConfiguration, SmithyResolvedConfiguration as __SmithyResolvedConfiguration } from "@aws-sdk/smithy-client";
9
- import { BodyLengthCalculator as __BodyLengthCalculator, ChecksumConstructor as __ChecksumConstructor, Credentials as __Credentials, Decoder as __Decoder, Encoder as __Encoder, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider as __Provider, Provider, StreamCollector as __StreamCollector, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@aws-sdk/types";
8
+ import { BodyLengthCalculator as __BodyLengthCalculator, ChecksumConstructor as __ChecksumConstructor, Credentials as __Credentials, HashConstructor as __HashConstructor, HttpHandlerOptions as __HttpHandlerOptions, Logger as __Logger, Provider, UrlParser as __UrlParser, UserAgent as __UserAgent } from "@aws-sdk/types";
9
+ import { HttpHandler as __HttpHandler } from "@smithy/protocol-http";
10
+ import { Decoder as __Decoder, Encoder as __Encoder, Provider as __Provider, StreamCollector as __StreamCollector } from "@smithy/types";
10
11
  import { AssociateWebACLCommandInput, AssociateWebACLCommandOutput } from "./commands/AssociateWebACLCommand";
11
12
  import { CheckCapacityCommandInput, CheckCapacityCommandOutput } from "./commands/CheckCapacityCommand";
12
13
  import { CreateAPIKeyCommandInput, CreateAPIKeyCommandOutput } from "./commands/CreateAPIKeyCommand";
@@ -416,7 +416,7 @@ export interface CheckCapacityCommandOutput extends CheckCapacityResponse, __Met
416
416
  * },
417
417
  * RateBasedStatement: { // RateBasedStatement
418
418
  * Limit: Number("long"), // required
419
- * AggregateKeyType: "IP" || "FORWARDED_IP", // required
419
+ * AggregateKeyType: "IP" || "FORWARDED_IP" || "CUSTOM_KEYS" || "CONSTANT", // required
420
420
  * ScopeDownStatement: {
421
421
  * ByteMatchStatement: {
422
422
  * SearchString: "BLOB_VALUE", // required
@@ -499,12 +499,37 @@ export interface CheckCapacityCommandOutput extends CheckCapacityResponse, __Met
499
499
  * },
500
500
  * RateBasedStatement: {
501
501
  * Limit: Number("long"), // required
502
- * AggregateKeyType: "IP" || "FORWARDED_IP", // required
502
+ * AggregateKeyType: "IP" || "FORWARDED_IP" || "CUSTOM_KEYS" || "CONSTANT", // required
503
503
  * ScopeDownStatement: "<Statement>",
504
504
  * ForwardedIPConfig: {
505
505
  * HeaderName: "STRING_VALUE", // required
506
506
  * FallbackBehavior: "MATCH" || "NO_MATCH", // required
507
507
  * },
508
+ * CustomKeys: [ // RateBasedStatementCustomKeys
509
+ * { // RateBasedStatementCustomKey
510
+ * Header: { // RateLimitHeader
511
+ * Name: "STRING_VALUE", // required
512
+ * TextTransformations: "<TextTransformations>", // required
513
+ * },
514
+ * Cookie: { // RateLimitCookie
515
+ * Name: "STRING_VALUE", // required
516
+ * TextTransformations: "<TextTransformations>", // required
517
+ * },
518
+ * QueryArgument: { // RateLimitQueryArgument
519
+ * Name: "STRING_VALUE", // required
520
+ * TextTransformations: "<TextTransformations>", // required
521
+ * },
522
+ * QueryString: { // RateLimitQueryString
523
+ * TextTransformations: "<TextTransformations>", // required
524
+ * },
525
+ * HTTPMethod: {},
526
+ * ForwardedIP: {},
527
+ * IP: {},
528
+ * LabelNamespace: { // RateLimitLabelNamespace
529
+ * Namespace: "STRING_VALUE", // required
530
+ * },
531
+ * },
532
+ * ],
508
533
  * },
509
534
  * AndStatement: { // AndStatement
510
535
  * Statements: [ // Statements // required
@@ -633,6 +658,31 @@ export interface CheckCapacityCommandOutput extends CheckCapacityResponse, __Met
633
658
  * HeaderName: "STRING_VALUE", // required
634
659
  * FallbackBehavior: "MATCH" || "NO_MATCH", // required
635
660
  * },
661
+ * CustomKeys: [
662
+ * {
663
+ * Header: {
664
+ * Name: "STRING_VALUE", // required
665
+ * TextTransformations: "<TextTransformations>", // required
666
+ * },
667
+ * Cookie: {
668
+ * Name: "STRING_VALUE", // required
669
+ * TextTransformations: "<TextTransformations>", // required
670
+ * },
671
+ * QueryArgument: {
672
+ * Name: "STRING_VALUE", // required
673
+ * TextTransformations: "<TextTransformations>", // required
674
+ * },
675
+ * QueryString: {
676
+ * TextTransformations: "<TextTransformations>", // required
677
+ * },
678
+ * HTTPMethod: {},
679
+ * ForwardedIP: {},
680
+ * IP: {},
681
+ * LabelNamespace: {
682
+ * Namespace: "STRING_VALUE", // required
683
+ * },
684
+ * },
685
+ * ],
636
686
  * },
637
687
  * AndStatement: {
638
688
  * Statements: [ // required
@@ -409,7 +409,7 @@ export interface CreateRuleGroupCommandOutput extends CreateRuleGroupResponse, _
409
409
  * },
410
410
  * RateBasedStatement: { // RateBasedStatement
411
411
  * Limit: Number("long"), // required
412
- * AggregateKeyType: "IP" || "FORWARDED_IP", // required
412
+ * AggregateKeyType: "IP" || "FORWARDED_IP" || "CUSTOM_KEYS" || "CONSTANT", // required
413
413
  * ScopeDownStatement: {
414
414
  * ByteMatchStatement: {
415
415
  * SearchString: "BLOB_VALUE", // required
@@ -492,12 +492,37 @@ export interface CreateRuleGroupCommandOutput extends CreateRuleGroupResponse, _
492
492
  * },
493
493
  * RateBasedStatement: {
494
494
  * Limit: Number("long"), // required
495
- * AggregateKeyType: "IP" || "FORWARDED_IP", // required
495
+ * AggregateKeyType: "IP" || "FORWARDED_IP" || "CUSTOM_KEYS" || "CONSTANT", // required
496
496
  * ScopeDownStatement: "<Statement>",
497
497
  * ForwardedIPConfig: {
498
498
  * HeaderName: "STRING_VALUE", // required
499
499
  * FallbackBehavior: "MATCH" || "NO_MATCH", // required
500
500
  * },
501
+ * CustomKeys: [ // RateBasedStatementCustomKeys
502
+ * { // RateBasedStatementCustomKey
503
+ * Header: { // RateLimitHeader
504
+ * Name: "STRING_VALUE", // required
505
+ * TextTransformations: "<TextTransformations>", // required
506
+ * },
507
+ * Cookie: { // RateLimitCookie
508
+ * Name: "STRING_VALUE", // required
509
+ * TextTransformations: "<TextTransformations>", // required
510
+ * },
511
+ * QueryArgument: { // RateLimitQueryArgument
512
+ * Name: "STRING_VALUE", // required
513
+ * TextTransformations: "<TextTransformations>", // required
514
+ * },
515
+ * QueryString: { // RateLimitQueryString
516
+ * TextTransformations: "<TextTransformations>", // required
517
+ * },
518
+ * HTTPMethod: {},
519
+ * ForwardedIP: {},
520
+ * IP: {},
521
+ * LabelNamespace: { // RateLimitLabelNamespace
522
+ * Namespace: "STRING_VALUE", // required
523
+ * },
524
+ * },
525
+ * ],
501
526
  * },
502
527
  * AndStatement: { // AndStatement
503
528
  * Statements: [ // Statements // required
@@ -626,6 +651,31 @@ export interface CreateRuleGroupCommandOutput extends CreateRuleGroupResponse, _
626
651
  * HeaderName: "STRING_VALUE", // required
627
652
  * FallbackBehavior: "MATCH" || "NO_MATCH", // required
628
653
  * },
654
+ * CustomKeys: [
655
+ * {
656
+ * Header: {
657
+ * Name: "STRING_VALUE", // required
658
+ * TextTransformations: "<TextTransformations>", // required
659
+ * },
660
+ * Cookie: {
661
+ * Name: "STRING_VALUE", // required
662
+ * TextTransformations: "<TextTransformations>", // required
663
+ * },
664
+ * QueryArgument: {
665
+ * Name: "STRING_VALUE", // required
666
+ * TextTransformations: "<TextTransformations>", // required
667
+ * },
668
+ * QueryString: {
669
+ * TextTransformations: "<TextTransformations>", // required
670
+ * },
671
+ * HTTPMethod: {},
672
+ * ForwardedIP: {},
673
+ * IP: {},
674
+ * LabelNamespace: {
675
+ * Namespace: "STRING_VALUE", // required
676
+ * },
677
+ * },
678
+ * ],
629
679
  * },
630
680
  * AndStatement: {
631
681
  * Statements: [ // required
@@ -422,7 +422,7 @@ export interface CreateWebACLCommandOutput extends CreateWebACLResponse, __Metad
422
422
  * },
423
423
  * RateBasedStatement: { // RateBasedStatement
424
424
  * Limit: Number("long"), // required
425
- * AggregateKeyType: "IP" || "FORWARDED_IP", // required
425
+ * AggregateKeyType: "IP" || "FORWARDED_IP" || "CUSTOM_KEYS" || "CONSTANT", // required
426
426
  * ScopeDownStatement: {
427
427
  * ByteMatchStatement: {
428
428
  * SearchString: "BLOB_VALUE", // required
@@ -495,12 +495,37 @@ export interface CreateWebACLCommandOutput extends CreateWebACLResponse, __Metad
495
495
  * },
496
496
  * RateBasedStatement: {
497
497
  * Limit: Number("long"), // required
498
- * AggregateKeyType: "IP" || "FORWARDED_IP", // required
498
+ * AggregateKeyType: "IP" || "FORWARDED_IP" || "CUSTOM_KEYS" || "CONSTANT", // required
499
499
  * ScopeDownStatement: "<Statement>",
500
500
  * ForwardedIPConfig: {
501
501
  * HeaderName: "STRING_VALUE", // required
502
502
  * FallbackBehavior: "MATCH" || "NO_MATCH", // required
503
503
  * },
504
+ * CustomKeys: [ // RateBasedStatementCustomKeys
505
+ * { // RateBasedStatementCustomKey
506
+ * Header: { // RateLimitHeader
507
+ * Name: "STRING_VALUE", // required
508
+ * TextTransformations: "<TextTransformations>", // required
509
+ * },
510
+ * Cookie: { // RateLimitCookie
511
+ * Name: "STRING_VALUE", // required
512
+ * TextTransformations: "<TextTransformations>", // required
513
+ * },
514
+ * QueryArgument: { // RateLimitQueryArgument
515
+ * Name: "STRING_VALUE", // required
516
+ * TextTransformations: "<TextTransformations>", // required
517
+ * },
518
+ * QueryString: { // RateLimitQueryString
519
+ * TextTransformations: "<TextTransformations>", // required
520
+ * },
521
+ * HTTPMethod: {},
522
+ * ForwardedIP: {},
523
+ * IP: {},
524
+ * LabelNamespace: { // RateLimitLabelNamespace
525
+ * Namespace: "STRING_VALUE", // required
526
+ * },
527
+ * },
528
+ * ],
504
529
  * },
505
530
  * AndStatement: { // AndStatement
506
531
  * Statements: [ // Statements // required
@@ -621,6 +646,31 @@ export interface CreateWebACLCommandOutput extends CreateWebACLResponse, __Metad
621
646
  * HeaderName: "STRING_VALUE", // required
622
647
  * FallbackBehavior: "MATCH" || "NO_MATCH", // required
623
648
  * },
649
+ * CustomKeys: [
650
+ * {
651
+ * Header: {
652
+ * Name: "STRING_VALUE", // required
653
+ * TextTransformations: "<TextTransformations>", // required
654
+ * },
655
+ * Cookie: {
656
+ * Name: "STRING_VALUE", // required
657
+ * TextTransformations: "<TextTransformations>", // required
658
+ * },
659
+ * QueryArgument: {
660
+ * Name: "STRING_VALUE", // required
661
+ * TextTransformations: "<TextTransformations>", // required
662
+ * },
663
+ * QueryString: {
664
+ * TextTransformations: "<TextTransformations>", // required
665
+ * },
666
+ * HTTPMethod: {},
667
+ * ForwardedIP: {},
668
+ * IP: {},
669
+ * LabelNamespace: {
670
+ * Namespace: "STRING_VALUE", // required
671
+ * },
672
+ * },
673
+ * ],
624
674
  * },
625
675
  * AndStatement: {
626
676
  * Statements: [ // required
@@ -19,8 +19,11 @@ export interface GetRateBasedStatementManagedKeysCommandOutput extends GetRateBa
19
19
  }
20
20
  /**
21
21
  * @public
22
- * <p>Retrieves the keys that are currently blocked by a rate-based rule instance. The maximum
23
- * number of managed keys that can be blocked for a single rate-based rule instance is 10,000.
22
+ * <p>Retrieves the IP addresses that are currently blocked by a rate-based rule instance. This
23
+ * is only available for rate-based rules that aggregate solely on the IP address or on the forwarded IP
24
+ * address. </p>
25
+ * <p>The maximum
26
+ * number of addresses that can be blocked for a single rate-based rule instance is 10,000.
24
27
  * If more than 10,000 addresses exceed the rate limit, those with the highest rates are
25
28
  * blocked.</p>
26
29
  * <p>For a rate-based rule that you've defined inside a rule group, provide the name of the
@@ -105,6 +108,10 @@ export interface GetRateBasedStatementManagedKeysCommandOutput extends GetRateBa
105
108
  * just need to wait a few minutes. It can take from a few seconds to a number of minutes
106
109
  * for changes to propagate. </p>
107
110
  *
111
+ * @throws {@link WAFUnsupportedAggregateKeyTypeException} (client fault)
112
+ * <p>The rule that you've named doesn't aggregate solely on the IP address or solely on the forwarded IP address. This call
113
+ * is only available for rate-based rules with an <code>AggregateKeyType</code> setting of <code>IP</code> or <code>FORWARDED_IP</code>.</p>
114
+ *
108
115
  * @throws {@link WAFV2ServiceException}
109
116
  * <p>Base exception class for all service exceptions from WAFV2 service.</p>
110
117
  *
@@ -418,7 +418,7 @@ export interface GetRuleGroupCommandOutput extends GetRuleGroupResponse, __Metad
418
418
  * // },
419
419
  * // RateBasedStatement: { // RateBasedStatement
420
420
  * // Limit: Number("long"), // required
421
- * // AggregateKeyType: "IP" || "FORWARDED_IP", // required
421
+ * // AggregateKeyType: "IP" || "FORWARDED_IP" || "CUSTOM_KEYS" || "CONSTANT", // required
422
422
  * // ScopeDownStatement: {
423
423
  * // ByteMatchStatement: {
424
424
  * // SearchString: "BLOB_VALUE", // required
@@ -501,12 +501,37 @@ export interface GetRuleGroupCommandOutput extends GetRuleGroupResponse, __Metad
501
501
  * // },
502
502
  * // RateBasedStatement: {
503
503
  * // Limit: Number("long"), // required
504
- * // AggregateKeyType: "IP" || "FORWARDED_IP", // required
504
+ * // AggregateKeyType: "IP" || "FORWARDED_IP" || "CUSTOM_KEYS" || "CONSTANT", // required
505
505
  * // ScopeDownStatement: "<Statement>",
506
506
  * // ForwardedIPConfig: {
507
507
  * // HeaderName: "STRING_VALUE", // required
508
508
  * // FallbackBehavior: "MATCH" || "NO_MATCH", // required
509
509
  * // },
510
+ * // CustomKeys: [ // RateBasedStatementCustomKeys
511
+ * // { // RateBasedStatementCustomKey
512
+ * // Header: { // RateLimitHeader
513
+ * // Name: "STRING_VALUE", // required
514
+ * // TextTransformations: "<TextTransformations>", // required
515
+ * // },
516
+ * // Cookie: { // RateLimitCookie
517
+ * // Name: "STRING_VALUE", // required
518
+ * // TextTransformations: "<TextTransformations>", // required
519
+ * // },
520
+ * // QueryArgument: { // RateLimitQueryArgument
521
+ * // Name: "STRING_VALUE", // required
522
+ * // TextTransformations: "<TextTransformations>", // required
523
+ * // },
524
+ * // QueryString: { // RateLimitQueryString
525
+ * // TextTransformations: "<TextTransformations>", // required
526
+ * // },
527
+ * // HTTPMethod: {},
528
+ * // ForwardedIP: {},
529
+ * // IP: {},
530
+ * // LabelNamespace: { // RateLimitLabelNamespace
531
+ * // Namespace: "STRING_VALUE", // required
532
+ * // },
533
+ * // },
534
+ * // ],
510
535
  * // },
511
536
  * // AndStatement: { // AndStatement
512
537
  * // Statements: [ // Statements // required
@@ -635,6 +660,31 @@ export interface GetRuleGroupCommandOutput extends GetRuleGroupResponse, __Metad
635
660
  * // HeaderName: "STRING_VALUE", // required
636
661
  * // FallbackBehavior: "MATCH" || "NO_MATCH", // required
637
662
  * // },
663
+ * // CustomKeys: [
664
+ * // {
665
+ * // Header: {
666
+ * // Name: "STRING_VALUE", // required
667
+ * // TextTransformations: "<TextTransformations>", // required
668
+ * // },
669
+ * // Cookie: {
670
+ * // Name: "STRING_VALUE", // required
671
+ * // TextTransformations: "<TextTransformations>", // required
672
+ * // },
673
+ * // QueryArgument: {
674
+ * // Name: "STRING_VALUE", // required
675
+ * // TextTransformations: "<TextTransformations>", // required
676
+ * // },
677
+ * // QueryString: {
678
+ * // TextTransformations: "<TextTransformations>", // required
679
+ * // },
680
+ * // HTTPMethod: {},
681
+ * // ForwardedIP: {},
682
+ * // IP: {},
683
+ * // LabelNamespace: {
684
+ * // Namespace: "STRING_VALUE", // required
685
+ * // },
686
+ * // },
687
+ * // ],
638
688
  * // },
639
689
  * // AndStatement: {
640
690
  * // Statements: [ // required