aws-sdk 2.962.0 → 2.966.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 (48) hide show
  1. package/CHANGELOG.md +19 -1
  2. package/README.md +1 -1
  3. package/apis/chime-sdk-identity-2021-04-20.examples.json +5 -0
  4. package/apis/chime-sdk-identity-2021-04-20.min.json +644 -0
  5. package/apis/chime-sdk-identity-2021-04-20.paginators.json +19 -0
  6. package/apis/chime-sdk-messaging-2021-05-15.examples.json +5 -0
  7. package/apis/chime-sdk-messaging-2021-05-15.min.json +1413 -0
  8. package/apis/chime-sdk-messaging-2021-05-15.paginators.json +39 -0
  9. package/apis/codebuild-2016-10-06.examples.json +0 -276
  10. package/apis/codebuild-2016-10-06.min.json +51 -26
  11. package/apis/connect-2017-08-08.min.json +364 -101
  12. package/apis/connect-2017-08-08.paginators.json +6 -0
  13. package/apis/lightsail-2016-11-28.min.json +154 -144
  14. package/apis/metadata.json +12 -0
  15. package/apis/nimble-2020-08-01.min.json +13 -0
  16. package/apis/rekognition-2016-06-27.min.json +51 -30
  17. package/apis/snow-device-management-2021-08-04.examples.json +5 -0
  18. package/apis/snow-device-management-2021-08-04.min.json +638 -0
  19. package/apis/snow-device-management-2021-08-04.paginators.json +28 -0
  20. package/apis/wafv2-2019-07-29.min.json +306 -98
  21. package/clients/all.d.ts +3 -0
  22. package/clients/all.js +4 -1
  23. package/clients/athena.d.ts +28 -28
  24. package/clients/chime.d.ts +17 -14
  25. package/clients/chimesdkidentity.d.ts +591 -0
  26. package/clients/chimesdkidentity.js +18 -0
  27. package/clients/chimesdkmessaging.d.ts +1344 -0
  28. package/clients/chimesdkmessaging.js +18 -0
  29. package/clients/codebuild.d.ts +166 -126
  30. package/clients/connect.d.ts +310 -9
  31. package/clients/ebs.d.ts +10 -10
  32. package/clients/ecs.d.ts +18 -18
  33. package/clients/lightsail.d.ts +19 -1
  34. package/clients/nimble.d.ts +31 -15
  35. package/clients/rekognition.d.ts +59 -26
  36. package/clients/route53.d.ts +57 -57
  37. package/clients/snowdevicemanagement.d.ts +767 -0
  38. package/clients/snowdevicemanagement.js +18 -0
  39. package/clients/ssm.d.ts +110 -110
  40. package/clients/synthetics.d.ts +25 -1
  41. package/clients/wafv2.d.ts +325 -6
  42. package/dist/aws-sdk-core-react-native.js +2 -2
  43. package/dist/aws-sdk-react-native.js +122 -11
  44. package/dist/aws-sdk.js +487 -160
  45. package/dist/aws-sdk.min.js +76 -76
  46. package/lib/config_service_placeholders.d.ts +6 -0
  47. package/lib/core.js +1 -1
  48. package/package.json +1 -1
@@ -118,7 +118,13 @@ declare class Synthetics extends Service {
118
118
  }
119
119
  declare namespace Synthetics {
120
120
  export interface BaseScreenshot {
121
+ /**
122
+ * The name of the screenshot. This is generated the first time the canary is run after the UpdateCanary operation that specified for this canary to perform visual monitoring.
123
+ */
121
124
  ScreenshotName: String;
125
+ /**
126
+ * Coordinates that define the part of a screen to ignore during screenshot comparisons. To obtain the coordinates to use here, use the CloudWatch Logs console to draw the boundaries on the screen. For more information, see {LINK}
127
+ */
122
128
  IgnoreCoordinates?: BaseScreenshotIgnoreCoordinates;
123
129
  }
124
130
  export type BaseScreenshotConfigIgnoreCoordinate = string;
@@ -175,6 +181,9 @@ declare namespace Synthetics {
175
181
  */
176
182
  RuntimeVersion?: String;
177
183
  VpcConfig?: VpcConfigOutput;
184
+ /**
185
+ * If this canary performs visual monitoring by comparing screenshots, this structure contains the ID of the canary run to use as the baseline for screenshots, and the coordinates of any parts of the screen to ignore during the visual monitoring comparison.
186
+ */
178
187
  VisualReference?: VisualReferenceOutput;
179
188
  /**
180
189
  * The list of key-value pairs that are associated with the canary.
@@ -196,7 +205,7 @@ declare namespace Synthetics {
196
205
  */
197
206
  S3Version?: String;
198
207
  /**
199
- * If you input your canary script directly into the canary instead of referring to an S3 location, the value of this parameter is the base64-encoded contents of the .zip file that contains the script. It can be up to 5 MB.
208
+ * If you input your canary script directly into the canary instead of referring to an S3 location, the value of this parameter is the base64-encoded contents of the .zip file that contains the script. It must be smaller than 256 Kb.
200
209
  */
201
210
  ZipFile?: _Blob;
202
211
  /**
@@ -648,16 +657,31 @@ declare namespace Synthetics {
648
657
  * If this canary is to test an endpoint in a VPC, this structure contains information about the subnet and security groups of the VPC endpoint. For more information, see Running a Canary in a VPC.
649
658
  */
650
659
  VpcConfig?: VpcConfigInput;
660
+ /**
661
+ * Defines the screenshots to use as the baseline for comparisons during visual monitoring comparisons during future runs of this canary. If you omit this parameter, no changes are made to any baseline screenshots that the canary might be using already. Visual monitoring is supported only on canaries running the syn-puppeteer-node-3.2 runtime or later. For more information, see Visual monitoring and Visual monitoring blueprint
662
+ */
651
663
  VisualReference?: VisualReferenceInput;
652
664
  }
653
665
  export interface UpdateCanaryResponse {
654
666
  }
655
667
  export interface VisualReferenceInput {
668
+ /**
669
+ * An array of screenshots that will be used as the baseline for visual monitoring in future runs of this canary. If there is a screenshot that you don't want to be used for visual monitoring, remove it from this array.
670
+ */
656
671
  BaseScreenshots?: BaseScreenshots;
672
+ /**
673
+ * Specifies which canary run to use the screenshots from as the baseline for future visual monitoring with this canary. Valid values are nextrun to use the screenshots from the next run after this update is made, lastrun to use the screenshots from the most recent run before this update was made, or the value of Id in the CanaryRun from any past run of this canary.
674
+ */
657
675
  BaseCanaryRunId: String;
658
676
  }
659
677
  export interface VisualReferenceOutput {
678
+ /**
679
+ * An array of screenshots that are used as the baseline for comparisons during visual monitoring.
680
+ */
660
681
  BaseScreenshots?: BaseScreenshots;
682
+ /**
683
+ * The ID of the canary run that produced the screenshots that are used as the baseline for visual monitoring comparisons during future runs of this canary.
684
+ */
661
685
  BaseCanaryRunId?: String;
662
686
  }
663
687
  export interface VpcConfigInput {
@@ -147,6 +147,14 @@ declare class WAFV2 extends Service {
147
147
  * Returns the LoggingConfiguration for the specified web ACL.
148
148
  */
149
149
  getLoggingConfiguration(callback?: (err: AWSError, data: WAFV2.Types.GetLoggingConfigurationResponse) => void): Request<WAFV2.Types.GetLoggingConfigurationResponse, AWSError>;
150
+ /**
151
+ * Retrieves the specified managed rule set. This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Marketplace sellers. Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.
152
+ */
153
+ getManagedRuleSet(params: WAFV2.Types.GetManagedRuleSetRequest, callback?: (err: AWSError, data: WAFV2.Types.GetManagedRuleSetResponse) => void): Request<WAFV2.Types.GetManagedRuleSetResponse, AWSError>;
154
+ /**
155
+ * Retrieves the specified managed rule set. This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Marketplace sellers. Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.
156
+ */
157
+ getManagedRuleSet(callback?: (err: AWSError, data: WAFV2.Types.GetManagedRuleSetResponse) => void): Request<WAFV2.Types.GetManagedRuleSetResponse, AWSError>;
150
158
  /**
151
159
  * Returns the IAM policy that is attached to the specified rule group. You must be the owner of the rule group to perform this operation.
152
160
  */
@@ -204,11 +212,19 @@ declare class WAFV2 extends Service {
204
212
  */
205
213
  getWebACLForResource(callback?: (err: AWSError, data: WAFV2.Types.GetWebACLForResourceResponse) => void): Request<WAFV2.Types.GetWebACLForResourceResponse, AWSError>;
206
214
  /**
207
- * Retrieves an array of managed rule groups that are available for you to use. This list includes all Amazon Web Services Managed Rules rule groups and the Marketplace managed rule groups that you're subscribed to.
215
+ * Returns a list of the available versions for the specified managed rule group.
216
+ */
217
+ listAvailableManagedRuleGroupVersions(params: WAFV2.Types.ListAvailableManagedRuleGroupVersionsRequest, callback?: (err: AWSError, data: WAFV2.Types.ListAvailableManagedRuleGroupVersionsResponse) => void): Request<WAFV2.Types.ListAvailableManagedRuleGroupVersionsResponse, AWSError>;
218
+ /**
219
+ * Returns a list of the available versions for the specified managed rule group.
220
+ */
221
+ listAvailableManagedRuleGroupVersions(callback?: (err: AWSError, data: WAFV2.Types.ListAvailableManagedRuleGroupVersionsResponse) => void): Request<WAFV2.Types.ListAvailableManagedRuleGroupVersionsResponse, AWSError>;
222
+ /**
223
+ * Retrieves an array of managed rule groups that are available for you to use. This list includes all Amazon Web Services Managed Rules rule groups and all of the Marketplace managed rule groups that you're subscribed to.
208
224
  */
209
225
  listAvailableManagedRuleGroups(params: WAFV2.Types.ListAvailableManagedRuleGroupsRequest, callback?: (err: AWSError, data: WAFV2.Types.ListAvailableManagedRuleGroupsResponse) => void): Request<WAFV2.Types.ListAvailableManagedRuleGroupsResponse, AWSError>;
210
226
  /**
211
- * Retrieves an array of managed rule groups that are available for you to use. This list includes all Amazon Web Services Managed Rules rule groups and the Marketplace managed rule groups that you're subscribed to.
227
+ * Retrieves an array of managed rule groups that are available for you to use. This list includes all Amazon Web Services Managed Rules rule groups and all of the Marketplace managed rule groups that you're subscribed to.
212
228
  */
213
229
  listAvailableManagedRuleGroups(callback?: (err: AWSError, data: WAFV2.Types.ListAvailableManagedRuleGroupsResponse) => void): Request<WAFV2.Types.ListAvailableManagedRuleGroupsResponse, AWSError>;
214
230
  /**
@@ -227,6 +243,14 @@ declare class WAFV2 extends Service {
227
243
  * Retrieves an array of your LoggingConfiguration objects.
228
244
  */
229
245
  listLoggingConfigurations(callback?: (err: AWSError, data: WAFV2.Types.ListLoggingConfigurationsResponse) => void): Request<WAFV2.Types.ListLoggingConfigurationsResponse, AWSError>;
246
+ /**
247
+ * Retrieves the managed rule sets that you own. This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Marketplace sellers. Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.
248
+ */
249
+ listManagedRuleSets(params: WAFV2.Types.ListManagedRuleSetsRequest, callback?: (err: AWSError, data: WAFV2.Types.ListManagedRuleSetsResponse) => void): Request<WAFV2.Types.ListManagedRuleSetsResponse, AWSError>;
250
+ /**
251
+ * Retrieves the managed rule sets that you own. This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Marketplace sellers. Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.
252
+ */
253
+ listManagedRuleSets(callback?: (err: AWSError, data: WAFV2.Types.ListManagedRuleSetsResponse) => void): Request<WAFV2.Types.ListManagedRuleSetsResponse, AWSError>;
230
254
  /**
231
255
  * Retrieves an array of RegexPatternSetSummary objects for the regex pattern sets that you manage.
232
256
  */
@@ -275,6 +299,14 @@ declare class WAFV2 extends Service {
275
299
  * Enables the specified LoggingConfiguration, to start logging from a web ACL, according to the configuration provided. You can access information about all traffic that WAF inspects using the following steps: Create an Amazon Kinesis Data Firehose. Create the data firehose with a PUT source and in the Region that you are operating. If you are capturing logs for Amazon CloudFront, always create the firehose in US East (N. Virginia). Give the data firehose a name that starts with the prefix aws-waf-logs-. For example, aws-waf-logs-us-east-2-analytics. Do not create the data firehose using a Kinesis stream as your source. Associate that firehose to your web ACL using a PutLoggingConfiguration request. When you successfully enable logging using a PutLoggingConfiguration request, WAF will create a service linked role with the necessary permissions to write logs to the Amazon Kinesis Data Firehose. For more information, see Logging Web ACL Traffic Information in the WAF Developer Guide. This operation completely replaces the mutable specifications that you already have for the logging configuration with the ones that you provide to this call. To modify the logging configuration, retrieve it by calling GetLoggingConfiguration, update the settings as needed, and then provide the complete logging configuration specification to this call.
276
300
  */
277
301
  putLoggingConfiguration(callback?: (err: AWSError, data: WAFV2.Types.PutLoggingConfigurationResponse) => void): Request<WAFV2.Types.PutLoggingConfigurationResponse, AWSError>;
302
+ /**
303
+ * Defines the versions of your managed rule set that you are offering to the customers. Customers see your offerings as managed rule groups with versioning. This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Marketplace sellers. Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate. Customers retrieve their managed rule group list by calling ListAvailableManagedRuleGroups. The name that you provide here for your managed rule set is the name the customer sees for the corresponding managed rule group. Customers can retrieve the available versions for a managed rule group by calling ListAvailableManagedRuleGroupVersions. You provide a rule group specification for each version. For each managed rule set, you must specify a version that you recommend using. To initiate the expiration of a managed rule group version, use UpdateManagedRuleSetVersionExpiryDate.
304
+ */
305
+ putManagedRuleSetVersions(params: WAFV2.Types.PutManagedRuleSetVersionsRequest, callback?: (err: AWSError, data: WAFV2.Types.PutManagedRuleSetVersionsResponse) => void): Request<WAFV2.Types.PutManagedRuleSetVersionsResponse, AWSError>;
306
+ /**
307
+ * Defines the versions of your managed rule set that you are offering to the customers. Customers see your offerings as managed rule groups with versioning. This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Marketplace sellers. Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate. Customers retrieve their managed rule group list by calling ListAvailableManagedRuleGroups. The name that you provide here for your managed rule set is the name the customer sees for the corresponding managed rule group. Customers can retrieve the available versions for a managed rule group by calling ListAvailableManagedRuleGroupVersions. You provide a rule group specification for each version. For each managed rule set, you must specify a version that you recommend using. To initiate the expiration of a managed rule group version, use UpdateManagedRuleSetVersionExpiryDate.
308
+ */
309
+ putManagedRuleSetVersions(callback?: (err: AWSError, data: WAFV2.Types.PutManagedRuleSetVersionsResponse) => void): Request<WAFV2.Types.PutManagedRuleSetVersionsResponse, AWSError>;
278
310
  /**
279
311
  * Attaches an IAM policy to the specified resource. Use this to share a rule group across accounts. You must be the owner of the rule group to perform this operation. This action is subject to the following restrictions: You can attach only one policy with each PutPermissionPolicy request. The ARN in the request must be a valid WAF RuleGroup ARN and the rule group must exist in the same Region. The user making the request must be the owner of the rule group.
280
312
  */
@@ -307,6 +339,14 @@ declare class WAFV2 extends Service {
307
339
  * Updates the specified IPSet. This operation completely replaces the mutable specifications that you already have for the IP set with the ones that you provide to this call. To modify the IP set, retrieve it by calling GetIPSet, update the settings as needed, and then provide the complete IP set specification to this call.
308
340
  */
309
341
  updateIPSet(callback?: (err: AWSError, data: WAFV2.Types.UpdateIPSetResponse) => void): Request<WAFV2.Types.UpdateIPSetResponse, AWSError>;
342
+ /**
343
+ * Updates the expiration information for your managed rule set. Use this to initiate the expiration of a managed rule group version. After you initiate expiration for a version, WAF excludes it from the reponse to ListAvailableManagedRuleGroupVersions for the managed rule group. This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Marketplace sellers. Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.
344
+ */
345
+ updateManagedRuleSetVersionExpiryDate(params: WAFV2.Types.UpdateManagedRuleSetVersionExpiryDateRequest, callback?: (err: AWSError, data: WAFV2.Types.UpdateManagedRuleSetVersionExpiryDateResponse) => void): Request<WAFV2.Types.UpdateManagedRuleSetVersionExpiryDateResponse, AWSError>;
346
+ /**
347
+ * Updates the expiration information for your managed rule set. Use this to initiate the expiration of a managed rule group version. After you initiate expiration for a version, WAF excludes it from the reponse to ListAvailableManagedRuleGroupVersions for the managed rule group. This is intended for use only by vendors of managed rule sets. Vendors are Amazon Web Services and Marketplace sellers. Vendors, you can use the managed rule set APIs to provide controlled rollout of your versioned managed rule group offerings for your customers. The APIs are ListManagedRuleSets, GetManagedRuleSet, PutManagedRuleSetVersions, and UpdateManagedRuleSetVersionExpiryDate.
348
+ */
349
+ updateManagedRuleSetVersionExpiryDate(callback?: (err: AWSError, data: WAFV2.Types.UpdateManagedRuleSetVersionExpiryDateResponse) => void): Request<WAFV2.Types.UpdateManagedRuleSetVersionExpiryDateResponse, AWSError>;
310
350
  /**
311
351
  * Updates the specified RegexPatternSet. This operation completely replaces the mutable specifications that you already have for the regex pattern set with the ones that you provide to this call. To modify the regex pattern set, retrieve it by calling GetRegexPatternSet, update the settings as needed, and then provide the complete regex pattern set specification to this call.
312
352
  */
@@ -450,7 +490,7 @@ declare namespace WAFV2 {
450
490
  */
451
491
  Description?: EntityDescription;
452
492
  /**
453
- * Specify IPV4 or IPV6.
493
+ * The version of the IP addresses, either IPV4 or IPV6.
454
494
  */
455
495
  IPAddressVersion: IPAddressVersion;
456
496
  /**
@@ -755,8 +795,20 @@ declare namespace WAFV2 {
755
795
  * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. API and SDKs - For all calls, use the Region endpoint us-east-1.
756
796
  */
757
797
  Scope: Scope;
798
+ /**
799
+ * The version of the rule group. You can only use a version that is not scheduled for expiration. If you don't provide this, WAF uses the vendor's default version.
800
+ */
801
+ VersionName?: VersionKeyString;
758
802
  }
759
803
  export interface DescribeManagedRuleGroupResponse {
804
+ /**
805
+ * The managed rule group's version.
806
+ */
807
+ VersionName?: VersionKeyString;
808
+ /**
809
+ * The Amazon resource name (ARN) of the Amazon Simple Notification Service SNS topic that's used to record changes to the managed rule group. You can subscribe to the SNS topic to receive notifications when the managed rule group is modified, such as for new versions and for version expiration. For more information, see the Amazon Simple Notification Service Developer Guide.
810
+ */
811
+ SnsTopicArn?: ResourceArn;
760
812
  /**
761
813
  * The web ACL capacity units (WCUs) required for this rule group. WAF uses web ACL capacity units (WCU) to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. WAF calculates capacity differently for each rule type, to reflect each rule's relative cost. Rule group capacity is fixed at creation, so users can plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
762
814
  */
@@ -940,6 +992,30 @@ declare namespace WAFV2 {
940
992
  */
941
993
  LoggingConfiguration?: LoggingConfiguration;
942
994
  }
995
+ export interface GetManagedRuleSetRequest {
996
+ /**
997
+ * The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. This name is assigned to the corresponding managed rule group, which your customers can access and use.
998
+ */
999
+ Name: EntityName;
1000
+ /**
1001
+ * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. API and SDKs - For all calls, use the Region endpoint us-east-1.
1002
+ */
1003
+ Scope: Scope;
1004
+ /**
1005
+ * A unique identifier for the managed rule set. The ID is returned in the responses to commands like list. You provide it to operations like get and update.
1006
+ */
1007
+ Id: EntityId;
1008
+ }
1009
+ export interface GetManagedRuleSetResponse {
1010
+ /**
1011
+ * The managed rule set that you requested.
1012
+ */
1013
+ ManagedRuleSet?: ManagedRuleSet;
1014
+ /**
1015
+ * A token used for optimistic locking. WAF returns a token to your get and list requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like update and delete. WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a WAFOptimisticLockException. If this happens, perform another get, and use the new token returned by that operation.
1016
+ */
1017
+ LockToken?: LockToken;
1018
+ }
943
1019
  export interface GetPermissionPolicyRequest {
944
1020
  /**
945
1021
  * The Amazon Resource Name (ARN) of the rule group for which you want to get the policy.
@@ -1166,7 +1242,7 @@ declare namespace WAFV2 {
1166
1242
  */
1167
1243
  Description?: EntityDescription;
1168
1244
  /**
1169
- * Specify IPV4 or IPV6.
1245
+ * The version of the IP addresses, either IPV4 or IPV6.
1170
1246
  */
1171
1247
  IPAddressVersion: IPAddressVersion;
1172
1248
  /**
@@ -1232,7 +1308,7 @@ declare namespace WAFV2 {
1232
1308
  */
1233
1309
  MatchScope: JsonMatchScope;
1234
1310
  /**
1235
- * What WAF should do if it fails to completely parse the JSON body. The options are the following: EVALUATE_AS_STRING - Inspect the body as plain text. WAF applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string. MATCH - Treat the web request as matching the rule statement. WAF applies the rule action to the request. NO_MATCH - Treat the web request as not matching the rule statement. If you don't provide this setting, WAF parses and evaluates the content only up to the first parsing failure that it encounters. WAF does its best to parse the entire JSON body, but might be forced to stop for reasons such as characters that aren't valid, duplicate keys, truncation, and any content whose root node isn't an object or an array. WAF parses the JSON in the following examples as two valid key, value pairs: Missing comma: {"key1":"value1""key2":"value2"} Missing colon: {"key1":"value1","key2""value2"} Extra colons: {"key1"::"value1","key2""value2"}
1311
+ * What WAF should do if it fails to completely parse the JSON body. The options are the following: EVALUATE_AS_STRING - Inspect the body as plain text. WAF applies the text transformations and inspection criteria that you defined for the JSON inspection to the body text string. MATCH - Treat the web request as matching the rule statement. WAF applies the rule action to the request. NO_MATCH - Treat the web request as not matching the rule statement. If you don't provide this setting, WAF parses and evaluates the content only up to the first parsing failure that it encounters. WAF does its best to parse the entire JSON body, but might be forced to stop for reasons such as invalid characters, duplicate keys, truncation, and any content whose root node isn't an object or an array. WAF parses the JSON in the following examples as two valid key, value pairs: Missing comma: {"key1":"value1""key2":"value2"} Missing colon: {"key1":"value1","key2""value2"} Extra colons: {"key1"::"value1","key2""value2"}
1236
1312
  */
1237
1313
  InvalidFallbackBehavior?: BodyParsingFallbackBehavior;
1238
1314
  }
@@ -1282,6 +1358,38 @@ declare namespace WAFV2 {
1282
1358
  Name?: LabelName;
1283
1359
  }
1284
1360
  export type Labels = Label[];
1361
+ export interface ListAvailableManagedRuleGroupVersionsRequest {
1362
+ /**
1363
+ * The name of the managed rule group vendor. You use this, along with the rule group name, to identify the rule group.
1364
+ */
1365
+ VendorName: VendorName;
1366
+ /**
1367
+ * The name of the managed rule group. You use this, along with the vendor name, to identify the rule group.
1368
+ */
1369
+ Name: EntityName;
1370
+ /**
1371
+ * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. API and SDKs - For all calls, use the Region endpoint us-east-1.
1372
+ */
1373
+ Scope: Scope;
1374
+ /**
1375
+ * When you request a list of objects with a Limit setting, if the number of objects that are still available for retrieval exceeds the limit, WAF returns a NextMarker value in the response. To retrieve the next batch of objects, provide the marker from the prior call in your next request.
1376
+ */
1377
+ NextMarker?: NextMarker;
1378
+ /**
1379
+ * The maximum number of objects that you want WAF to return for this request. If more objects are available, in the response, WAF provides a NextMarker value that you can use in a subsequent call to get the next batch of objects.
1380
+ */
1381
+ Limit?: PaginationLimit;
1382
+ }
1383
+ export interface ListAvailableManagedRuleGroupVersionsResponse {
1384
+ /**
1385
+ * When you request a list of objects with a Limit setting, if the number of objects that are still available for retrieval exceeds the limit, WAF returns a NextMarker value in the response. To retrieve the next batch of objects, provide the marker from the prior call in your next request.
1386
+ */
1387
+ NextMarker?: NextMarker;
1388
+ /**
1389
+ * The versions that are currently available for the specified managed rule group.
1390
+ */
1391
+ Versions?: ManagedRuleGroupVersions;
1392
+ }
1285
1393
  export interface ListAvailableManagedRuleGroupsRequest {
1286
1394
  /**
1287
1395
  * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. API and SDKs - For all calls, use the Region endpoint us-east-1.
@@ -1354,6 +1462,30 @@ declare namespace WAFV2 {
1354
1462
  */
1355
1463
  NextMarker?: NextMarker;
1356
1464
  }
1465
+ export interface ListManagedRuleSetsRequest {
1466
+ /**
1467
+ * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. API and SDKs - For all calls, use the Region endpoint us-east-1.
1468
+ */
1469
+ Scope: Scope;
1470
+ /**
1471
+ * When you request a list of objects with a Limit setting, if the number of objects that are still available for retrieval exceeds the limit, WAF returns a NextMarker value in the response. To retrieve the next batch of objects, provide the marker from the prior call in your next request.
1472
+ */
1473
+ NextMarker?: NextMarker;
1474
+ /**
1475
+ * The maximum number of objects that you want WAF to return for this request. If more objects are available, in the response, WAF provides a NextMarker value that you can use in a subsequent call to get the next batch of objects.
1476
+ */
1477
+ Limit?: PaginationLimit;
1478
+ }
1479
+ export interface ListManagedRuleSetsResponse {
1480
+ /**
1481
+ * When you request a list of objects with a Limit setting, if the number of objects that are still available for retrieval exceeds the limit, WAF returns a NextMarker value in the response. To retrieve the next batch of objects, provide the marker from the prior call in your next request.
1482
+ */
1483
+ NextMarker?: NextMarker;
1484
+ /**
1485
+ * Your managed rule sets.
1486
+ */
1487
+ ManagedRuleSets?: ManagedRuleSetSummaries;
1488
+ }
1357
1489
  export type ListMaxItems = number;
1358
1490
  export interface ListRegexPatternSetsRequest {
1359
1491
  /**
@@ -1511,6 +1643,10 @@ declare namespace WAFV2 {
1511
1643
  * The name of the managed rule group. You use this, along with the vendor name, to identify the rule group.
1512
1644
  */
1513
1645
  Name: EntityName;
1646
+ /**
1647
+ * The version of the managed rule group to use. If you specify this, the version setting is fixed until you change it. If you don't specify this, WAF uses the vendor's default version, and then keeps the version at the vendor's default when the vendor updates the managed rule group settings.
1648
+ */
1649
+ Version?: VersionKeyString;
1514
1650
  /**
1515
1651
  * The rules whose actions are set to COUNT by the web ACL, regardless of the action that is set on the rule. This effectively excludes the rule from acting on web requests.
1516
1652
  */
@@ -1535,6 +1671,100 @@ declare namespace WAFV2 {
1535
1671
  */
1536
1672
  Description?: EntityDescription;
1537
1673
  }
1674
+ export interface ManagedRuleGroupVersion {
1675
+ /**
1676
+ * The version name.
1677
+ */
1678
+ Name?: VersionKeyString;
1679
+ /**
1680
+ * The date and time that the managed rule group owner updated the rule group version information.
1681
+ */
1682
+ LastUpdateTimestamp?: Timestamp;
1683
+ }
1684
+ export type ManagedRuleGroupVersions = ManagedRuleGroupVersion[];
1685
+ export interface ManagedRuleSet {
1686
+ /**
1687
+ * The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. This name is assigned to the corresponding managed rule group, which your customers can access and use.
1688
+ */
1689
+ Name: EntityName;
1690
+ /**
1691
+ * A unique identifier for the managed rule set. The ID is returned in the responses to commands like list. You provide it to operations like get and update.
1692
+ */
1693
+ Id: EntityId;
1694
+ /**
1695
+ * The Amazon Resource Name (ARN) of the entity.
1696
+ */
1697
+ ARN: ResourceArn;
1698
+ /**
1699
+ * A description of the set that helps with identification.
1700
+ */
1701
+ Description?: EntityDescription;
1702
+ /**
1703
+ * The versions of this managed rule set that are available for use by customers.
1704
+ */
1705
+ PublishedVersions?: PublishedVersions;
1706
+ /**
1707
+ * The version that you would like your customers to use.
1708
+ */
1709
+ RecommendedVersion?: VersionKeyString;
1710
+ /**
1711
+ * The label namespace prefix for the managed rule groups that are offered to customers from this managed rule set. All labels that are added by rules in the managed rule group have this prefix. The syntax for the label namespace prefix for a managed rule group is the following: awswaf:managed:&lt;vendor&gt;:&lt;rule group name&gt;: When a rule with a label matches a web request, WAF adds the fully qualified label to the request. A fully qualified label is made up of the label namespace from the rule group or web ACL where the rule is defined and the label from the rule, separated by a colon: &lt;label namespace&gt;:&lt;label from rule&gt;
1712
+ */
1713
+ LabelNamespace?: LabelName;
1714
+ }
1715
+ export type ManagedRuleSetSummaries = ManagedRuleSetSummary[];
1716
+ export interface ManagedRuleSetSummary {
1717
+ /**
1718
+ * The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. This name is assigned to the corresponding managed rule group, which your customers can access and use.
1719
+ */
1720
+ Name?: EntityName;
1721
+ /**
1722
+ * A unique identifier for the managed rule set. The ID is returned in the responses to commands like list. You provide it to operations like get and update.
1723
+ */
1724
+ Id?: EntityId;
1725
+ /**
1726
+ * A description of the set that helps with identification.
1727
+ */
1728
+ Description?: EntityDescription;
1729
+ /**
1730
+ * A token used for optimistic locking. WAF returns a token to your get and list requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like update and delete. WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a WAFOptimisticLockException. If this happens, perform another get, and use the new token returned by that operation.
1731
+ */
1732
+ LockToken?: LockToken;
1733
+ /**
1734
+ * The Amazon Resource Name (ARN) of the entity.
1735
+ */
1736
+ ARN?: ResourceArn;
1737
+ /**
1738
+ * The label namespace prefix for the managed rule groups that are offered to customers from this managed rule set. All labels that are added by rules in the managed rule group have this prefix. The syntax for the label namespace prefix for a managed rule group is the following: awswaf:managed:&lt;vendor&gt;:&lt;rule group name&gt;: When a rule with a label matches a web request, WAF adds the fully qualified label to the request. A fully qualified label is made up of the label namespace from the rule group or web ACL where the rule is defined and the label from the rule, separated by a colon: &lt;label namespace&gt;:&lt;label from rule&gt;
1739
+ */
1740
+ LabelNamespace?: LabelName;
1741
+ }
1742
+ export interface ManagedRuleSetVersion {
1743
+ /**
1744
+ * The Amazon Resource Name (ARN) of the vendor rule group that's used to define the published version of your managed rule group.
1745
+ */
1746
+ AssociatedRuleGroupArn?: ResourceArn;
1747
+ /**
1748
+ * The web ACL capacity units (WCUs) required for this rule group. WAF uses WCUs to calculate and control the operating resources that are used to run your rules, rule groups, and web ACLs. WAF calculates capacity differently for each rule type, to reflect the relative cost of each rule. Simple rules that cost little to run use fewer WCUs than more complex rules that use more processing power. Rule group capacity is fixed at creation, which helps users plan their web ACL WCU usage when they use a rule group. The WCU limit for web ACLs is 1,500.
1749
+ */
1750
+ Capacity?: CapacityUnit;
1751
+ /**
1752
+ * The amount of time you expect this version of your managed rule group to last, in days.
1753
+ */
1754
+ ForecastedLifetime?: TimeWindowDay;
1755
+ /**
1756
+ * The time that you first published this version. Times are in Coordinated Universal Time (UTC) format. UTC format includes the special designator, Z. For example, "2016-09-27T14:50Z".
1757
+ */
1758
+ PublishTimestamp?: Timestamp;
1759
+ /**
1760
+ * The last time that you updated this version. Times are in Coordinated Universal Time (UTC) format. UTC format includes the special designator, Z. For example, "2016-09-27T14:50Z".
1761
+ */
1762
+ LastUpdateTimestamp?: Timestamp;
1763
+ /**
1764
+ * The time that this version is set to expire. Times are in Coordinated Universal Time (UTC) format. UTC format includes the special designator, Z. For example, "2016-09-27T14:50Z".
1765
+ */
1766
+ ExpiryTimestamp?: Timestamp;
1767
+ }
1538
1768
  export interface Method {
1539
1769
  }
1540
1770
  export type MetricName = string;
@@ -1567,6 +1797,7 @@ declare namespace WAFV2 {
1567
1797
  export type PolicyString = string;
1568
1798
  export type PopulationSize = number;
1569
1799
  export type PositionalConstraint = "EXACTLY"|"STARTS_WITH"|"ENDS_WITH"|"CONTAINS"|"CONTAINS_WORD"|string;
1800
+ export type PublishedVersions = {[key: string]: ManagedRuleSetVersion};
1570
1801
  export interface PutLoggingConfigurationRequest {
1571
1802
  /**
1572
1803
  *
@@ -1579,6 +1810,38 @@ declare namespace WAFV2 {
1579
1810
  */
1580
1811
  LoggingConfiguration?: LoggingConfiguration;
1581
1812
  }
1813
+ export interface PutManagedRuleSetVersionsRequest {
1814
+ /**
1815
+ * The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. This name is assigned to the corresponding managed rule group, which your customers can access and use.
1816
+ */
1817
+ Name: EntityName;
1818
+ /**
1819
+ * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. API and SDKs - For all calls, use the Region endpoint us-east-1.
1820
+ */
1821
+ Scope: Scope;
1822
+ /**
1823
+ * A unique identifier for the managed rule set. The ID is returned in the responses to commands like list. You provide it to operations like get and update.
1824
+ */
1825
+ Id: EntityId;
1826
+ /**
1827
+ * A token used for optimistic locking. WAF returns a token to your get and list requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like update and delete. WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a WAFOptimisticLockException. If this happens, perform another get, and use the new token returned by that operation.
1828
+ */
1829
+ LockToken: LockToken;
1830
+ /**
1831
+ * The version of the named managed rule group that you'd like your customers to choose, from among your version offerings.
1832
+ */
1833
+ RecommendedVersion?: VersionKeyString;
1834
+ /**
1835
+ * The versions of the named managed rule group that you want to offer to your customers.
1836
+ */
1837
+ VersionsToPublish?: VersionsToPublish;
1838
+ }
1839
+ export interface PutManagedRuleSetVersionsResponse {
1840
+ /**
1841
+ * A token used for optimistic locking. WAF returns a token to your get and list requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like update and delete. WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a WAFOptimisticLockException. If this happens, perform another get, and use the new token returned by that operation.
1842
+ */
1843
+ NextLockToken?: LockToken;
1844
+ }
1582
1845
  export interface PutPermissionPolicyRequest {
1583
1846
  /**
1584
1847
  * The Amazon Resource Name (ARN) of the RuleGroup to which you want to attach the policy.
@@ -1613,6 +1876,9 @@ declare namespace WAFV2 {
1613
1876
  }
1614
1877
  export type RateBasedStatementAggregateKeyType = "IP"|"FORWARDED_IP"|string;
1615
1878
  export interface RateBasedStatementManagedKeysIPSet {
1879
+ /**
1880
+ * The version of the IP addresses, either IPV4 or IPV6.
1881
+ */
1616
1882
  IPAddressVersion?: IPAddressVersion;
1617
1883
  /**
1618
1884
  * The IP addresses that are currently blocked.
@@ -2010,7 +2276,7 @@ declare namespace WAFV2 {
2010
2276
  */
2011
2277
  Priority: TextTransformationPriority;
2012
2278
  /**
2013
- * You can specify the following transformation types: BASE64_DECODE - Decode a Base64-encoded string. BASE64_DECODE_EXT - Decode a Base64-encoded string, but use a forgiving implementation that ignores characters that aren't valid. CMD_LINE - Command-line transformations. These are helpful in reducing effectiveness of attackers who inject an operating system command-line command and use unusual formatting to disguise some or all of the command. Delete the following characters: \ " ' ^ Delete spaces before the following characters: / ( Replace the following characters with a space: , ; Replace multiple spaces with one space Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE - Replace these characters with a space character (decimal 32): \f, formfeed, decimal 12 \t, tab, decimal 9 \n, newline, decimal 10 \r, carriage return, decimal 13 \v, vertical tab, decimal 11 Non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. CSS_DECODE - Decode characters that were encoded using CSS 2.x escape rules syndata.html#characters. This function uses up to two bytes in the decoding process, so it can help to uncover ASCII characters that were encoded using CSS encoding that wouldn’t typically be encoded. It's also useful in countering evasion, which is a combination of a backslash and non-hexadecimal characters. For example, ja\vascript for javascript. ESCAPE_SEQ_DECODE - Decode the following ANSI C escape sequences: \a, \b, \f, \n, \r, \t, \v, \\, \?, \', \", \xHH (hexadecimal), \0OOO (octal). Encodings that aren't valid remain in the output. HEX_DECODE - Decode a string of hexadecimal characters into a binary. HTML_ENTITY_DECODE - Replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs these operations: Replaces (ampersand)quot; with " Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 Replaces (ampersand)lt; with a "less than" symbol Replaces (ampersand)gt; with &gt; Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, with the corresponding characters Replaces characters that are represented in decimal format, (ampersand)#nnnn;, with the corresponding characters JS_DECODE - Decode JavaScript escape sequences. If a \ u HHHH code is in the full-width ASCII code range of FF01-FF5E, then the higher byte is used to detect and adjust the lower byte. If not, only the lower byte is used and the higher byte is zeroed, causing a possible loss of information. LOWERCASE - Convert uppercase letters (A-Z) to lowercase (a-z). MD5 - Calculate an MD5 hash from the data in the input. The computed hash is in a raw binary form. NONE - Specify NONE if you don't want any text transformations. NORMALIZE_PATH - Remove multiple slashes, directory self-references, and directory back-references that are not at the beginning of the input from an input string. NORMALIZE_PATH_WIN - This is the same as NORMALIZE_PATH, but first converts backslash characters to forward slashes. REMOVE_NULLS - Remove all NULL bytes from the input. REPLACE_COMMENTS - Replace each occurrence of a C-style comment (/* ... *) with a single space. Multiple consecutive occurrences are not compressed. Unterminated comments are also replaced with a space (ASCII 0x20). However, a standalone termination of a comment (*) is not acted upon. REPLACE_NULLS - Replace NULL bytes in the input with space characters (ASCII 0x20). SQL_HEX_DECODE - Decode the following ANSI C escape sequences: \a, \b, \f, \n, \r, \t, \v, \\, \?, \', \", \xHH (hexadecimal), \0OOO (octal). Encodings that aren't valid remain in the output. URL_DECODE - Decode a URL-encoded value. URL_DECODE_UNI - Like URL_DECODE, but with support for Microsoft-specific %u encoding. If the code is in the full-width ASCII code range of FF01-FF5E, the higher byte is used to detect and adjust the lower byte. Otherwise, only the lower byte is used and the higher byte is zeroed. UTF8_TO_UNICODE - Convert all UTF-8 character sequences to Unicode. This helps input normalization, and minimizing false-positives and false-negatives for non-English languages.
2279
+ * You can specify the following transformation types: BASE64_DECODE - Decode a Base64-encoded string. BASE64_DECODE_EXT - Decode a Base64-encoded string, but use a forgiving implementation that ignores characters that aren't valid. CMD_LINE - Command-line transformations. These are helpful in reducing effectiveness of attackers who inject an operating system command-line command and use unusual formatting to disguise some or all of the command. Delete the following characters: \ " ' ^ Delete spaces before the following characters: / ( Replace the following characters with a space: , ; Replace multiple spaces with one space Convert uppercase letters (A-Z) to lowercase (a-z) COMPRESS_WHITE_SPACE - Replace these characters with a space character (decimal 32): \f, formfeed, decimal 12 \t, tab, decimal 9 \n, newline, decimal 10 \r, carriage return, decimal 13 \v, vertical tab, decimal 11 Non-breaking space, decimal 160 COMPRESS_WHITE_SPACE also replaces multiple spaces with one space. CSS_DECODE - Decode characters that were encoded using CSS 2.x escape rules syndata.html#characters. This function uses up to two bytes in the decoding process, so it can help to uncover ASCII characters that were encoded using CSS encoding that wouldn’t typically be encoded. It's also useful in countering evasion, which is a combination of a backslash and non-hexadecimal characters. For example, ja\vascript for javascript. ESCAPE_SEQ_DECODE - Decode the following ANSI C escape sequences: \a, \b, \f, \n, \r, \t, \v, \\, \?, \', \", \xHH (hexadecimal), \0OOO (octal). Encodings that aren't valid remain in the output. HEX_DECODE - Decode a string of hexadecimal characters into a binary. HTML_ENTITY_DECODE - Replace HTML-encoded characters with unencoded characters. HTML_ENTITY_DECODE performs these operations: Replaces (ampersand)quot; with " Replaces (ampersand)nbsp; with a non-breaking space, decimal 160 Replaces (ampersand)lt; with a "less than" symbol Replaces (ampersand)gt; with &gt; Replaces characters that are represented in hexadecimal format, (ampersand)#xhhhh;, with the corresponding characters Replaces characters that are represented in decimal format, (ampersand)#nnnn;, with the corresponding characters JS_DECODE - Decode JavaScript escape sequences. If a \ u HHHH code is in the full-width ASCII code range of FF01-FF5E, then the higher byte is used to detect and adjust the lower byte. If not, only the lower byte is used and the higher byte is zeroed, causing a possible loss of information. LOWERCASE - Convert uppercase letters (A-Z) to lowercase (a-z). MD5 - Calculate an MD5 hash from the data in the input. The computed hash is in a raw binary form. NONE - Specify NONE if you don't want any text transformations. NORMALIZE_PATH - Remove multiple slashes, directory self-references, and directory back-references that are not at the beginning of the input from an input string. NORMALIZE_PATH_WIN - This is the same as NORMALIZE_PATH, but first converts backslash characters to forward slashes. REMOVE_NULLS - Remove all NULL bytes from the input. REPLACE_COMMENTS - Replace each occurrence of a C-style comment (/* ... *) with a single space. Multiple consecutive occurrences are not compressed. Unterminated comments are also replaced with a space (ASCII 0x20). However, a standalone termination of a comment (*) is not acted upon. REPLACE_NULLS - Replace NULL bytes in the input with space characters (ASCII 0x20). SQL_HEX_DECODE - Decode SQL hex data. Example (0x414243) will be decoded to (ABC). URL_DECODE - Decode a URL-encoded value. URL_DECODE_UNI - Like URL_DECODE, but with support for Microsoft-specific %u encoding. If the code is in the full-width ASCII code range of FF01-FF5E, the higher byte is used to detect and adjust the lower byte. Otherwise, only the lower byte is used and the higher byte is zeroed. UTF8_TO_UNICODE - Convert all UTF-8 character sequences to Unicode. This helps input normalization, and minimizing false-positives and false-negatives for non-English languages.
2014
2280
  */
2015
2281
  Type: TextTransformationType;
2016
2282
  }
@@ -2027,6 +2293,7 @@ declare namespace WAFV2 {
2027
2293
  */
2028
2294
  EndTime: Timestamp;
2029
2295
  }
2296
+ export type TimeWindowDay = number;
2030
2297
  export type Timestamp = Date;
2031
2298
  export type URIString = string;
2032
2299
  export interface UntagResourceRequest {
@@ -2073,6 +2340,46 @@ declare namespace WAFV2 {
2073
2340
  */
2074
2341
  NextLockToken?: LockToken;
2075
2342
  }
2343
+ export interface UpdateManagedRuleSetVersionExpiryDateRequest {
2344
+ /**
2345
+ * The name of the managed rule set. You use this, along with the rule set ID, to identify the rule set. This name is assigned to the corresponding managed rule group, which your customers can access and use.
2346
+ */
2347
+ Name: EntityName;
2348
+ /**
2349
+ * Specifies whether this is for an Amazon CloudFront distribution or for a regional application. A regional application can be an Application Load Balancer (ALB), an Amazon API Gateway REST API, or an AppSync GraphQL API. To work with CloudFront, you must also specify the Region US East (N. Virginia) as follows: CLI - Specify the Region when you use the CloudFront scope: --scope=CLOUDFRONT --region=us-east-1. API and SDKs - For all calls, use the Region endpoint us-east-1.
2350
+ */
2351
+ Scope: Scope;
2352
+ /**
2353
+ * A unique identifier for the managed rule set. The ID is returned in the responses to commands like list. You provide it to operations like get and update.
2354
+ */
2355
+ Id: EntityId;
2356
+ /**
2357
+ * A token used for optimistic locking. WAF returns a token to your get and list requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like update and delete. WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a WAFOptimisticLockException. If this happens, perform another get, and use the new token returned by that operation.
2358
+ */
2359
+ LockToken: LockToken;
2360
+ /**
2361
+ * The version that you want to remove from your list of offerings for the named managed rule group.
2362
+ */
2363
+ VersionToExpire: VersionKeyString;
2364
+ /**
2365
+ * The time that you want the version to expire. Times are in Coordinated Universal Time (UTC) format. UTC format includes the special designator, Z. For example, "2016-09-27T14:50Z".
2366
+ */
2367
+ ExpiryTimestamp: Timestamp;
2368
+ }
2369
+ export interface UpdateManagedRuleSetVersionExpiryDateResponse {
2370
+ /**
2371
+ * The version that is set to expire.
2372
+ */
2373
+ ExpiringVersion?: VersionKeyString;
2374
+ /**
2375
+ * The time that the version will expire. Times are in Coordinated Universal Time (UTC) format. UTC format includes the special designator, Z. For example, "2016-09-27T14:50Z".
2376
+ */
2377
+ ExpiryTimestamp?: Timestamp;
2378
+ /**
2379
+ * A token used for optimistic locking. WAF returns a token to your get and list requests, to mark the state of the entity at the time of the request. To make changes to the entity associated with the token, you provide the token to operations like update and delete. WAF uses the token to ensure that no changes have been made to the entity since you last retrieved it. If a change has been made, the update fails with a WAFOptimisticLockException. If this happens, perform another get, and use the new token returned by that operation.
2380
+ */
2381
+ NextLockToken?: LockToken;
2382
+ }
2076
2383
  export interface UpdateRegexPatternSetRequest {
2077
2384
  /**
2078
2385
  * The name of the set. You cannot change the name after you create the set.
@@ -2192,6 +2499,18 @@ declare namespace WAFV2 {
2192
2499
  export interface UriPath {
2193
2500
  }
2194
2501
  export type VendorName = string;
2502
+ export type VersionKeyString = string;
2503
+ export interface VersionToPublish {
2504
+ /**
2505
+ * The Amazon Resource Name (ARN) of the vendor's rule group that's used in the published managed rule group version.
2506
+ */
2507
+ AssociatedRuleGroupArn?: ResourceArn;
2508
+ /**
2509
+ * The amount of time the vendor expects this version of the managed rule group to last, in days.
2510
+ */
2511
+ ForecastedLifetime?: TimeWindowDay;
2512
+ }
2513
+ export type VersionsToPublish = {[key: string]: VersionToPublish};
2195
2514
  export interface VisibilityConfig {
2196
2515
  /**
2197
2516
  * A boolean indicating whether WAF should store a sampling of the web requests that match the rules. You can view the sampled requests through the WAF console.