aws-cdk-lib 2.51.0 → 2.51.1
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.
- package/.jsii.gz +0 -0
- package/alexa-ask/lib/ask.generated.js +1 -1
- package/assertions/lib/annotations.js +1 -1
- package/assertions/lib/capture.js +1 -1
- package/assertions/lib/match.js +1 -1
- package/assertions/lib/matcher.js +1 -1
- package/assertions/lib/template.js +1 -1
- package/assets/lib/staging.js +1 -1
- package/aws-accessanalyzer/lib/accessanalyzer.generated.js +1 -1
- package/aws-acmpca/lib/acmpca.generated.js +1 -1
- package/aws-acmpca/lib/certificate-authority.js +1 -1
- package/aws-amazonmq/lib/amazonmq.generated.js +1 -1
- package/aws-amplify/lib/amplify.generated.js +1 -1
- package/aws-amplifyuibuilder/lib/amplifyuibuilder.generated.js +1 -1
- package/aws-apigateway/lib/access-log.js +1 -1
- package/aws-apigateway/lib/api-definition.js +1 -1
- package/aws-apigateway/lib/api-key.js +1 -1
- package/aws-apigateway/lib/apigateway.generated.js +1 -1
- package/aws-apigateway/lib/apigatewayv2.js +1 -1
- package/aws-apigateway/lib/authorizer.js +1 -1
- package/aws-apigateway/lib/authorizers/cognito.js +1 -1
- package/aws-apigateway/lib/authorizers/identity-source.js +1 -1
- package/aws-apigateway/lib/authorizers/lambda.js +1 -1
- package/aws-apigateway/lib/base-path-mapping.js +1 -1
- package/aws-apigateway/lib/cors.js +1 -1
- package/aws-apigateway/lib/deployment.js +1 -1
- package/aws-apigateway/lib/domain-name.js +1 -1
- package/aws-apigateway/lib/gateway-response.js +1 -1
- package/aws-apigateway/lib/integration.js +1 -1
- package/aws-apigateway/lib/integrations/aws.js +1 -1
- package/aws-apigateway/lib/integrations/http.js +1 -1
- package/aws-apigateway/lib/integrations/lambda.js +1 -1
- package/aws-apigateway/lib/integrations/mock.js +1 -1
- package/aws-apigateway/lib/integrations/stepfunctions.js +1 -1
- package/aws-apigateway/lib/lambda-api.js +1 -1
- package/aws-apigateway/lib/method.js +1 -1
- package/aws-apigateway/lib/model.js +1 -1
- package/aws-apigateway/lib/requestvalidator.js +1 -1
- package/aws-apigateway/lib/resource.js +1 -1
- package/aws-apigateway/lib/restapi.js +1 -1
- package/aws-apigateway/lib/stage.js +1 -1
- package/aws-apigateway/lib/stepfunctions-api.js +1 -1
- package/aws-apigateway/lib/usage-plan.js +1 -1
- package/aws-apigateway/lib/vpc-link.js +1 -1
- package/aws-apigatewayv2/lib/apigatewayv2.generated.js +1 -1
- package/aws-appconfig/lib/appconfig.generated.js +1 -1
- package/aws-appflow/lib/appflow.generated.js +1 -1
- package/aws-appintegrations/lib/appintegrations.generated.js +1 -1
- package/aws-applicationautoscaling/lib/applicationautoscaling.generated.js +1 -1
- package/aws-applicationautoscaling/lib/base-scalable-attribute.js +1 -1
- package/aws-applicationautoscaling/lib/scalable-target.js +1 -1
- package/aws-applicationautoscaling/lib/schedule.js +1 -1
- package/aws-applicationautoscaling/lib/step-scaling-action.js +1 -1
- package/aws-applicationautoscaling/lib/step-scaling-policy.js +1 -1
- package/aws-applicationautoscaling/lib/target-tracking-scaling-policy.js +1 -1
- package/aws-applicationinsights/lib/applicationinsights.generated.js +1 -1
- package/aws-appmesh/lib/appmesh.generated.js +1 -1
- package/aws-appmesh/lib/gateway-route-spec.js +1 -1
- package/aws-appmesh/lib/gateway-route.js +1 -1
- package/aws-appmesh/lib/header-match.js +1 -1
- package/aws-appmesh/lib/health-checks.js +1 -1
- package/aws-appmesh/lib/http-route-path-match.js +1 -1
- package/aws-appmesh/lib/mesh.js +1 -1
- package/aws-appmesh/lib/query-parameter-match.js +1 -1
- package/aws-appmesh/lib/route-spec.js +1 -1
- package/aws-appmesh/lib/route.js +1 -1
- package/aws-appmesh/lib/service-discovery.js +1 -1
- package/aws-appmesh/lib/shared-interfaces.js +1 -1
- package/aws-appmesh/lib/tls-certificate.js +1 -1
- package/aws-appmesh/lib/tls-validation.js +1 -1
- package/aws-appmesh/lib/virtual-gateway-listener.js +1 -1
- package/aws-appmesh/lib/virtual-gateway.js +1 -1
- package/aws-appmesh/lib/virtual-node-listener.js +1 -1
- package/aws-appmesh/lib/virtual-node.js +1 -1
- package/aws-appmesh/lib/virtual-router-listener.js +1 -1
- package/aws-appmesh/lib/virtual-router.js +1 -1
- package/aws-appmesh/lib/virtual-service.js +1 -1
- package/aws-apprunner/lib/apprunner.generated.js +1 -1
- package/aws-appstream/lib/appstream.generated.js +1 -1
- package/aws-appsync/lib/appsync.generated.js +1 -1
- package/aws-aps/lib/aps.generated.js +1 -1
- package/aws-athena/lib/athena.generated.js +1 -1
- package/aws-auditmanager/lib/auditmanager.generated.js +1 -1
- package/aws-autoscaling/lib/aspects/require-imdsv2-aspect.js +1 -1
- package/aws-autoscaling/lib/auto-scaling-group.js +1 -1
- package/aws-autoscaling/lib/autoscaling.generated.js +1 -1
- package/aws-autoscaling/lib/lifecycle-hook.js +1 -1
- package/aws-autoscaling/lib/schedule.js +1 -1
- package/aws-autoscaling/lib/scheduled-action.js +1 -1
- package/aws-autoscaling/lib/step-scaling-action.js +1 -1
- package/aws-autoscaling/lib/step-scaling-policy.js +1 -1
- package/aws-autoscaling/lib/target-tracking-scaling-policy.js +1 -1
- package/aws-autoscaling/lib/volume.js +1 -1
- package/aws-autoscaling/lib/warm-pool.js +1 -1
- package/aws-autoscaling-hooktargets/lib/lambda-hook.js +1 -1
- package/aws-autoscaling-hooktargets/lib/queue-hook.js +1 -1
- package/aws-autoscaling-hooktargets/lib/topic-hook.js +1 -1
- package/aws-autoscalingplans/lib/autoscalingplans.generated.js +1 -1
- package/aws-backup/lib/backup.generated.js +1 -1
- package/aws-backup/lib/plan.js +1 -1
- package/aws-backup/lib/resource.js +1 -1
- package/aws-backup/lib/rule.js +1 -1
- package/aws-backup/lib/selection.js +1 -1
- package/aws-backup/lib/vault.js +1 -1
- package/aws-batch/lib/batch.generated.js +1 -1
- package/aws-billingconductor/lib/billingconductor.generated.js +1 -1
- package/aws-budgets/lib/budgets.generated.js +1 -1
- package/aws-cassandra/lib/cassandra.generated.js +1 -1
- package/aws-ce/lib/ce.generated.js +1 -1
- package/aws-certificatemanager/lib/certificate.js +1 -1
- package/aws-certificatemanager/lib/certificatemanager.generated.js +1 -1
- package/aws-certificatemanager/lib/dns-validated-certificate.js +1 -1
- package/aws-certificatemanager/lib/private-certificate.js +1 -1
- package/aws-chatbot/lib/chatbot.generated.js +1 -1
- package/aws-chatbot/lib/slack-channel-configuration.js +1 -1
- package/aws-cloud9/lib/cloud9.generated.js +1 -1
- package/aws-cloudformation/lib/cloudformation.generated.js +1 -1
- package/aws-cloudformation/lib/custom-resource.js +1 -1
- package/aws-cloudformation/lib/nested-stack.js +1 -1
- package/aws-cloudfront/lib/cache-policy.js +1 -1
- package/aws-cloudfront/lib/cloudfront.generated.js +1 -1
- package/aws-cloudfront/lib/distribution.js +1 -1
- package/aws-cloudfront/lib/experimental/edge-function.js +1 -1
- package/aws-cloudfront/lib/function.js +1 -1
- package/aws-cloudfront/lib/geo-restriction.js +1 -1
- package/aws-cloudfront/lib/key-group.js +1 -1
- package/aws-cloudfront/lib/origin-access-identity.js +1 -1
- package/aws-cloudfront/lib/origin-request-policy.js +1 -1
- package/aws-cloudfront/lib/origin.js +1 -1
- package/aws-cloudfront/lib/public-key.js +1 -1
- package/aws-cloudfront/lib/response-headers-policy.js +1 -1
- package/aws-cloudfront/lib/web-distribution.js +2 -2
- package/aws-cloudfront-origins/lib/http-origin.js +1 -1
- package/aws-cloudfront-origins/lib/load-balancer-origin.js +1 -1
- package/aws-cloudfront-origins/lib/origin-group.js +1 -1
- package/aws-cloudfront-origins/lib/rest-api-origin.js +1 -1
- package/aws-cloudfront-origins/lib/s3-origin.js +1 -1
- package/aws-cloudtrail/lib/cloudtrail.generated.js +1 -1
- package/aws-cloudtrail/lib/cloudtrail.js +1 -1
- package/aws-cloudwatch/lib/alarm-base.js +1 -1
- package/aws-cloudwatch/lib/alarm-rule.js +1 -1
- package/aws-cloudwatch/lib/alarm-status-widget.js +1 -1
- package/aws-cloudwatch/lib/alarm.js +1 -1
- package/aws-cloudwatch/lib/cloudwatch.generated.js +1 -1
- package/aws-cloudwatch/lib/composite-alarm.js +1 -1
- package/aws-cloudwatch/lib/dashboard.js +1 -1
- package/aws-cloudwatch/lib/graph.js +1 -1
- package/aws-cloudwatch/lib/layout.js +1 -1
- package/aws-cloudwatch/lib/log-query.js +1 -1
- package/aws-cloudwatch/lib/metric.js +1 -1
- package/aws-cloudwatch/lib/text.js +1 -1
- package/aws-cloudwatch/lib/widget.js +1 -1
- package/aws-cloudwatch-actions/lib/appscaling.js +1 -1
- package/aws-cloudwatch-actions/lib/autoscaling.js +1 -1
- package/aws-cloudwatch-actions/lib/ec2.js +1 -1
- package/aws-cloudwatch-actions/lib/sns.js +1 -1
- package/aws-cloudwatch-actions/lib/ssm.js +1 -1
- package/aws-codeartifact/lib/codeartifact.generated.js +1 -1
- package/aws-codebuild/lib/artifacts.js +1 -1
- package/aws-codebuild/lib/build-spec.js +1 -1
- package/aws-codebuild/lib/cache.js +1 -1
- package/aws-codebuild/lib/codebuild.generated.js +1 -1
- package/aws-codebuild/lib/events.js +1 -1
- package/aws-codebuild/lib/file-location.js +1 -1
- package/aws-codebuild/lib/linux-arm-build-image.js +1 -1
- package/aws-codebuild/lib/linux-gpu-build-image.js +1 -1
- package/aws-codebuild/lib/pipeline-project.js +1 -1
- package/aws-codebuild/lib/project.js +1 -1
- package/aws-codebuild/lib/report-group.js +1 -1
- package/aws-codebuild/lib/source-credentials.js +1 -1
- package/aws-codebuild/lib/source.js +1 -1
- package/aws-codebuild/lib/untrusted-code-boundary-policy.js +1 -1
- package/aws-codecommit/lib/code.js +1 -1
- package/aws-codecommit/lib/codecommit.generated.js +1 -1
- package/aws-codecommit/lib/events.js +1 -1
- package/aws-codecommit/lib/repository.js +1 -1
- package/aws-codedeploy/lib/base-deployment-config.js +1 -1
- package/aws-codedeploy/lib/codedeploy.generated.js +1 -1
- package/aws-codedeploy/lib/ecs/application.js +1 -1
- package/aws-codedeploy/lib/ecs/deployment-config.js +1 -1
- package/aws-codedeploy/lib/ecs/deployment-group.js +1 -1
- package/aws-codedeploy/lib/host-health-config.js +1 -1
- package/aws-codedeploy/lib/lambda/application.js +1 -1
- package/aws-codedeploy/lib/lambda/custom-deployment-config.js +1 -1
- package/aws-codedeploy/lib/lambda/deployment-config.js +1 -1
- package/aws-codedeploy/lib/lambda/deployment-group.js +1 -1
- package/aws-codedeploy/lib/server/application.js +1 -1
- package/aws-codedeploy/lib/server/deployment-config.js +1 -1
- package/aws-codedeploy/lib/server/deployment-group.js +1 -1
- package/aws-codedeploy/lib/server/load-balancer.js +1 -1
- package/aws-codedeploy/lib/traffic-routing-config.js +1 -1
- package/aws-codeguruprofiler/lib/codeguruprofiler.generated.js +1 -1
- package/aws-codeguruprofiler/lib/profiling-group.js +1 -1
- package/aws-codegurureviewer/lib/codegurureviewer.generated.js +1 -1
- package/aws-codepipeline/lib/action.js +1 -1
- package/aws-codepipeline/lib/artifact.js +1 -1
- package/aws-codepipeline/lib/codepipeline.generated.js +1 -1
- package/aws-codepipeline/lib/custom-action-registration.js +1 -1
- package/aws-codepipeline/lib/pipeline.js +1 -1
- package/aws-codepipeline-actions/lib/action.js +1 -1
- package/aws-codepipeline-actions/lib/alexa-ask/deploy-action.js +1 -1
- package/aws-codepipeline-actions/lib/bitbucket/source-action.js +1 -1
- package/aws-codepipeline-actions/lib/cloudformation/pipeline-actions.js +1 -1
- package/aws-codepipeline-actions/lib/cloudformation/stackinstances-action.js +1 -1
- package/aws-codepipeline-actions/lib/cloudformation/stackset-action.js +1 -1
- package/aws-codepipeline-actions/lib/cloudformation/stackset-types.js +1 -1
- package/aws-codepipeline-actions/lib/codebuild/build-action.js +1 -1
- package/aws-codepipeline-actions/lib/codecommit/source-action.js +1 -1
- package/aws-codepipeline-actions/lib/codedeploy/ecs-deploy-action.js +1 -1
- package/aws-codepipeline-actions/lib/codedeploy/server-deploy-action.js +1 -1
- package/aws-codepipeline-actions/lib/codestar-connections/source-action.js +1 -1
- package/aws-codepipeline-actions/lib/ecr/source-action.js +1 -1
- package/aws-codepipeline-actions/lib/ecs/deploy-action.js +1 -1
- package/aws-codepipeline-actions/lib/elastic-beanstalk/deploy-action.js +1 -1
- package/aws-codepipeline-actions/lib/github/source-action.js +1 -1
- package/aws-codepipeline-actions/lib/jenkins/jenkins-action.js +1 -1
- package/aws-codepipeline-actions/lib/jenkins/jenkins-provider.js +1 -1
- package/aws-codepipeline-actions/lib/lambda/invoke-action.js +1 -1
- package/aws-codepipeline-actions/lib/manual-approval-action.js +1 -1
- package/aws-codepipeline-actions/lib/s3/deploy-action.js +1 -1
- package/aws-codepipeline-actions/lib/s3/source-action.js +1 -1
- package/aws-codepipeline-actions/lib/servicecatalog/deploy-action-beta1.js +1 -1
- package/aws-codepipeline-actions/lib/stepfunctions/invoke-action.js +1 -1
- package/aws-codestar/lib/codestar.generated.js +1 -1
- package/aws-codestarconnections/lib/codestarconnections.generated.js +1 -1
- package/aws-codestarnotifications/lib/codestarnotifications.generated.js +1 -1
- package/aws-codestarnotifications/lib/notification-rule.js +1 -1
- package/aws-cognito/lib/cognito.generated.js +1 -1
- package/aws-cognito/lib/user-pool-attr.js +1 -1
- package/aws-cognito/lib/user-pool-client.js +1 -1
- package/aws-cognito/lib/user-pool-domain.js +1 -1
- package/aws-cognito/lib/user-pool-email.js +1 -1
- package/aws-cognito/lib/user-pool-idp.js +1 -1
- package/aws-cognito/lib/user-pool-idps/amazon.js +1 -1
- package/aws-cognito/lib/user-pool-idps/apple.js +1 -1
- package/aws-cognito/lib/user-pool-idps/base.js +1 -1
- package/aws-cognito/lib/user-pool-idps/facebook.js +1 -1
- package/aws-cognito/lib/user-pool-idps/google.js +1 -1
- package/aws-cognito/lib/user-pool-idps/oidc.js +1 -1
- package/aws-cognito/lib/user-pool-idps/saml.js +1 -1
- package/aws-cognito/lib/user-pool-resource-server.js +1 -1
- package/aws-cognito/lib/user-pool.js +1 -1
- package/aws-config/lib/config.generated.js +1 -1
- package/aws-config/lib/managed-rules.js +1 -1
- package/aws-config/lib/rule.js +1 -1
- package/aws-connect/lib/connect.generated.js +1 -1
- package/aws-connectcampaigns/lib/connectcampaigns.generated.js +1 -1
- package/aws-controltower/lib/controltower.generated.js +1 -1
- package/aws-cur/lib/cur.generated.js +1 -1
- package/aws-customerprofiles/lib/customerprofiles.generated.js +1 -1
- package/aws-databrew/lib/databrew.generated.js +1 -1
- package/aws-datapipeline/lib/datapipeline.generated.js +1 -1
- package/aws-datasync/lib/datasync.generated.js +1 -1
- package/aws-dax/lib/dax.generated.js +1 -1
- package/aws-detective/lib/detective.generated.js +1 -1
- package/aws-devopsguru/lib/devopsguru.generated.js +1 -1
- package/aws-directoryservice/lib/directoryservice.generated.js +1 -1
- package/aws-dlm/lib/dlm.generated.js +1 -1
- package/aws-dms/lib/dms.generated.js +1 -1
- package/aws-docdb/lib/cluster.js +1 -1
- package/aws-docdb/lib/database-secret.js +1 -1
- package/aws-docdb/lib/docdb.generated.js +1 -1
- package/aws-docdb/lib/endpoint.js +1 -1
- package/aws-docdb/lib/instance.js +1 -1
- package/aws-docdb/lib/parameter-group.js +1 -1
- package/aws-dynamodb/lib/dynamodb.generated.js +1 -1
- package/aws-dynamodb/lib/table.js +1 -1
- package/aws-ec2/lib/aspects/require-imdsv2-aspect.js +1 -1
- package/aws-ec2/lib/bastion-host.js +1 -1
- package/aws-ec2/lib/cfn-init-elements.js +1 -1
- package/aws-ec2/lib/cfn-init.js +1 -1
- package/aws-ec2/lib/client-vpn-authorization-rule.js +1 -1
- package/aws-ec2/lib/client-vpn-endpoint.js +1 -1
- package/aws-ec2/lib/client-vpn-route.js +1 -1
- package/aws-ec2/lib/connections.js +1 -1
- package/aws-ec2/lib/ec2.generated.js +1 -1
- package/aws-ec2/lib/instance-types.js +1 -1
- package/aws-ec2/lib/instance.js +1 -1
- package/aws-ec2/lib/ip-addresses.js +1 -1
- package/aws-ec2/lib/launch-template.js +1 -1
- package/aws-ec2/lib/machine-image.js +1 -1
- package/aws-ec2/lib/nat.js +1 -1
- package/aws-ec2/lib/network-acl-types.js +1 -1
- package/aws-ec2/lib/network-acl.js +1 -1
- package/aws-ec2/lib/peer.js +1 -1
- package/aws-ec2/lib/port.js +1 -1
- package/aws-ec2/lib/security-group.js +1 -1
- package/aws-ec2/lib/subnet.js +1 -1
- package/aws-ec2/lib/user-data.js +3 -3
- package/aws-ec2/lib/volume.js +1 -1
- package/aws-ec2/lib/vpc-endpoint-service.js +1 -1
- package/aws-ec2/lib/vpc-endpoint.js +1 -1
- package/aws-ec2/lib/vpc-flow-logs.js +1 -1
- package/aws-ec2/lib/vpc.js +1 -1
- package/aws-ec2/lib/vpn.js +1 -1
- package/aws-ecr/lib/auth-token.js +1 -1
- package/aws-ecr/lib/ecr.generated.js +1 -1
- package/aws-ecr/lib/repository.js +1 -1
- package/aws-ecr-assets/lib/image-asset.js +2 -2
- package/aws-ecr-assets/lib/tarball-asset.js +1 -1
- package/aws-ecs/lib/amis.js +1 -1
- package/aws-ecs/lib/base/base-service.js +1 -1
- package/aws-ecs/lib/base/scalable-task-count.js +1 -1
- package/aws-ecs/lib/base/task-definition.js +1 -1
- package/aws-ecs/lib/cluster.js +1 -1
- package/aws-ecs/lib/container-definition.js +1 -1
- package/aws-ecs/lib/container-image.js +1 -1
- package/aws-ecs/lib/ec2/ec2-service.js +1 -1
- package/aws-ecs/lib/ec2/ec2-task-definition.js +1 -1
- package/aws-ecs/lib/ecs.generated.js +1 -1
- package/aws-ecs/lib/environment-file.js +1 -1
- package/aws-ecs/lib/external/external-service.js +1 -1
- package/aws-ecs/lib/external/external-task-definition.js +1 -1
- package/aws-ecs/lib/fargate/fargate-service.js +1 -1
- package/aws-ecs/lib/fargate/fargate-task-definition.js +1 -1
- package/aws-ecs/lib/firelens-log-router.js +1 -1
- package/aws-ecs/lib/images/asset-image.js +1 -1
- package/aws-ecs/lib/images/ecr.js +1 -1
- package/aws-ecs/lib/images/repository.js +1 -1
- package/aws-ecs/lib/images/tag-parameter-container-image.js +1 -1
- package/aws-ecs/lib/linux-parameters.js +1 -1
- package/aws-ecs/lib/log-drivers/aws-log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/firelens-log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/fluentd-log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/gelf-log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/generic-log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/journald-log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/json-file-log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/log-drivers.js +1 -1
- package/aws-ecs/lib/log-drivers/splunk-log-driver.js +1 -1
- package/aws-ecs/lib/log-drivers/syslog-log-driver.js +1 -1
- package/aws-ecs/lib/placement.js +1 -1
- package/aws-ecs/lib/proxy-configuration/app-mesh-proxy-configuration.js +1 -1
- package/aws-ecs/lib/proxy-configuration/proxy-configuration.js +1 -1
- package/aws-ecs/lib/proxy-configuration/proxy-configurations.js +1 -1
- package/aws-ecs/lib/runtime-platform.js +1 -1
- package/aws-ecs-patterns/lib/base/application-load-balanced-service-base.js +1 -1
- package/aws-ecs-patterns/lib/base/application-multiple-target-groups-service-base.js +1 -1
- package/aws-ecs-patterns/lib/base/network-load-balanced-service-base.js +1 -1
- package/aws-ecs-patterns/lib/base/network-multiple-target-groups-service-base.js +1 -1
- package/aws-ecs-patterns/lib/base/queue-processing-service-base.js +1 -1
- package/aws-ecs-patterns/lib/base/scheduled-task-base.js +1 -1
- package/aws-ecs-patterns/lib/ecs/application-load-balanced-ecs-service.js +1 -1
- package/aws-ecs-patterns/lib/ecs/application-multiple-target-groups-ecs-service.js +1 -1
- package/aws-ecs-patterns/lib/ecs/network-load-balanced-ecs-service.js +1 -1
- package/aws-ecs-patterns/lib/ecs/network-multiple-target-groups-ecs-service.js +1 -1
- package/aws-ecs-patterns/lib/ecs/queue-processing-ecs-service.js +1 -1
- package/aws-ecs-patterns/lib/ecs/scheduled-ecs-task.js +1 -1
- package/aws-ecs-patterns/lib/fargate/application-load-balanced-fargate-service.js +1 -1
- package/aws-ecs-patterns/lib/fargate/application-multiple-target-groups-fargate-service.js +1 -1
- package/aws-ecs-patterns/lib/fargate/network-load-balanced-fargate-service.js +1 -1
- package/aws-ecs-patterns/lib/fargate/network-multiple-target-groups-fargate-service.js +1 -1
- package/aws-ecs-patterns/lib/fargate/queue-processing-fargate-service.js +1 -1
- package/aws-ecs-patterns/lib/fargate/scheduled-fargate-task.js +1 -1
- package/aws-efs/lib/access-point.js +1 -1
- package/aws-efs/lib/efs-file-system.js +1 -1
- package/aws-efs/lib/efs.generated.js +1 -1
- package/aws-eks/lib/alb-controller.js +1 -1
- package/aws-eks/lib/aws-auth.js +1 -1
- package/aws-eks/lib/cluster.js +1 -1
- package/aws-eks/lib/eks.generated.js +1 -1
- package/aws-eks/lib/fargate-cluster.js +1 -1
- package/aws-eks/lib/fargate-profile.js +1 -1
- package/aws-eks/lib/helm-chart.js +1 -1
- package/aws-eks/lib/k8s-manifest.js +1 -1
- package/aws-eks/lib/k8s-object-value.js +1 -1
- package/aws-eks/lib/k8s-patch.js +1 -1
- package/aws-eks/lib/kubectl-provider.js +1 -1
- package/aws-eks/lib/managed-nodegroup.js +1 -1
- package/aws-eks/lib/oidc-provider.js +1 -1
- package/aws-eks/lib/service-account.js +1 -1
- package/aws-elasticache/lib/elasticache.generated.js +1 -1
- package/aws-elasticbeanstalk/lib/elasticbeanstalk.generated.js +1 -1
- package/aws-elasticloadbalancing/lib/elasticloadbalancing.generated.js +1 -1
- package/aws-elasticloadbalancing/lib/load-balancer.js +1 -1
- package/aws-elasticloadbalancingv2/lib/alb/application-listener-action.js +1 -1
- package/aws-elasticloadbalancingv2/lib/alb/application-listener-certificate.js +1 -1
- package/aws-elasticloadbalancingv2/lib/alb/application-listener-rule.js +1 -1
- package/aws-elasticloadbalancingv2/lib/alb/application-listener.js +1 -1
- package/aws-elasticloadbalancingv2/lib/alb/application-load-balancer.js +1 -1
- package/aws-elasticloadbalancingv2/lib/alb/application-target-group.js +1 -1
- package/aws-elasticloadbalancingv2/lib/alb/conditions.js +1 -1
- package/aws-elasticloadbalancingv2/lib/elasticloadbalancingv2.generated.js +1 -1
- package/aws-elasticloadbalancingv2/lib/nlb/network-listener-action.js +1 -1
- package/aws-elasticloadbalancingv2/lib/nlb/network-listener.js +1 -1
- package/aws-elasticloadbalancingv2/lib/nlb/network-load-balancer.js +1 -1
- package/aws-elasticloadbalancingv2/lib/nlb/network-target-group.js +1 -1
- package/aws-elasticloadbalancingv2/lib/shared/base-listener.js +1 -1
- package/aws-elasticloadbalancingv2/lib/shared/base-load-balancer.js +1 -1
- package/aws-elasticloadbalancingv2/lib/shared/base-target-group.js +1 -1
- package/aws-elasticloadbalancingv2/lib/shared/listener-certificate.js +1 -1
- package/aws-elasticloadbalancingv2/lib/shared/load-balancer-targets.js +1 -1
- package/aws-elasticloadbalancingv2-actions/lib/cognito-action.js +1 -1
- package/aws-elasticloadbalancingv2-targets/lib/alb-target.js +1 -1
- package/aws-elasticloadbalancingv2-targets/lib/instance-target.js +1 -1
- package/aws-elasticloadbalancingv2-targets/lib/ip-target.js +1 -1
- package/aws-elasticloadbalancingv2-targets/lib/lambda-target.js +1 -1
- package/aws-elasticsearch/lib/domain.js +1 -1
- package/aws-elasticsearch/lib/elasticsearch.generated.js +1 -1
- package/aws-emr/lib/emr.generated.js +1 -1
- package/aws-emrcontainers/lib/emrcontainers.generated.js +1 -1
- package/aws-emrserverless/lib/emrserverless.generated.js +1 -1
- package/aws-events/lib/api-destination.js +1 -1
- package/aws-events/lib/archive.js +1 -1
- package/aws-events/lib/connection.js +1 -1
- package/aws-events/lib/event-bus.js +1 -1
- package/aws-events/lib/event-pattern.js +1 -1
- package/aws-events/lib/events.generated.js +1 -1
- package/aws-events/lib/input.js +2 -2
- package/aws-events/lib/rule.js +1 -1
- package/aws-events/lib/schedule.js +1 -1
- package/aws-events-targets/lib/api-destination.js +1 -1
- package/aws-events-targets/lib/api-gateway.js +1 -1
- package/aws-events-targets/lib/aws-api.js +1 -1
- package/aws-events-targets/lib/batch.js +1 -1
- package/aws-events-targets/lib/codebuild.js +1 -1
- package/aws-events-targets/lib/codepipeline.js +1 -1
- package/aws-events-targets/lib/ecs-task.js +1 -1
- package/aws-events-targets/lib/event-bus.js +1 -1
- package/aws-events-targets/lib/kinesis-firehose-stream.js +1 -1
- package/aws-events-targets/lib/kinesis-stream.js +1 -1
- package/aws-events-targets/lib/lambda.js +1 -1
- package/aws-events-targets/lib/log-group.js +2 -2
- package/aws-events-targets/lib/sns.js +1 -1
- package/aws-events-targets/lib/sqs.js +1 -1
- package/aws-events-targets/lib/state-machine.js +1 -1
- package/aws-eventschemas/lib/eventschemas.generated.js +1 -1
- package/aws-evidently/lib/evidently.generated.js +1 -1
- package/aws-finspace/lib/finspace.generated.js +1 -1
- package/aws-fis/lib/fis.generated.js +1 -1
- package/aws-fms/lib/fms.generated.js +1 -1
- package/aws-forecast/lib/forecast.generated.js +1 -1
- package/aws-frauddetector/lib/frauddetector.generated.js +1 -1
- package/aws-fsx/lib/file-system.js +1 -1
- package/aws-fsx/lib/fsx.generated.js +1 -1
- package/aws-fsx/lib/lustre-file-system.js +1 -1
- package/aws-fsx/lib/maintenance-time.js +1 -1
- package/aws-gamelift/lib/gamelift.generated.js +1 -1
- package/aws-globalaccelerator/lib/accelerator.js +1 -1
- package/aws-globalaccelerator/lib/endpoint-group.js +1 -1
- package/aws-globalaccelerator/lib/endpoint.js +1 -1
- package/aws-globalaccelerator/lib/globalaccelerator.generated.js +1 -1
- package/aws-globalaccelerator/lib/listener.js +1 -1
- package/aws-globalaccelerator-endpoints/lib/alb.js +1 -1
- package/aws-globalaccelerator-endpoints/lib/eip.js +1 -1
- package/aws-globalaccelerator-endpoints/lib/instance.js +1 -1
- package/aws-globalaccelerator-endpoints/lib/nlb.js +1 -1
- package/aws-glue/lib/glue.generated.js +1 -1
- package/aws-greengrass/lib/greengrass.generated.js +1 -1
- package/aws-greengrassv2/lib/greengrassv2.generated.js +1 -1
- package/aws-groundstation/lib/groundstation.generated.js +1 -1
- package/aws-guardduty/lib/guardduty.generated.js +1 -1
- package/aws-healthlake/lib/healthlake.generated.js +1 -1
- package/aws-iam/lib/access-key.js +1 -1
- package/aws-iam/lib/grant.js +1 -1
- package/aws-iam/lib/group.js +1 -1
- package/aws-iam/lib/iam.generated.js +1 -1
- package/aws-iam/lib/lazy-role.js +1 -1
- package/aws-iam/lib/managed-policy.js +1 -1
- package/aws-iam/lib/oidc-provider.js +1 -1
- package/aws-iam/lib/permissions-boundary.js +1 -1
- package/aws-iam/lib/policy-document.js +1 -1
- package/aws-iam/lib/policy-statement.js +1 -1
- package/aws-iam/lib/policy.js +1 -1
- package/aws-iam/lib/principals.js +1 -1
- package/aws-iam/lib/role.js +1 -1
- package/aws-iam/lib/saml-provider.js +1 -1
- package/aws-iam/lib/unknown-principal.js +1 -1
- package/aws-iam/lib/user.js +1 -1
- package/aws-identitystore/lib/identitystore.generated.js +1 -1
- package/aws-imagebuilder/lib/imagebuilder.generated.js +1 -1
- package/aws-inspector/lib/inspector.generated.js +1 -1
- package/aws-inspectorv2/lib/inspectorv2.generated.js +1 -1
- package/aws-iot/lib/iot.generated.js +1 -1
- package/aws-iot1click/lib/iot1click.generated.js +1 -1
- package/aws-iotanalytics/lib/iotanalytics.generated.js +1 -1
- package/aws-iotcoredeviceadvisor/lib/iotcoredeviceadvisor.generated.js +1 -1
- package/aws-iotevents/lib/iotevents.generated.js +1 -1
- package/aws-iotfleethub/lib/iotfleethub.generated.js +1 -1
- package/aws-iotfleetwise/lib/iotfleetwise.generated.js +1 -1
- package/aws-iotsitewise/lib/iotsitewise.generated.js +1 -1
- package/aws-iotthingsgraph/lib/iotthingsgraph.generated.js +1 -1
- package/aws-iottwinmaker/lib/iottwinmaker.generated.js +1 -1
- package/aws-iotwireless/lib/iotwireless.generated.js +1 -1
- package/aws-ivs/lib/ivs.generated.js +1 -1
- package/aws-kafkaconnect/lib/kafkaconnect.generated.js +1 -1
- package/aws-kendra/lib/kendra.generated.js +1 -1
- package/aws-kinesis/lib/kinesis.generated.js +1 -1
- package/aws-kinesis/lib/stream.js +1 -1
- package/aws-kinesisanalytics/lib/kinesisanalytics.generated.js +1 -1
- package/aws-kinesisanalytics/lib/kinesisanalyticsv2.generated.js +1 -1
- package/aws-kinesisanalyticsv2/lib/kinesisanalyticsv2.generated.js +1 -1
- package/aws-kinesisfirehose/lib/kinesisfirehose.generated.js +1 -1
- package/aws-kinesisvideo/lib/kinesisvideo.generated.js +1 -1
- package/aws-kms/lib/alias.js +1 -1
- package/aws-kms/lib/key.js +1 -1
- package/aws-kms/lib/kms.generated.js +1 -1
- package/aws-kms/lib/via-service-principal.js +1 -1
- package/aws-lakeformation/lib/lakeformation.generated.js +1 -1
- package/aws-lambda/lib/alias.js +1 -1
- package/aws-lambda/lib/architecture.js +1 -1
- package/aws-lambda/lib/code-signing-config.js +1 -1
- package/aws-lambda/lib/code.js +1 -1
- package/aws-lambda/lib/event-invoke-config.js +1 -1
- package/aws-lambda/lib/event-source-filter.js +1 -1
- package/aws-lambda/lib/event-source-mapping.js +1 -1
- package/aws-lambda/lib/filesystem.js +1 -1
- package/aws-lambda/lib/function-base.js +1 -1
- package/aws-lambda/lib/function-url.js +1 -1
- package/aws-lambda/lib/function.js +1 -1
- package/aws-lambda/lib/handler.js +1 -1
- package/aws-lambda/lib/image-function.js +1 -1
- package/aws-lambda/lib/lambda-insights.js +1 -1
- package/aws-lambda/lib/lambda-version.js +1 -1
- package/aws-lambda/lib/lambda.generated.js +1 -1
- package/aws-lambda/lib/layers.js +1 -1
- package/aws-lambda/lib/log-retention.js +1 -1
- package/aws-lambda/lib/runtime.js +1 -1
- package/aws-lambda/lib/singleton-lambda.js +1 -1
- package/aws-lambda-destinations/lib/event-bridge.js +1 -1
- package/aws-lambda-destinations/lib/lambda.js +1 -1
- package/aws-lambda-destinations/lib/sns.js +1 -1
- package/aws-lambda-destinations/lib/sqs.js +1 -1
- package/aws-lambda-event-sources/lib/api.js +1 -1
- package/aws-lambda-event-sources/lib/dynamodb.js +1 -1
- package/aws-lambda-event-sources/lib/kafka.js +1 -1
- package/aws-lambda-event-sources/lib/kinesis.js +1 -1
- package/aws-lambda-event-sources/lib/s3.js +1 -1
- package/aws-lambda-event-sources/lib/sns-dlq.js +1 -1
- package/aws-lambda-event-sources/lib/sns.js +1 -1
- package/aws-lambda-event-sources/lib/sqs-dlq.js +1 -1
- package/aws-lambda-event-sources/lib/sqs.js +1 -1
- package/aws-lambda-event-sources/lib/stream.js +1 -1
- package/aws-lambda-nodejs/lib/function.js +1 -1
- package/aws-lex/lib/lex.generated.js +1 -1
- package/aws-licensemanager/lib/licensemanager.generated.js +1 -1
- package/aws-lightsail/lib/lightsail.generated.js +1 -1
- package/aws-location/lib/location.generated.js +1 -1
- package/aws-logs/lib/cross-account-destination.js +1 -1
- package/aws-logs/lib/log-group.js +1 -1
- package/aws-logs/lib/log-retention.js +1 -1
- package/aws-logs/lib/log-stream.js +1 -1
- package/aws-logs/lib/logs.generated.js +1 -1
- package/aws-logs/lib/metric-filter.js +1 -1
- package/aws-logs/lib/pattern.js +1 -1
- package/aws-logs/lib/policy.js +1 -1
- package/aws-logs/lib/query-definition.js +1 -1
- package/aws-logs/lib/subscription-filter.js +1 -1
- package/aws-logs-destinations/lib/kinesis.js +1 -1
- package/aws-logs-destinations/lib/lambda.js +1 -1
- package/aws-lookoutequipment/lib/lookoutequipment.generated.js +1 -1
- package/aws-lookoutmetrics/lib/lookoutmetrics.generated.js +1 -1
- package/aws-lookoutvision/lib/lookoutvision.generated.js +1 -1
- package/aws-m2/lib/m2.generated.js +1 -1
- package/aws-macie/lib/macie.generated.js +1 -1
- package/aws-managedblockchain/lib/managedblockchain.generated.js +1 -1
- package/aws-mediaconnect/lib/mediaconnect.generated.js +1 -1
- package/aws-mediaconvert/lib/mediaconvert.generated.js +1 -1
- package/aws-medialive/lib/medialive.generated.js +1 -1
- package/aws-mediapackage/lib/mediapackage.generated.js +1 -1
- package/aws-mediastore/lib/mediastore.generated.js +1 -1
- package/aws-mediatailor/lib/mediatailor.generated.js +1 -1
- package/aws-memorydb/lib/memorydb.generated.js +1 -1
- package/aws-msk/lib/msk.generated.js +1 -1
- package/aws-mwaa/lib/mwaa.generated.js +1 -1
- package/aws-neptune/lib/neptune.generated.js +1 -1
- package/aws-networkfirewall/lib/networkfirewall.generated.js +1 -1
- package/aws-networkmanager/lib/networkmanager.generated.js +1 -1
- package/aws-nimblestudio/lib/nimblestudio.generated.js +1 -1
- package/aws-opensearchservice/lib/domain.js +1 -1
- package/aws-opensearchservice/lib/opensearchservice.generated.js +1 -1
- package/aws-opensearchservice/lib/version.js +1 -1
- package/aws-opsworks/lib/opsworks.generated.js +1 -1
- package/aws-opsworkscm/lib/opsworkscm.generated.js +1 -1
- package/aws-organizations/lib/organizations.generated.js +1 -1
- package/aws-panorama/lib/panorama.generated.js +1 -1
- package/aws-personalize/lib/personalize.generated.js +1 -1
- package/aws-pinpoint/lib/pinpoint.generated.js +1 -1
- package/aws-pinpointemail/lib/pinpointemail.generated.js +1 -1
- package/aws-qldb/lib/qldb.generated.js +1 -1
- package/aws-quicksight/lib/quicksight.generated.js +1 -1
- package/aws-ram/lib/ram.generated.js +1 -1
- package/aws-rds/lib/cluster-engine.js +1 -1
- package/aws-rds/lib/cluster.js +1 -1
- package/aws-rds/lib/database-secret.js +1 -1
- package/aws-rds/lib/endpoint.js +1 -1
- package/aws-rds/lib/instance-engine.js +1 -1
- package/aws-rds/lib/instance.js +1 -1
- package/aws-rds/lib/option-group.js +1 -1
- package/aws-rds/lib/parameter-group.js +1 -1
- package/aws-rds/lib/props.js +1 -1
- package/aws-rds/lib/proxy.js +1 -1
- package/aws-rds/lib/rds.generated.js +1 -1
- package/aws-rds/lib/serverless-cluster.js +1 -1
- package/aws-rds/lib/subnet-group.js +1 -1
- package/aws-redshift/lib/redshift.generated.js +1 -1
- package/aws-redshiftserverless/lib/redshiftserverless.generated.js +1 -1
- package/aws-refactorspaces/lib/refactorspaces.generated.js +1 -1
- package/aws-rekognition/lib/rekognition.generated.js +1 -1
- package/aws-resiliencehub/lib/resiliencehub.generated.js +1 -1
- package/aws-resourceexplorer2/lib/resourceexplorer2.generated.js +1 -1
- package/aws-resourcegroups/lib/resourcegroups.generated.js +1 -1
- package/aws-robomaker/lib/robomaker.generated.js +1 -1
- package/aws-rolesanywhere/lib/rolesanywhere.generated.js +1 -1
- package/aws-route53/lib/hosted-zone.js +1 -1
- package/aws-route53/lib/record-set.js +1 -1
- package/aws-route53/lib/route53.generated.js +1 -1
- package/aws-route53/lib/vpc-endpoint-service-domain-name.js +1 -1
- package/aws-route53-patterns/lib/website-redirect.js +1 -1
- package/aws-route53-targets/lib/api-gateway-domain-name.js +1 -1
- package/aws-route53-targets/lib/api-gatewayv2-domain-name.js +1 -1
- package/aws-route53-targets/lib/bucket-website-target.js +1 -1
- package/aws-route53-targets/lib/classic-load-balancer-target.js +1 -1
- package/aws-route53-targets/lib/cloudfront-target.js +1 -1
- package/aws-route53-targets/lib/elastic-beanstalk-environment-target.js +1 -1
- package/aws-route53-targets/lib/global-accelerator-target.js +1 -1
- package/aws-route53-targets/lib/interface-vpc-endpoint-target.js +1 -1
- package/aws-route53-targets/lib/load-balancer-target.js +1 -1
- package/aws-route53-targets/lib/route53-record.js +1 -1
- package/aws-route53-targets/lib/userpool-domain.js +1 -1
- package/aws-route53recoverycontrol/lib/route53recoverycontrol.generated.js +1 -1
- package/aws-route53recoveryreadiness/lib/route53recoveryreadiness.generated.js +1 -1
- package/aws-route53resolver/lib/route53resolver.generated.js +1 -1
- package/aws-rum/lib/rum.generated.js +1 -1
- package/aws-s3/lib/bucket-policy.js +1 -1
- package/aws-s3/lib/bucket.js +1 -1
- package/aws-s3/lib/rule.js +1 -1
- package/aws-s3/lib/s3.generated.js +1 -1
- package/aws-s3-assets/lib/asset.js +1 -1
- package/aws-s3-deployment/lib/bucket-deployment.js +1 -1
- package/aws-s3-deployment/lib/source.js +1 -1
- package/aws-s3-notifications/lib/lambda.js +1 -1
- package/aws-s3-notifications/lib/sns.js +1 -1
- package/aws-s3-notifications/lib/sqs.js +1 -1
- package/aws-s3objectlambda/lib/s3objectlambda.generated.js +1 -1
- package/aws-s3outposts/lib/s3outposts.generated.js +1 -1
- package/aws-sagemaker/lib/sagemaker.generated.js +1 -1
- package/aws-sam/lib/sam.generated.js +1 -1
- package/aws-scheduler/lib/scheduler.generated.js +1 -1
- package/aws-sdb/lib/sdb.generated.js +1 -1
- package/aws-secretsmanager/lib/policy.js +1 -1
- package/aws-secretsmanager/lib/rotation-schedule.js +1 -1
- package/aws-secretsmanager/lib/secret-rotation.js +1 -1
- package/aws-secretsmanager/lib/secret.js +1 -1
- package/aws-secretsmanager/lib/secretsmanager.generated.js +1 -1
- package/aws-securityhub/lib/securityhub.generated.js +1 -1
- package/aws-servicecatalog/lib/cloudformation-template.js +1 -1
- package/aws-servicecatalog/lib/portfolio.js +1 -1
- package/aws-servicecatalog/lib/product-stack-history.js +1 -1
- package/aws-servicecatalog/lib/product-stack.js +1 -1
- package/aws-servicecatalog/lib/product.js +1 -1
- package/aws-servicecatalog/lib/servicecatalog.generated.js +1 -1
- package/aws-servicecatalog/lib/tag-options.js +1 -1
- package/aws-servicecatalogappregistry/lib/servicecatalogappregistry.generated.js +1 -1
- package/aws-servicediscovery/lib/alias-target-instance.js +1 -1
- package/aws-servicediscovery/lib/cname-instance.js +1 -1
- package/aws-servicediscovery/lib/http-namespace.js +1 -1
- package/aws-servicediscovery/lib/instance.js +1 -1
- package/aws-servicediscovery/lib/ip-instance.js +1 -1
- package/aws-servicediscovery/lib/non-ip-instance.js +1 -1
- package/aws-servicediscovery/lib/private-dns-namespace.js +1 -1
- package/aws-servicediscovery/lib/public-dns-namespace.js +1 -1
- package/aws-servicediscovery/lib/service.js +1 -1
- package/aws-servicediscovery/lib/servicediscovery.generated.js +1 -1
- package/aws-ses/lib/configuration-set.js +1 -1
- package/aws-ses/lib/dedicated-ip-pool.js +1 -1
- package/aws-ses/lib/email-identity.js +1 -1
- package/aws-ses/lib/receipt-filter.js +1 -1
- package/aws-ses/lib/receipt-rule-set.js +1 -1
- package/aws-ses/lib/receipt-rule.js +1 -1
- package/aws-ses/lib/ses.generated.js +1 -1
- package/aws-ses-actions/lib/add-header.js +1 -1
- package/aws-ses-actions/lib/bounce.js +1 -1
- package/aws-ses-actions/lib/lambda.js +1 -1
- package/aws-ses-actions/lib/s3.js +1 -1
- package/aws-ses-actions/lib/sns.js +1 -1
- package/aws-ses-actions/lib/stop.js +1 -1
- package/aws-signer/lib/signer.generated.js +1 -1
- package/aws-signer/lib/signing-profile.js +1 -1
- package/aws-sns/lib/policy.js +1 -1
- package/aws-sns/lib/sns.generated.js +1 -1
- package/aws-sns/lib/subscription-filter.js +1 -1
- package/aws-sns/lib/subscription.js +1 -1
- package/aws-sns/lib/topic-base.js +1 -1
- package/aws-sns/lib/topic.js +1 -1
- package/aws-sns-subscriptions/lib/email.js +1 -1
- package/aws-sns-subscriptions/lib/lambda.js +1 -1
- package/aws-sns-subscriptions/lib/sms.js +1 -1
- package/aws-sns-subscriptions/lib/sqs.js +1 -1
- package/aws-sns-subscriptions/lib/url.js +1 -1
- package/aws-sqs/lib/policy.js +1 -1
- package/aws-sqs/lib/queue-base.js +1 -1
- package/aws-sqs/lib/queue.js +1 -1
- package/aws-sqs/lib/sqs.generated.js +1 -1
- package/aws-ssm/lib/parameter.js +1 -1
- package/aws-ssm/lib/ssm.generated.js +1 -1
- package/aws-ssmcontacts/lib/ssmcontacts.generated.js +1 -1
- package/aws-ssmincidents/lib/ssmincidents.generated.js +1 -1
- package/aws-sso/lib/sso.generated.js +1 -1
- package/aws-stepfunctions/lib/activity.js +1 -1
- package/aws-stepfunctions/lib/chain.js +1 -1
- package/aws-stepfunctions/lib/condition.js +1 -1
- package/aws-stepfunctions/lib/fields.js +1 -1
- package/aws-stepfunctions/lib/input.js +1 -1
- package/aws-stepfunctions/lib/state-graph.js +1 -1
- package/aws-stepfunctions/lib/state-machine-fragment.js +1 -1
- package/aws-stepfunctions/lib/state-machine.js +1 -1
- package/aws-stepfunctions/lib/state-transition-metrics.js +1 -1
- package/aws-stepfunctions/lib/states/choice.js +1 -1
- package/aws-stepfunctions/lib/states/custom-state.js +1 -1
- package/aws-stepfunctions/lib/states/fail.js +1 -1
- package/aws-stepfunctions/lib/states/map.js +1 -1
- package/aws-stepfunctions/lib/states/parallel.js +1 -1
- package/aws-stepfunctions/lib/states/pass.js +1 -1
- package/aws-stepfunctions/lib/states/state.js +1 -1
- package/aws-stepfunctions/lib/states/succeed.js +1 -1
- package/aws-stepfunctions/lib/states/task-base.js +1 -1
- package/aws-stepfunctions/lib/states/task.js +1 -1
- package/aws-stepfunctions/lib/states/wait.js +1 -1
- package/aws-stepfunctions/lib/stepfunctions.generated.js +1 -1
- package/aws-stepfunctions/lib/types.js +1 -1
- package/aws-stepfunctions-tasks/lib/apigateway/call-http-api.js +1 -1
- package/aws-stepfunctions-tasks/lib/apigateway/call-rest-api.js +1 -1
- package/aws-stepfunctions-tasks/lib/athena/get-query-execution.js +1 -1
- package/aws-stepfunctions-tasks/lib/athena/get-query-results.js +1 -1
- package/aws-stepfunctions-tasks/lib/athena/start-query-execution.js +1 -1
- package/aws-stepfunctions-tasks/lib/athena/stop-query-execution.js +1 -1
- package/aws-stepfunctions-tasks/lib/aws-sdk/call-aws-service.js +1 -1
- package/aws-stepfunctions-tasks/lib/batch/run-batch-job.js +1 -1
- package/aws-stepfunctions-tasks/lib/batch/submit-job.js +1 -1
- package/aws-stepfunctions-tasks/lib/codebuild/start-build.js +1 -1
- package/aws-stepfunctions-tasks/lib/databrew/start-job-run.js +1 -1
- package/aws-stepfunctions-tasks/lib/dynamodb/delete-item.js +1 -1
- package/aws-stepfunctions-tasks/lib/dynamodb/get-item.js +1 -1
- package/aws-stepfunctions-tasks/lib/dynamodb/put-item.js +1 -1
- package/aws-stepfunctions-tasks/lib/dynamodb/shared-types.js +1 -1
- package/aws-stepfunctions-tasks/lib/dynamodb/update-item.js +1 -1
- package/aws-stepfunctions-tasks/lib/ecs/run-ecs-ec2-task.js +1 -1
- package/aws-stepfunctions-tasks/lib/ecs/run-ecs-fargate-task.js +1 -1
- package/aws-stepfunctions-tasks/lib/ecs/run-ecs-task-base.js +1 -1
- package/aws-stepfunctions-tasks/lib/ecs/run-task.js +1 -1
- package/aws-stepfunctions-tasks/lib/eks/call.js +1 -1
- package/aws-stepfunctions-tasks/lib/emr/emr-add-step.js +1 -1
- package/aws-stepfunctions-tasks/lib/emr/emr-cancel-step.js +1 -1
- package/aws-stepfunctions-tasks/lib/emr/emr-create-cluster.js +1 -1
- package/aws-stepfunctions-tasks/lib/emr/emr-modify-instance-fleet-by-name.js +1 -1
- package/aws-stepfunctions-tasks/lib/emr/emr-modify-instance-group-by-name.js +1 -1
- package/aws-stepfunctions-tasks/lib/emr/emr-set-cluster-termination-protection.js +1 -1
- package/aws-stepfunctions-tasks/lib/emr/emr-terminate-cluster.js +1 -1
- package/aws-stepfunctions-tasks/lib/emrcontainers/create-virtual-cluster.js +1 -1
- package/aws-stepfunctions-tasks/lib/emrcontainers/delete-virtual-cluster.js +1 -1
- package/aws-stepfunctions-tasks/lib/emrcontainers/start-job-run.js +1 -1
- package/aws-stepfunctions-tasks/lib/evaluate-expression.js +1 -1
- package/aws-stepfunctions-tasks/lib/eventbridge/put-events.js +1 -1
- package/aws-stepfunctions-tasks/lib/glue/run-glue-job-task.js +1 -1
- package/aws-stepfunctions-tasks/lib/glue/start-job-run.js +1 -1
- package/aws-stepfunctions-tasks/lib/invoke-activity.js +1 -1
- package/aws-stepfunctions-tasks/lib/lambda/invoke-function.js +1 -1
- package/aws-stepfunctions-tasks/lib/lambda/invoke.js +1 -1
- package/aws-stepfunctions-tasks/lib/lambda/run-lambda-task.js +1 -1
- package/aws-stepfunctions-tasks/lib/sagemaker/base-types.js +1 -1
- package/aws-stepfunctions-tasks/lib/sagemaker/create-endpoint-config.js +1 -1
- package/aws-stepfunctions-tasks/lib/sagemaker/create-endpoint.js +1 -1
- package/aws-stepfunctions-tasks/lib/sagemaker/create-model.js +1 -1
- package/aws-stepfunctions-tasks/lib/sagemaker/create-training-job.js +1 -1
- package/aws-stepfunctions-tasks/lib/sagemaker/create-transform-job.js +1 -1
- package/aws-stepfunctions-tasks/lib/sagemaker/update-endpoint.js +1 -1
- package/aws-stepfunctions-tasks/lib/sns/publish-to-topic.js +1 -1
- package/aws-stepfunctions-tasks/lib/sns/publish.js +1 -1
- package/aws-stepfunctions-tasks/lib/sqs/send-message.js +1 -1
- package/aws-stepfunctions-tasks/lib/sqs/send-to-queue.js +1 -1
- package/aws-stepfunctions-tasks/lib/start-execution.js +1 -1
- package/aws-stepfunctions-tasks/lib/stepfunctions/invoke-activity.js +1 -1
- package/aws-stepfunctions-tasks/lib/stepfunctions/start-execution.js +1 -1
- package/aws-supportapp/lib/supportapp.generated.js +1 -1
- package/aws-synthetics/lib/synthetics.generated.js +1 -1
- package/aws-timestream/lib/timestream.generated.js +1 -1
- package/aws-transfer/lib/transfer.generated.js +1 -1
- package/aws-voiceid/lib/voiceid.generated.js +1 -1
- package/aws-waf/lib/waf.generated.js +1 -1
- package/aws-wafregional/lib/wafregional.generated.js +1 -1
- package/aws-wafv2/lib/wafv2.generated.js +1 -1
- package/aws-wisdom/lib/wisdom.generated.js +1 -1
- package/aws-workspaces/lib/workspaces.generated.js +1 -1
- package/aws-xray/lib/xray.generated.js +1 -1
- package/cloud-assembly-schema/lib/manifest.js +1 -1
- package/cloudformation-include/lib/cfn-include.js +1 -1
- package/core/lib/annotations.js +1 -1
- package/core/lib/app.js +1 -1
- package/core/lib/arn.js +1 -1
- package/core/lib/aspect.js +1 -1
- package/core/lib/asset-staging.js +1 -1
- package/core/lib/bundling.js +1 -1
- package/core/lib/cfn-codedeploy-blue-green-hook.js +1 -1
- package/core/lib/cfn-condition.js +1 -1
- package/core/lib/cfn-dynamic-reference.js +1 -1
- package/core/lib/cfn-element.js +1 -1
- package/core/lib/cfn-fn.js +1 -1
- package/core/lib/cfn-hook.js +1 -1
- package/core/lib/cfn-include.js +1 -1
- package/core/lib/cfn-json.js +1 -1
- package/core/lib/cfn-mapping.js +1 -1
- package/core/lib/cfn-output.js +1 -1
- package/core/lib/cfn-parameter.js +1 -1
- package/core/lib/cfn-pseudo.js +1 -1
- package/core/lib/cfn-resource.js +1 -1
- package/core/lib/cfn-rule.js +1 -1
- package/core/lib/cloudformation.generated.js +1 -1
- package/core/lib/context-provider.js +1 -1
- package/core/lib/custom-resource-provider/custom-resource-provider.js +1 -1
- package/core/lib/custom-resource.js +1 -1
- package/core/lib/duration.js +1 -1
- package/core/lib/expiration.js +1 -1
- package/core/lib/feature-flags.js +1 -1
- package/core/lib/fs/ignore.js +1 -1
- package/core/lib/fs/index.js +1 -1
- package/core/lib/lazy.js +1 -1
- package/core/lib/names.js +1 -1
- package/core/lib/nested-stack.js +1 -1
- package/core/lib/physical-name.js +1 -1
- package/core/lib/private/intrinsic.js +1 -1
- package/core/lib/reference.js +1 -1
- package/core/lib/resolvable.js +2 -2
- package/core/lib/resource.js +1 -1
- package/core/lib/runtime.js +2 -2
- package/core/lib/secret-value.js +1 -1
- package/core/lib/size.js +1 -1
- package/core/lib/stack-synthesizers/asset-manifest-builder.js +1 -1
- package/core/lib/stack-synthesizers/bootstrapless-synthesizer.js +1 -1
- package/core/lib/stack-synthesizers/cli-credentials-synthesizer.js +1 -1
- package/core/lib/stack-synthesizers/default-synthesizer.js +1 -1
- package/core/lib/stack-synthesizers/legacy.js +1 -1
- package/core/lib/stack-synthesizers/nested.js +1 -1
- package/core/lib/stack-synthesizers/stack-synthesizer.js +1 -1
- package/core/lib/stack.js +1 -1
- package/core/lib/stage.js +1 -1
- package/core/lib/string-fragments.js +1 -1
- package/core/lib/tag-aspect.js +1 -1
- package/core/lib/tag-manager.js +1 -1
- package/core/lib/token.js +1 -1
- package/core/lib/tree.js +1 -1
- package/custom-resources/lib/aws-custom-resource/aws-custom-resource.js +1 -1
- package/custom-resources/lib/provider-framework/provider.js +1 -1
- package/cx-api/lib/artifacts/asset-manifest-artifact.js +1 -1
- package/cx-api/lib/artifacts/cloudformation-artifact.js +1 -1
- package/cx-api/lib/artifacts/nested-cloud-assembly-artifact.js +1 -1
- package/cx-api/lib/artifacts/tree-cloud-artifact.js +1 -1
- package/cx-api/lib/cloud-artifact.js +1 -1
- package/cx-api/lib/cloud-assembly.js +1 -1
- package/cx-api/lib/environment.js +1 -1
- package/cx-api/lib/placeholders.js +1 -1
- package/lambda-layer-awscli/lib/awscli-layer.js +1 -1
- package/lambda-layer-kubectl/lib/kubectl-layer.js +1 -1
- package/lambda-layer-node-proxy-agent/lib/node-proxy-agent-layer.js +1 -1
- package/package.json +253 -253
- package/pipelines/lib/blueprint/file-set.js +1 -1
- package/pipelines/lib/blueprint/manual-approval.js +1 -1
- package/pipelines/lib/blueprint/shell-step.js +1 -1
- package/pipelines/lib/blueprint/stack-deployment.js +1 -1
- package/pipelines/lib/blueprint/stage-deployment.js +1 -1
- package/pipelines/lib/blueprint/step.js +1 -1
- package/pipelines/lib/blueprint/wave.js +1 -1
- package/pipelines/lib/codepipeline/artifact-map.js +1 -1
- package/pipelines/lib/codepipeline/codebuild-step.js +1 -1
- package/pipelines/lib/codepipeline/codepipeline-source.js +1 -1
- package/pipelines/lib/codepipeline/codepipeline.js +1 -1
- package/pipelines/lib/codepipeline/confirm-permissions-broadening.js +1 -1
- package/pipelines/lib/docker-credentials.js +1 -1
- package/pipelines/lib/legacy/actions/deploy-cdk-stack-action.js +1 -1
- package/pipelines/lib/legacy/actions/publish-assets-action.js +1 -1
- package/pipelines/lib/legacy/actions/update-pipeline-action.js +1 -1
- package/pipelines/lib/legacy/pipeline.js +1 -1
- package/pipelines/lib/legacy/stage.js +1 -1
- package/pipelines/lib/legacy/synths/simple-synth-action.js +1 -1
- package/pipelines/lib/legacy/validation/shell-script-action.js +1 -1
- package/pipelines/lib/main/pipeline-base.js +1 -1
- package/region-info/lib/built-ins.generated.d.ts +1 -1
- package/region-info/lib/default.js +1 -1
- package/region-info/lib/fact.js +1 -1
- package/region-info/lib/region-info.js +1 -1
- package/triggers/lib/trigger-function.js +1 -1
- package/triggers/lib/trigger.js +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var _a,_b,_c,_d,_e,_f;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnWebACLAssociation=exports.CfnWebACL=exports.CfnRuleGroup=exports.CfnRegexPatternSet=exports.CfnLoggingConfiguration=exports.CfnIPSet=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnIPSetPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("addresses",cdk.requiredValidator)(properties.addresses)),errors.collect(cdk.propertyValidator("addresses",cdk.listValidator(cdk.validateString))(properties.addresses)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("ipAddressVersion",cdk.requiredValidator)(properties.ipAddressVersion)),errors.collect(cdk.propertyValidator("ipAddressVersion",cdk.validateString)(properties.ipAddressVersion)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnIPSetProps"')}function cfnIPSetPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnIPSetPropsValidator(properties).assertSuccess(),{Addresses:cdk.listMapper(cdk.stringToCloudFormation)(properties.addresses),IPAddressVersion:cdk.stringToCloudFormation(properties.ipAddressVersion),Scope:cdk.stringToCloudFormation(properties.scope),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnIPSetPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("addresses","Addresses",cfn_parse.FromCloudFormation.getStringArray(properties.Addresses)),ret.addPropertyResult("ipAddressVersion","IPAddressVersion",cfn_parse.FromCloudFormation.getString(properties.IPAddressVersion)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnIPSet extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnIPSet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnIPSetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnIPSet),error}cdk.requireProperty(props,"addresses",this),cdk.requireProperty(props,"ipAddressVersion",this),cdk.requireProperty(props,"scope",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn")),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.addresses=props.addresses,this.ipAddressVersion=props.ipAddressVersion,this.scope=props.scope,this.description=props.description,this.name=props.name,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::WAFv2::IPSet",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnIPSetPropsFromCloudFormation(resourceProperties),ret=new CfnIPSet(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnIPSet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{addresses:this.addresses,ipAddressVersion:this.ipAddressVersion,scope:this.scope,description:this.description,name:this.name,tags:this.tags.renderTags()}}renderProperties(props){return cfnIPSetPropsToCloudFormation(props)}}exports.CfnIPSet=CfnIPSet,_a=JSII_RTTI_SYMBOL_1,CfnIPSet[_a]={fqn:"aws-cdk-lib.aws_wafv2.CfnIPSet",version:"2.51.0"},CfnIPSet.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::IPSet";function CfnLoggingConfigurationPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("logDestinationConfigs",cdk.requiredValidator)(properties.logDestinationConfigs)),errors.collect(cdk.propertyValidator("logDestinationConfigs",cdk.listValidator(cdk.validateString))(properties.logDestinationConfigs)),errors.collect(cdk.propertyValidator("loggingFilter",cdk.validateObject)(properties.loggingFilter)),errors.collect(cdk.propertyValidator("redactedFields",cdk.listValidator(CfnLoggingConfiguration_FieldToMatchPropertyValidator))(properties.redactedFields)),errors.collect(cdk.propertyValidator("resourceArn",cdk.requiredValidator)(properties.resourceArn)),errors.collect(cdk.propertyValidator("resourceArn",cdk.validateString)(properties.resourceArn)),errors.wrap('supplied properties not correct for "CfnLoggingConfigurationProps"')}function cfnLoggingConfigurationPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnLoggingConfigurationPropsValidator(properties).assertSuccess(),{LogDestinationConfigs:cdk.listMapper(cdk.stringToCloudFormation)(properties.logDestinationConfigs),ResourceArn:cdk.stringToCloudFormation(properties.resourceArn),LoggingFilter:cdk.objectToCloudFormation(properties.loggingFilter),RedactedFields:cdk.listMapper(cfnLoggingConfigurationFieldToMatchPropertyToCloudFormation)(properties.redactedFields)}):properties}function CfnLoggingConfigurationPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("logDestinationConfigs","LogDestinationConfigs",cfn_parse.FromCloudFormation.getStringArray(properties.LogDestinationConfigs)),ret.addPropertyResult("resourceArn","ResourceArn",cfn_parse.FromCloudFormation.getString(properties.ResourceArn)),ret.addPropertyResult("loggingFilter","LoggingFilter",properties.LoggingFilter!=null?cfn_parse.FromCloudFormation.getAny(properties.LoggingFilter):void 0),ret.addPropertyResult("redactedFields","RedactedFields",properties.RedactedFields!=null?cfn_parse.FromCloudFormation.getArray(CfnLoggingConfigurationFieldToMatchPropertyFromCloudFormation)(properties.RedactedFields):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnLoggingConfiguration extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnLoggingConfigurationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnLoggingConfiguration),error}cdk.requireProperty(props,"logDestinationConfigs",this),cdk.requireProperty(props,"resourceArn",this),this.attrManagedByFirewallManager=this.getAtt("ManagedByFirewallManager"),this.logDestinationConfigs=props.logDestinationConfigs,this.resourceArn=props.resourceArn,this.loggingFilter=props.loggingFilter,this.redactedFields=props.redactedFields}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnLoggingConfigurationPropsFromCloudFormation(resourceProperties),ret=new CfnLoggingConfiguration(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{logDestinationConfigs:this.logDestinationConfigs,resourceArn:this.resourceArn,loggingFilter:this.loggingFilter,redactedFields:this.redactedFields}}renderProperties(props){return cfnLoggingConfigurationPropsToCloudFormation(props)}}exports.CfnLoggingConfiguration=CfnLoggingConfiguration,_b=JSII_RTTI_SYMBOL_1,CfnLoggingConfiguration[_b]={fqn:"aws-cdk-lib.aws_wafv2.CfnLoggingConfiguration",version:"2.51.0"},CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::LoggingConfiguration";function CfnLoggingConfiguration_FieldToMatchPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("jsonBody",cdk.validateObject)(properties.jsonBody)),errors.collect(cdk.propertyValidator("method",cdk.validateObject)(properties.method)),errors.collect(cdk.propertyValidator("queryString",cdk.validateObject)(properties.queryString)),errors.collect(cdk.propertyValidator("singleHeader",cdk.validateObject)(properties.singleHeader)),errors.collect(cdk.propertyValidator("uriPath",cdk.validateObject)(properties.uriPath)),errors.wrap('supplied properties not correct for "FieldToMatchProperty"')}function cfnLoggingConfigurationFieldToMatchPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnLoggingConfiguration_FieldToMatchPropertyValidator(properties).assertSuccess(),{JsonBody:cdk.objectToCloudFormation(properties.jsonBody),Method:cdk.objectToCloudFormation(properties.method),QueryString:cdk.objectToCloudFormation(properties.queryString),SingleHeader:cdk.objectToCloudFormation(properties.singleHeader),UriPath:cdk.objectToCloudFormation(properties.uriPath)}):properties}function CfnLoggingConfigurationFieldToMatchPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("jsonBody","JsonBody",properties.JsonBody!=null?cfn_parse.FromCloudFormation.getAny(properties.JsonBody):void 0),ret.addPropertyResult("method","Method",properties.Method!=null?cfn_parse.FromCloudFormation.getAny(properties.Method):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse.FromCloudFormation.getAny(properties.QueryString):void 0),ret.addPropertyResult("singleHeader","SingleHeader",properties.SingleHeader!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleHeader):void 0),ret.addPropertyResult("uriPath","UriPath",properties.UriPath!=null?cfn_parse.FromCloudFormation.getAny(properties.UriPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRegexPatternSetPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("regularExpressionList",cdk.requiredValidator)(properties.regularExpressionList)),errors.collect(cdk.propertyValidator("regularExpressionList",cdk.listValidator(cdk.validateString))(properties.regularExpressionList)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnRegexPatternSetProps"')}function cfnRegexPatternSetPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRegexPatternSetPropsValidator(properties).assertSuccess(),{RegularExpressionList:cdk.listMapper(cdk.stringToCloudFormation)(properties.regularExpressionList),Scope:cdk.stringToCloudFormation(properties.scope),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnRegexPatternSetPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("regularExpressionList","RegularExpressionList",cfn_parse.FromCloudFormation.getStringArray(properties.RegularExpressionList)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnRegexPatternSet extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnRegexPatternSet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnRegexPatternSetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnRegexPatternSet),error}cdk.requireProperty(props,"regularExpressionList",this),cdk.requireProperty(props,"scope",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn")),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.regularExpressionList=props.regularExpressionList,this.scope=props.scope,this.description=props.description,this.name=props.name,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::WAFv2::RegexPatternSet",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnRegexPatternSetPropsFromCloudFormation(resourceProperties),ret=new CfnRegexPatternSet(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnRegexPatternSet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{regularExpressionList:this.regularExpressionList,scope:this.scope,description:this.description,name:this.name,tags:this.tags.renderTags()}}renderProperties(props){return cfnRegexPatternSetPropsToCloudFormation(props)}}exports.CfnRegexPatternSet=CfnRegexPatternSet,_c=JSII_RTTI_SYMBOL_1,CfnRegexPatternSet[_c]={fqn:"aws-cdk-lib.aws_wafv2.CfnRegexPatternSet",version:"2.51.0"},CfnRegexPatternSet.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::RegexPatternSet";function CfnRuleGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("capacity",cdk.requiredValidator)(properties.capacity)),errors.collect(cdk.propertyValidator("capacity",cdk.validateNumber)(properties.capacity)),errors.collect(cdk.propertyValidator("customResponseBodies",cdk.hashValidator(CfnRuleGroup_CustomResponseBodyPropertyValidator))(properties.customResponseBodies)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("rules",cdk.listValidator(CfnRuleGroup_RulePropertyValidator))(properties.rules)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("visibilityConfig",cdk.requiredValidator)(properties.visibilityConfig)),errors.collect(cdk.propertyValidator("visibilityConfig",CfnRuleGroup_VisibilityConfigPropertyValidator)(properties.visibilityConfig)),errors.wrap('supplied properties not correct for "CfnRuleGroupProps"')}function cfnRuleGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroupPropsValidator(properties).assertSuccess(),{Capacity:cdk.numberToCloudFormation(properties.capacity),Scope:cdk.stringToCloudFormation(properties.scope),VisibilityConfig:cfnRuleGroupVisibilityConfigPropertyToCloudFormation(properties.visibilityConfig),CustomResponseBodies:cdk.hashMapper(cfnRuleGroupCustomResponseBodyPropertyToCloudFormation)(properties.customResponseBodies),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),Rules:cdk.listMapper(cfnRuleGroupRulePropertyToCloudFormation)(properties.rules),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnRuleGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("capacity","Capacity",cfn_parse.FromCloudFormation.getNumber(properties.Capacity)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addPropertyResult("visibilityConfig","VisibilityConfig",CfnRuleGroupVisibilityConfigPropertyFromCloudFormation(properties.VisibilityConfig)),ret.addPropertyResult("customResponseBodies","CustomResponseBodies",properties.CustomResponseBodies!=null?cfn_parse.FromCloudFormation.getMap(CfnRuleGroupCustomResponseBodyPropertyFromCloudFormation)(properties.CustomResponseBodies):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("rules","Rules",properties.Rules!=null?cfn_parse.FromCloudFormation.getArray(CfnRuleGroupRulePropertyFromCloudFormation)(properties.Rules):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnRuleGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnRuleGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnRuleGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnRuleGroup),error}cdk.requireProperty(props,"capacity",this),cdk.requireProperty(props,"scope",this),cdk.requireProperty(props,"visibilityConfig",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn")),this.attrAvailableLabels=this.getAtt("AvailableLabels"),this.attrConsumedLabels=this.getAtt("ConsumedLabels"),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.attrLabelNamespace=cdk.Token.asString(this.getAtt("LabelNamespace")),this.capacity=props.capacity,this.scope=props.scope,this.visibilityConfig=props.visibilityConfig,this.customResponseBodies=props.customResponseBodies,this.description=props.description,this.name=props.name,this.rules=props.rules,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::WAFv2::RuleGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnRuleGroupPropsFromCloudFormation(resourceProperties),ret=new CfnRuleGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnRuleGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{capacity:this.capacity,scope:this.scope,visibilityConfig:this.visibilityConfig,customResponseBodies:this.customResponseBodies,description:this.description,name:this.name,rules:this.rules,tags:this.tags.renderTags()}}renderProperties(props){return cfnRuleGroupPropsToCloudFormation(props)}}exports.CfnRuleGroup=CfnRuleGroup,_d=JSII_RTTI_SYMBOL_1,CfnRuleGroup[_d]={fqn:"aws-cdk-lib.aws_wafv2.CfnRuleGroup",version:"2.51.0"},CfnRuleGroup.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::RuleGroup";function CfnRuleGroup_AndStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statements",cdk.requiredValidator)(properties.statements)),errors.collect(cdk.propertyValidator("statements",cdk.listValidator(CfnRuleGroup_StatementPropertyValidator))(properties.statements)),errors.wrap('supplied properties not correct for "AndStatementProperty"')}function cfnRuleGroupAndStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_AndStatementPropertyValidator(properties).assertSuccess(),{Statements:cdk.listMapper(cfnRuleGroupStatementPropertyToCloudFormation)(properties.statements)}):properties}function CfnRuleGroupAndStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statements","Statements",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupStatementPropertyFromCloudFormation)(properties.Statements)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_BodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "BodyProperty"')}function cfnRuleGroupBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_BodyPropertyValidator(properties).assertSuccess(),{OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnRuleGroupBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("oversizeHandling","OversizeHandling",properties.OversizeHandling!=null?cfn_parse.FromCloudFormation.getString(properties.OversizeHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_ByteMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("positionalConstraint",cdk.requiredValidator)(properties.positionalConstraint)),errors.collect(cdk.propertyValidator("positionalConstraint",cdk.validateString)(properties.positionalConstraint)),errors.collect(cdk.propertyValidator("searchString",cdk.validateString)(properties.searchString)),errors.collect(cdk.propertyValidator("searchStringBase64",cdk.validateString)(properties.searchStringBase64)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "ByteMatchStatementProperty"')}function cfnRuleGroupByteMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_ByteMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),PositionalConstraint:cdk.stringToCloudFormation(properties.positionalConstraint),SearchString:cdk.stringToCloudFormation(properties.searchString),SearchStringBase64:cdk.stringToCloudFormation(properties.searchStringBase64),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupByteMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("positionalConstraint","PositionalConstraint",cfn_parse.FromCloudFormation.getString(properties.PositionalConstraint)),ret.addPropertyResult("searchString","SearchString",properties.SearchString!=null?cfn_parse.FromCloudFormation.getString(properties.SearchString):void 0),ret.addPropertyResult("searchStringBase64","SearchStringBase64",properties.SearchStringBase64!=null?cfn_parse.FromCloudFormation.getString(properties.SearchStringBase64):void 0),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_CaptchaConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("immunityTimeProperty",CfnRuleGroup_ImmunityTimePropertyPropertyValidator)(properties.immunityTimeProperty)),errors.wrap('supplied properties not correct for "CaptchaConfigProperty"')}function cfnRuleGroupCaptchaConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_CaptchaConfigPropertyValidator(properties).assertSuccess(),{ImmunityTimeProperty:cfnRuleGroupImmunityTimePropertyPropertyToCloudFormation(properties.immunityTimeProperty)}):properties}function CfnRuleGroupCaptchaConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("immunityTimeProperty","ImmunityTimeProperty",properties.ImmunityTimeProperty!=null?CfnRuleGroupImmunityTimePropertyPropertyFromCloudFormation(properties.ImmunityTimeProperty):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_CookieMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("excludedCookies",cdk.listValidator(cdk.validateString))(properties.excludedCookies)),errors.collect(cdk.propertyValidator("includedCookies",cdk.listValidator(cdk.validateString))(properties.includedCookies)),errors.wrap('supplied properties not correct for "CookieMatchPatternProperty"')}function cfnRuleGroupCookieMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_CookieMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),ExcludedCookies:cdk.listMapper(cdk.stringToCloudFormation)(properties.excludedCookies),IncludedCookies:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedCookies)}):properties}function CfnRuleGroupCookieMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("excludedCookies","ExcludedCookies",properties.ExcludedCookies!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExcludedCookies):void 0),ret.addPropertyResult("includedCookies","IncludedCookies",properties.IncludedCookies!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedCookies):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_CookiesPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnRuleGroup_CookieMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.requiredValidator)(properties.oversizeHandling)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "CookiesProperty"')}function cfnRuleGroupCookiesPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_CookiesPropertyValidator(properties).assertSuccess(),{MatchPattern:cfnRuleGroupCookieMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnRuleGroupCookiesPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("matchPattern","MatchPattern",CfnRuleGroupCookieMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",cfn_parse.FromCloudFormation.getString(properties.OversizeHandling)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_CustomResponseBodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("content",cdk.requiredValidator)(properties.content)),errors.collect(cdk.propertyValidator("content",cdk.validateString)(properties.content)),errors.collect(cdk.propertyValidator("contentType",cdk.requiredValidator)(properties.contentType)),errors.collect(cdk.propertyValidator("contentType",cdk.validateString)(properties.contentType)),errors.wrap('supplied properties not correct for "CustomResponseBodyProperty"')}function cfnRuleGroupCustomResponseBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_CustomResponseBodyPropertyValidator(properties).assertSuccess(),{Content:cdk.stringToCloudFormation(properties.content),ContentType:cdk.stringToCloudFormation(properties.contentType)}):properties}function CfnRuleGroupCustomResponseBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("content","Content",cfn_parse.FromCloudFormation.getString(properties.Content)),ret.addPropertyResult("contentType","ContentType",cfn_parse.FromCloudFormation.getString(properties.ContentType)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_FieldToMatchPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allQueryArguments",cdk.validateObject)(properties.allQueryArguments)),errors.collect(cdk.propertyValidator("body",CfnRuleGroup_BodyPropertyValidator)(properties.body)),errors.collect(cdk.propertyValidator("cookies",CfnRuleGroup_CookiesPropertyValidator)(properties.cookies)),errors.collect(cdk.propertyValidator("headers",CfnRuleGroup_HeadersPropertyValidator)(properties.headers)),errors.collect(cdk.propertyValidator("jsonBody",CfnRuleGroup_JsonBodyPropertyValidator)(properties.jsonBody)),errors.collect(cdk.propertyValidator("method",cdk.validateObject)(properties.method)),errors.collect(cdk.propertyValidator("queryString",cdk.validateObject)(properties.queryString)),errors.collect(cdk.propertyValidator("singleHeader",cdk.validateObject)(properties.singleHeader)),errors.collect(cdk.propertyValidator("singleQueryArgument",cdk.validateObject)(properties.singleQueryArgument)),errors.collect(cdk.propertyValidator("uriPath",cdk.validateObject)(properties.uriPath)),errors.wrap('supplied properties not correct for "FieldToMatchProperty"')}function cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_FieldToMatchPropertyValidator(properties).assertSuccess(),{AllQueryArguments:cdk.objectToCloudFormation(properties.allQueryArguments),Body:cfnRuleGroupBodyPropertyToCloudFormation(properties.body),Cookies:cfnRuleGroupCookiesPropertyToCloudFormation(properties.cookies),Headers:cfnRuleGroupHeadersPropertyToCloudFormation(properties.headers),JsonBody:cfnRuleGroupJsonBodyPropertyToCloudFormation(properties.jsonBody),Method:cdk.objectToCloudFormation(properties.method),QueryString:cdk.objectToCloudFormation(properties.queryString),SingleHeader:cdk.objectToCloudFormation(properties.singleHeader),SingleQueryArgument:cdk.objectToCloudFormation(properties.singleQueryArgument),UriPath:cdk.objectToCloudFormation(properties.uriPath)}):properties}function CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allQueryArguments","AllQueryArguments",properties.AllQueryArguments!=null?cfn_parse.FromCloudFormation.getAny(properties.AllQueryArguments):void 0),ret.addPropertyResult("body","Body",properties.Body!=null?CfnRuleGroupBodyPropertyFromCloudFormation(properties.Body):void 0),ret.addPropertyResult("cookies","Cookies",properties.Cookies!=null?CfnRuleGroupCookiesPropertyFromCloudFormation(properties.Cookies):void 0),ret.addPropertyResult("headers","Headers",properties.Headers!=null?CfnRuleGroupHeadersPropertyFromCloudFormation(properties.Headers):void 0),ret.addPropertyResult("jsonBody","JsonBody",properties.JsonBody!=null?CfnRuleGroupJsonBodyPropertyFromCloudFormation(properties.JsonBody):void 0),ret.addPropertyResult("method","Method",properties.Method!=null?cfn_parse.FromCloudFormation.getAny(properties.Method):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse.FromCloudFormation.getAny(properties.QueryString):void 0),ret.addPropertyResult("singleHeader","SingleHeader",properties.SingleHeader!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleHeader):void 0),ret.addPropertyResult("singleQueryArgument","SingleQueryArgument",properties.SingleQueryArgument!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleQueryArgument):void 0),ret.addPropertyResult("uriPath","UriPath",properties.UriPath!=null?cfn_parse.FromCloudFormation.getAny(properties.UriPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_ForwardedIPConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.requiredValidator)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.validateString)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("headerName",cdk.requiredValidator)(properties.headerName)),errors.collect(cdk.propertyValidator("headerName",cdk.validateString)(properties.headerName)),errors.wrap('supplied properties not correct for "ForwardedIPConfigurationProperty"')}function cfnRuleGroupForwardedIPConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_ForwardedIPConfigurationPropertyValidator(properties).assertSuccess(),{FallbackBehavior:cdk.stringToCloudFormation(properties.fallbackBehavior),HeaderName:cdk.stringToCloudFormation(properties.headerName)}):properties}function CfnRuleGroupForwardedIPConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fallbackBehavior","FallbackBehavior",cfn_parse.FromCloudFormation.getString(properties.FallbackBehavior)),ret.addPropertyResult("headerName","HeaderName",cfn_parse.FromCloudFormation.getString(properties.HeaderName)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_GeoMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("countryCodes",cdk.listValidator(cdk.validateString))(properties.countryCodes)),errors.collect(cdk.propertyValidator("forwardedIpConfig",CfnRuleGroup_ForwardedIPConfigurationPropertyValidator)(properties.forwardedIpConfig)),errors.wrap('supplied properties not correct for "GeoMatchStatementProperty"')}function cfnRuleGroupGeoMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_GeoMatchStatementPropertyValidator(properties).assertSuccess(),{CountryCodes:cdk.listMapper(cdk.stringToCloudFormation)(properties.countryCodes),ForwardedIPConfig:cfnRuleGroupForwardedIPConfigurationPropertyToCloudFormation(properties.forwardedIpConfig)}):properties}function CfnRuleGroupGeoMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("countryCodes","CountryCodes",properties.CountryCodes!=null?cfn_parse.FromCloudFormation.getStringArray(properties.CountryCodes):void 0),ret.addPropertyResult("forwardedIpConfig","ForwardedIPConfig",properties.ForwardedIPConfig!=null?CfnRuleGroupForwardedIPConfigurationPropertyFromCloudFormation(properties.ForwardedIPConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_HeaderMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("excludedHeaders",cdk.listValidator(cdk.validateString))(properties.excludedHeaders)),errors.collect(cdk.propertyValidator("includedHeaders",cdk.listValidator(cdk.validateString))(properties.includedHeaders)),errors.wrap('supplied properties not correct for "HeaderMatchPatternProperty"')}function cfnRuleGroupHeaderMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_HeaderMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),ExcludedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.excludedHeaders),IncludedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedHeaders)}):properties}function CfnRuleGroupHeaderMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("excludedHeaders","ExcludedHeaders",properties.ExcludedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExcludedHeaders):void 0),ret.addPropertyResult("includedHeaders","IncludedHeaders",properties.IncludedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedHeaders):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_HeadersPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnRuleGroup_HeaderMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.requiredValidator)(properties.oversizeHandling)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "HeadersProperty"')}function cfnRuleGroupHeadersPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_HeadersPropertyValidator(properties).assertSuccess(),{MatchPattern:cfnRuleGroupHeaderMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnRuleGroupHeadersPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("matchPattern","MatchPattern",CfnRuleGroupHeaderMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",cfn_parse.FromCloudFormation.getString(properties.OversizeHandling)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_IPSetForwardedIPConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.requiredValidator)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.validateString)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("headerName",cdk.requiredValidator)(properties.headerName)),errors.collect(cdk.propertyValidator("headerName",cdk.validateString)(properties.headerName)),errors.collect(cdk.propertyValidator("position",cdk.requiredValidator)(properties.position)),errors.collect(cdk.propertyValidator("position",cdk.validateString)(properties.position)),errors.wrap('supplied properties not correct for "IPSetForwardedIPConfigurationProperty"')}function cfnRuleGroupIPSetForwardedIPConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_IPSetForwardedIPConfigurationPropertyValidator(properties).assertSuccess(),{FallbackBehavior:cdk.stringToCloudFormation(properties.fallbackBehavior),HeaderName:cdk.stringToCloudFormation(properties.headerName),Position:cdk.stringToCloudFormation(properties.position)}):properties}function CfnRuleGroupIPSetForwardedIPConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fallbackBehavior","FallbackBehavior",cfn_parse.FromCloudFormation.getString(properties.FallbackBehavior)),ret.addPropertyResult("headerName","HeaderName",cfn_parse.FromCloudFormation.getString(properties.HeaderName)),ret.addPropertyResult("position","Position",cfn_parse.FromCloudFormation.getString(properties.Position)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_IPSetReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("ipSetForwardedIpConfig",CfnRuleGroup_IPSetForwardedIPConfigurationPropertyValidator)(properties.ipSetForwardedIpConfig)),errors.wrap('supplied properties not correct for "IPSetReferenceStatementProperty"')}function cfnRuleGroupIPSetReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_IPSetReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),IPSetForwardedIPConfig:cfnRuleGroupIPSetForwardedIPConfigurationPropertyToCloudFormation(properties.ipSetForwardedIpConfig)}):properties}function CfnRuleGroupIPSetReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("ipSetForwardedIpConfig","IPSetForwardedIPConfig",properties.IPSetForwardedIPConfig!=null?CfnRuleGroupIPSetForwardedIPConfigurationPropertyFromCloudFormation(properties.IPSetForwardedIPConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_ImmunityTimePropertyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("immunityTime",cdk.requiredValidator)(properties.immunityTime)),errors.collect(cdk.propertyValidator("immunityTime",cdk.validateNumber)(properties.immunityTime)),errors.wrap('supplied properties not correct for "ImmunityTimePropertyProperty"')}function cfnRuleGroupImmunityTimePropertyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_ImmunityTimePropertyPropertyValidator(properties).assertSuccess(),{ImmunityTime:cdk.numberToCloudFormation(properties.immunityTime)}):properties}function CfnRuleGroupImmunityTimePropertyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("immunityTime","ImmunityTime",cfn_parse.FromCloudFormation.getNumber(properties.ImmunityTime)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_JsonBodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("invalidFallbackBehavior",cdk.validateString)(properties.invalidFallbackBehavior)),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnRuleGroup_JsonMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "JsonBodyProperty"')}function cfnRuleGroupJsonBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_JsonBodyPropertyValidator(properties).assertSuccess(),{InvalidFallbackBehavior:cdk.stringToCloudFormation(properties.invalidFallbackBehavior),MatchPattern:cfnRuleGroupJsonMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnRuleGroupJsonBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("invalidFallbackBehavior","InvalidFallbackBehavior",properties.InvalidFallbackBehavior!=null?cfn_parse.FromCloudFormation.getString(properties.InvalidFallbackBehavior):void 0),ret.addPropertyResult("matchPattern","MatchPattern",CfnRuleGroupJsonMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",properties.OversizeHandling!=null?cfn_parse.FromCloudFormation.getString(properties.OversizeHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_JsonMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("includedPaths",cdk.listValidator(cdk.validateString))(properties.includedPaths)),errors.wrap('supplied properties not correct for "JsonMatchPatternProperty"')}function cfnRuleGroupJsonMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_JsonMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),IncludedPaths:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedPaths)}):properties}function CfnRuleGroupJsonMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("includedPaths","IncludedPaths",properties.IncludedPaths!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedPaths):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_LabelPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.wrap('supplied properties not correct for "LabelProperty"')}function cfnRuleGroupLabelPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_LabelPropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name)}):properties}function CfnRuleGroupLabelPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_LabelMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("key",cdk.requiredValidator)(properties.key)),errors.collect(cdk.propertyValidator("key",cdk.validateString)(properties.key)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.wrap('supplied properties not correct for "LabelMatchStatementProperty"')}function cfnRuleGroupLabelMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_LabelMatchStatementPropertyValidator(properties).assertSuccess(),{Key:cdk.stringToCloudFormation(properties.key),Scope:cdk.stringToCloudFormation(properties.scope)}):properties}function CfnRuleGroupLabelMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",cfn_parse.FromCloudFormation.getString(properties.Key)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_LabelSummaryPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.wrap('supplied properties not correct for "LabelSummaryProperty"')}function cfnRuleGroupLabelSummaryPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_LabelSummaryPropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name)}):properties}function CfnRuleGroupLabelSummaryPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_NotStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statement",cdk.requiredValidator)(properties.statement)),errors.collect(cdk.propertyValidator("statement",CfnRuleGroup_StatementPropertyValidator)(properties.statement)),errors.wrap('supplied properties not correct for "NotStatementProperty"')}function cfnRuleGroupNotStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_NotStatementPropertyValidator(properties).assertSuccess(),{Statement:cfnRuleGroupStatementPropertyToCloudFormation(properties.statement)}):properties}function CfnRuleGroupNotStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statement","Statement",CfnRuleGroupStatementPropertyFromCloudFormation(properties.Statement)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_OrStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statements",cdk.requiredValidator)(properties.statements)),errors.collect(cdk.propertyValidator("statements",cdk.listValidator(CfnRuleGroup_StatementPropertyValidator))(properties.statements)),errors.wrap('supplied properties not correct for "OrStatementProperty"')}function cfnRuleGroupOrStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_OrStatementPropertyValidator(properties).assertSuccess(),{Statements:cdk.listMapper(cfnRuleGroupStatementPropertyToCloudFormation)(properties.statements)}):properties}function CfnRuleGroupOrStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statements","Statements",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupStatementPropertyFromCloudFormation)(properties.Statements)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RateBasedStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("aggregateKeyType",cdk.requiredValidator)(properties.aggregateKeyType)),errors.collect(cdk.propertyValidator("aggregateKeyType",cdk.validateString)(properties.aggregateKeyType)),errors.collect(cdk.propertyValidator("forwardedIpConfig",CfnRuleGroup_ForwardedIPConfigurationPropertyValidator)(properties.forwardedIpConfig)),errors.collect(cdk.propertyValidator("limit",cdk.requiredValidator)(properties.limit)),errors.collect(cdk.propertyValidator("limit",cdk.validateNumber)(properties.limit)),errors.collect(cdk.propertyValidator("scopeDownStatement",CfnRuleGroup_StatementPropertyValidator)(properties.scopeDownStatement)),errors.wrap('supplied properties not correct for "RateBasedStatementProperty"')}function cfnRuleGroupRateBasedStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RateBasedStatementPropertyValidator(properties).assertSuccess(),{AggregateKeyType:cdk.stringToCloudFormation(properties.aggregateKeyType),ForwardedIPConfig:cfnRuleGroupForwardedIPConfigurationPropertyToCloudFormation(properties.forwardedIpConfig),Limit:cdk.numberToCloudFormation(properties.limit),ScopeDownStatement:cfnRuleGroupStatementPropertyToCloudFormation(properties.scopeDownStatement)}):properties}function CfnRuleGroupRateBasedStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("aggregateKeyType","AggregateKeyType",cfn_parse.FromCloudFormation.getString(properties.AggregateKeyType)),ret.addPropertyResult("forwardedIpConfig","ForwardedIPConfig",properties.ForwardedIPConfig!=null?CfnRuleGroupForwardedIPConfigurationPropertyFromCloudFormation(properties.ForwardedIPConfig):void 0),ret.addPropertyResult("limit","Limit",cfn_parse.FromCloudFormation.getNumber(properties.Limit)),ret.addPropertyResult("scopeDownStatement","ScopeDownStatement",properties.ScopeDownStatement!=null?CfnRuleGroupStatementPropertyFromCloudFormation(properties.ScopeDownStatement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RegexMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("regexString",cdk.requiredValidator)(properties.regexString)),errors.collect(cdk.propertyValidator("regexString",cdk.validateString)(properties.regexString)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "RegexMatchStatementProperty"')}function cfnRuleGroupRegexMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RegexMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),RegexString:cdk.stringToCloudFormation(properties.regexString),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupRegexMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("regexString","RegexString",cfn_parse.FromCloudFormation.getString(properties.RegexString)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RegexPatternSetReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "RegexPatternSetReferenceStatementProperty"')}function cfnRuleGroupRegexPatternSetReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RegexPatternSetReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupRegexPatternSetReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RulePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("action",CfnRuleGroup_RuleActionPropertyValidator)(properties.action)),errors.collect(cdk.propertyValidator("captchaConfig",CfnRuleGroup_CaptchaConfigPropertyValidator)(properties.captchaConfig)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("priority",cdk.requiredValidator)(properties.priority)),errors.collect(cdk.propertyValidator("priority",cdk.validateNumber)(properties.priority)),errors.collect(cdk.propertyValidator("ruleLabels",cdk.listValidator(CfnRuleGroup_LabelPropertyValidator))(properties.ruleLabels)),errors.collect(cdk.propertyValidator("statement",cdk.requiredValidator)(properties.statement)),errors.collect(cdk.propertyValidator("statement",CfnRuleGroup_StatementPropertyValidator)(properties.statement)),errors.collect(cdk.propertyValidator("visibilityConfig",cdk.requiredValidator)(properties.visibilityConfig)),errors.collect(cdk.propertyValidator("visibilityConfig",CfnRuleGroup_VisibilityConfigPropertyValidator)(properties.visibilityConfig)),errors.wrap('supplied properties not correct for "RuleProperty"')}function cfnRuleGroupRulePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RulePropertyValidator(properties).assertSuccess(),{Action:cfnRuleGroupRuleActionPropertyToCloudFormation(properties.action),CaptchaConfig:cfnRuleGroupCaptchaConfigPropertyToCloudFormation(properties.captchaConfig),Name:cdk.stringToCloudFormation(properties.name),Priority:cdk.numberToCloudFormation(properties.priority),RuleLabels:cdk.listMapper(cfnRuleGroupLabelPropertyToCloudFormation)(properties.ruleLabels),Statement:cfnRuleGroupStatementPropertyToCloudFormation(properties.statement),VisibilityConfig:cfnRuleGroupVisibilityConfigPropertyToCloudFormation(properties.visibilityConfig)}):properties}function CfnRuleGroupRulePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("action","Action",properties.Action!=null?CfnRuleGroupRuleActionPropertyFromCloudFormation(properties.Action):void 0),ret.addPropertyResult("captchaConfig","CaptchaConfig",properties.CaptchaConfig!=null?CfnRuleGroupCaptchaConfigPropertyFromCloudFormation(properties.CaptchaConfig):void 0),ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("priority","Priority",cfn_parse.FromCloudFormation.getNumber(properties.Priority)),ret.addPropertyResult("ruleLabels","RuleLabels",properties.RuleLabels!=null?cfn_parse.FromCloudFormation.getArray(CfnRuleGroupLabelPropertyFromCloudFormation)(properties.RuleLabels):void 0),ret.addPropertyResult("statement","Statement",CfnRuleGroupStatementPropertyFromCloudFormation(properties.Statement)),ret.addPropertyResult("visibilityConfig","VisibilityConfig",CfnRuleGroupVisibilityConfigPropertyFromCloudFormation(properties.VisibilityConfig)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RuleActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allow",cdk.validateObject)(properties.allow)),errors.collect(cdk.propertyValidator("block",cdk.validateObject)(properties.block)),errors.collect(cdk.propertyValidator("captcha",cdk.validateObject)(properties.captcha)),errors.collect(cdk.propertyValidator("count",cdk.validateObject)(properties.count)),errors.wrap('supplied properties not correct for "RuleActionProperty"')}function cfnRuleGroupRuleActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RuleActionPropertyValidator(properties).assertSuccess(),{Allow:cdk.objectToCloudFormation(properties.allow),Block:cdk.objectToCloudFormation(properties.block),Captcha:cdk.objectToCloudFormation(properties.captcha),Count:cdk.objectToCloudFormation(properties.count)}):properties}function CfnRuleGroupRuleActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allow","Allow",properties.Allow!=null?cfn_parse.FromCloudFormation.getAny(properties.Allow):void 0),ret.addPropertyResult("block","Block",properties.Block!=null?cfn_parse.FromCloudFormation.getAny(properties.Block):void 0),ret.addPropertyResult("captcha","Captcha",properties.Captcha!=null?cfn_parse.FromCloudFormation.getAny(properties.Captcha):void 0),ret.addPropertyResult("count","Count",properties.Count!=null?cfn_parse.FromCloudFormation.getAny(properties.Count):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_SizeConstraintStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.requiredValidator)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.validateString)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("size",cdk.requiredValidator)(properties.size)),errors.collect(cdk.propertyValidator("size",cdk.validateNumber)(properties.size)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "SizeConstraintStatementProperty"')}function cfnRuleGroupSizeConstraintStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_SizeConstraintStatementPropertyValidator(properties).assertSuccess(),{ComparisonOperator:cdk.stringToCloudFormation(properties.comparisonOperator),FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),Size:cdk.numberToCloudFormation(properties.size),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupSizeConstraintStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("comparisonOperator","ComparisonOperator",cfn_parse.FromCloudFormation.getString(properties.ComparisonOperator)),ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("size","Size",cfn_parse.FromCloudFormation.getNumber(properties.Size)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_SqliMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("sensitivityLevel",cdk.validateString)(properties.sensitivityLevel)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "SqliMatchStatementProperty"')}function cfnRuleGroupSqliMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_SqliMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),SensitivityLevel:cdk.stringToCloudFormation(properties.sensitivityLevel),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupSqliMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("sensitivityLevel","SensitivityLevel",properties.SensitivityLevel!=null?cfn_parse.FromCloudFormation.getString(properties.SensitivityLevel):void 0),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_StatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("andStatement",CfnRuleGroup_AndStatementPropertyValidator)(properties.andStatement)),errors.collect(cdk.propertyValidator("byteMatchStatement",CfnRuleGroup_ByteMatchStatementPropertyValidator)(properties.byteMatchStatement)),errors.collect(cdk.propertyValidator("geoMatchStatement",CfnRuleGroup_GeoMatchStatementPropertyValidator)(properties.geoMatchStatement)),errors.collect(cdk.propertyValidator("ipSetReferenceStatement",CfnRuleGroup_IPSetReferenceStatementPropertyValidator)(properties.ipSetReferenceStatement)),errors.collect(cdk.propertyValidator("labelMatchStatement",CfnRuleGroup_LabelMatchStatementPropertyValidator)(properties.labelMatchStatement)),errors.collect(cdk.propertyValidator("notStatement",CfnRuleGroup_NotStatementPropertyValidator)(properties.notStatement)),errors.collect(cdk.propertyValidator("orStatement",CfnRuleGroup_OrStatementPropertyValidator)(properties.orStatement)),errors.collect(cdk.propertyValidator("rateBasedStatement",CfnRuleGroup_RateBasedStatementPropertyValidator)(properties.rateBasedStatement)),errors.collect(cdk.propertyValidator("regexMatchStatement",CfnRuleGroup_RegexMatchStatementPropertyValidator)(properties.regexMatchStatement)),errors.collect(cdk.propertyValidator("regexPatternSetReferenceStatement",CfnRuleGroup_RegexPatternSetReferenceStatementPropertyValidator)(properties.regexPatternSetReferenceStatement)),errors.collect(cdk.propertyValidator("sizeConstraintStatement",CfnRuleGroup_SizeConstraintStatementPropertyValidator)(properties.sizeConstraintStatement)),errors.collect(cdk.propertyValidator("sqliMatchStatement",CfnRuleGroup_SqliMatchStatementPropertyValidator)(properties.sqliMatchStatement)),errors.collect(cdk.propertyValidator("xssMatchStatement",CfnRuleGroup_XssMatchStatementPropertyValidator)(properties.xssMatchStatement)),errors.wrap('supplied properties not correct for "StatementProperty"')}function cfnRuleGroupStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_StatementPropertyValidator(properties).assertSuccess(),{AndStatement:cfnRuleGroupAndStatementPropertyToCloudFormation(properties.andStatement),ByteMatchStatement:cfnRuleGroupByteMatchStatementPropertyToCloudFormation(properties.byteMatchStatement),GeoMatchStatement:cfnRuleGroupGeoMatchStatementPropertyToCloudFormation(properties.geoMatchStatement),IPSetReferenceStatement:cfnRuleGroupIPSetReferenceStatementPropertyToCloudFormation(properties.ipSetReferenceStatement),LabelMatchStatement:cfnRuleGroupLabelMatchStatementPropertyToCloudFormation(properties.labelMatchStatement),NotStatement:cfnRuleGroupNotStatementPropertyToCloudFormation(properties.notStatement),OrStatement:cfnRuleGroupOrStatementPropertyToCloudFormation(properties.orStatement),RateBasedStatement:cfnRuleGroupRateBasedStatementPropertyToCloudFormation(properties.rateBasedStatement),RegexMatchStatement:cfnRuleGroupRegexMatchStatementPropertyToCloudFormation(properties.regexMatchStatement),RegexPatternSetReferenceStatement:cfnRuleGroupRegexPatternSetReferenceStatementPropertyToCloudFormation(properties.regexPatternSetReferenceStatement),SizeConstraintStatement:cfnRuleGroupSizeConstraintStatementPropertyToCloudFormation(properties.sizeConstraintStatement),SqliMatchStatement:cfnRuleGroupSqliMatchStatementPropertyToCloudFormation(properties.sqliMatchStatement),XssMatchStatement:cfnRuleGroupXssMatchStatementPropertyToCloudFormation(properties.xssMatchStatement)}):properties}function CfnRuleGroupStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("andStatement","AndStatement",properties.AndStatement!=null?CfnRuleGroupAndStatementPropertyFromCloudFormation(properties.AndStatement):void 0),ret.addPropertyResult("byteMatchStatement","ByteMatchStatement",properties.ByteMatchStatement!=null?CfnRuleGroupByteMatchStatementPropertyFromCloudFormation(properties.ByteMatchStatement):void 0),ret.addPropertyResult("geoMatchStatement","GeoMatchStatement",properties.GeoMatchStatement!=null?CfnRuleGroupGeoMatchStatementPropertyFromCloudFormation(properties.GeoMatchStatement):void 0),ret.addPropertyResult("ipSetReferenceStatement","IPSetReferenceStatement",properties.IPSetReferenceStatement!=null?CfnRuleGroupIPSetReferenceStatementPropertyFromCloudFormation(properties.IPSetReferenceStatement):void 0),ret.addPropertyResult("labelMatchStatement","LabelMatchStatement",properties.LabelMatchStatement!=null?CfnRuleGroupLabelMatchStatementPropertyFromCloudFormation(properties.LabelMatchStatement):void 0),ret.addPropertyResult("notStatement","NotStatement",properties.NotStatement!=null?CfnRuleGroupNotStatementPropertyFromCloudFormation(properties.NotStatement):void 0),ret.addPropertyResult("orStatement","OrStatement",properties.OrStatement!=null?CfnRuleGroupOrStatementPropertyFromCloudFormation(properties.OrStatement):void 0),ret.addPropertyResult("rateBasedStatement","RateBasedStatement",properties.RateBasedStatement!=null?CfnRuleGroupRateBasedStatementPropertyFromCloudFormation(properties.RateBasedStatement):void 0),ret.addPropertyResult("regexMatchStatement","RegexMatchStatement",properties.RegexMatchStatement!=null?CfnRuleGroupRegexMatchStatementPropertyFromCloudFormation(properties.RegexMatchStatement):void 0),ret.addPropertyResult("regexPatternSetReferenceStatement","RegexPatternSetReferenceStatement",properties.RegexPatternSetReferenceStatement!=null?CfnRuleGroupRegexPatternSetReferenceStatementPropertyFromCloudFormation(properties.RegexPatternSetReferenceStatement):void 0),ret.addPropertyResult("sizeConstraintStatement","SizeConstraintStatement",properties.SizeConstraintStatement!=null?CfnRuleGroupSizeConstraintStatementPropertyFromCloudFormation(properties.SizeConstraintStatement):void 0),ret.addPropertyResult("sqliMatchStatement","SqliMatchStatement",properties.SqliMatchStatement!=null?CfnRuleGroupSqliMatchStatementPropertyFromCloudFormation(properties.SqliMatchStatement):void 0),ret.addPropertyResult("xssMatchStatement","XssMatchStatement",properties.XssMatchStatement!=null?CfnRuleGroupXssMatchStatementPropertyFromCloudFormation(properties.XssMatchStatement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_TextTransformationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("priority",cdk.requiredValidator)(properties.priority)),errors.collect(cdk.propertyValidator("priority",cdk.validateNumber)(properties.priority)),errors.collect(cdk.propertyValidator("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "TextTransformationProperty"')}function cfnRuleGroupTextTransformationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_TextTransformationPropertyValidator(properties).assertSuccess(),{Priority:cdk.numberToCloudFormation(properties.priority),Type:cdk.stringToCloudFormation(properties.type)}):properties}function CfnRuleGroupTextTransformationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("priority","Priority",cfn_parse.FromCloudFormation.getNumber(properties.Priority)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_VisibilityConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("cloudWatchMetricsEnabled",cdk.requiredValidator)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("cloudWatchMetricsEnabled",cdk.validateBoolean)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("metricName",cdk.requiredValidator)(properties.metricName)),errors.collect(cdk.propertyValidator("metricName",cdk.validateString)(properties.metricName)),errors.collect(cdk.propertyValidator("sampledRequestsEnabled",cdk.requiredValidator)(properties.sampledRequestsEnabled)),errors.collect(cdk.propertyValidator("sampledRequestsEnabled",cdk.validateBoolean)(properties.sampledRequestsEnabled)),errors.wrap('supplied properties not correct for "VisibilityConfigProperty"')}function cfnRuleGroupVisibilityConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_VisibilityConfigPropertyValidator(properties).assertSuccess(),{CloudWatchMetricsEnabled:cdk.booleanToCloudFormation(properties.cloudWatchMetricsEnabled),MetricName:cdk.stringToCloudFormation(properties.metricName),SampledRequestsEnabled:cdk.booleanToCloudFormation(properties.sampledRequestsEnabled)}):properties}function CfnRuleGroupVisibilityConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("cloudWatchMetricsEnabled","CloudWatchMetricsEnabled",cfn_parse.FromCloudFormation.getBoolean(properties.CloudWatchMetricsEnabled)),ret.addPropertyResult("metricName","MetricName",cfn_parse.FromCloudFormation.getString(properties.MetricName)),ret.addPropertyResult("sampledRequestsEnabled","SampledRequestsEnabled",cfn_parse.FromCloudFormation.getBoolean(properties.SampledRequestsEnabled)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_XssMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "XssMatchStatementProperty"')}function cfnRuleGroupXssMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_XssMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupXssMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACLPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("captchaConfig",CfnWebACL_CaptchaConfigPropertyValidator)(properties.captchaConfig)),errors.collect(cdk.propertyValidator("customResponseBodies",cdk.hashValidator(CfnWebACL_CustomResponseBodyPropertyValidator))(properties.customResponseBodies)),errors.collect(cdk.propertyValidator("defaultAction",cdk.requiredValidator)(properties.defaultAction)),errors.collect(cdk.propertyValidator("defaultAction",CfnWebACL_DefaultActionPropertyValidator)(properties.defaultAction)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("rules",cdk.listValidator(CfnWebACL_RulePropertyValidator))(properties.rules)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("visibilityConfig",cdk.requiredValidator)(properties.visibilityConfig)),errors.collect(cdk.propertyValidator("visibilityConfig",CfnWebACL_VisibilityConfigPropertyValidator)(properties.visibilityConfig)),errors.wrap('supplied properties not correct for "CfnWebACLProps"')}function cfnWebACLPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACLPropsValidator(properties).assertSuccess(),{DefaultAction:cfnWebACLDefaultActionPropertyToCloudFormation(properties.defaultAction),Scope:cdk.stringToCloudFormation(properties.scope),VisibilityConfig:cfnWebACLVisibilityConfigPropertyToCloudFormation(properties.visibilityConfig),CaptchaConfig:cfnWebACLCaptchaConfigPropertyToCloudFormation(properties.captchaConfig),CustomResponseBodies:cdk.hashMapper(cfnWebACLCustomResponseBodyPropertyToCloudFormation)(properties.customResponseBodies),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),Rules:cdk.listMapper(cfnWebACLRulePropertyToCloudFormation)(properties.rules),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnWebACLPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("defaultAction","DefaultAction",CfnWebACLDefaultActionPropertyFromCloudFormation(properties.DefaultAction)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addPropertyResult("visibilityConfig","VisibilityConfig",CfnWebACLVisibilityConfigPropertyFromCloudFormation(properties.VisibilityConfig)),ret.addPropertyResult("captchaConfig","CaptchaConfig",properties.CaptchaConfig!=null?CfnWebACLCaptchaConfigPropertyFromCloudFormation(properties.CaptchaConfig):void 0),ret.addPropertyResult("customResponseBodies","CustomResponseBodies",properties.CustomResponseBodies!=null?cfn_parse.FromCloudFormation.getMap(CfnWebACLCustomResponseBodyPropertyFromCloudFormation)(properties.CustomResponseBodies):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("rules","Rules",properties.Rules!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLRulePropertyFromCloudFormation)(properties.Rules):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnWebACL extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnWebACL.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnWebACLProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWebACL),error}cdk.requireProperty(props,"defaultAction",this),cdk.requireProperty(props,"scope",this),cdk.requireProperty(props,"visibilityConfig",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn")),this.attrCapacity=cdk.Token.asNumber(this.getAtt("Capacity")),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.attrLabelNamespace=cdk.Token.asString(this.getAtt("LabelNamespace")),this.defaultAction=props.defaultAction,this.scope=props.scope,this.visibilityConfig=props.visibilityConfig,this.captchaConfig=props.captchaConfig,this.customResponseBodies=props.customResponseBodies,this.description=props.description,this.name=props.name,this.rules=props.rules,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::WAFv2::WebACL",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWebACLPropsFromCloudFormation(resourceProperties),ret=new CfnWebACL(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnWebACL.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{defaultAction:this.defaultAction,scope:this.scope,visibilityConfig:this.visibilityConfig,captchaConfig:this.captchaConfig,customResponseBodies:this.customResponseBodies,description:this.description,name:this.name,rules:this.rules,tags:this.tags.renderTags()}}renderProperties(props){return cfnWebACLPropsToCloudFormation(props)}}exports.CfnWebACL=CfnWebACL,_e=JSII_RTTI_SYMBOL_1,CfnWebACL[_e]={fqn:"aws-cdk-lib.aws_wafv2.CfnWebACL",version:"2.51.0"},CfnWebACL.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::WebACL";function CfnWebACL_AllowActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customRequestHandling",CfnWebACL_CustomRequestHandlingPropertyValidator)(properties.customRequestHandling)),errors.wrap('supplied properties not correct for "AllowActionProperty"')}function cfnWebACLAllowActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_AllowActionPropertyValidator(properties).assertSuccess(),{CustomRequestHandling:cfnWebACLCustomRequestHandlingPropertyToCloudFormation(properties.customRequestHandling)}):properties}function CfnWebACLAllowActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customRequestHandling","CustomRequestHandling",properties.CustomRequestHandling!=null?CfnWebACLCustomRequestHandlingPropertyFromCloudFormation(properties.CustomRequestHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_AndStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statements",cdk.requiredValidator)(properties.statements)),errors.collect(cdk.propertyValidator("statements",cdk.listValidator(CfnWebACL_StatementPropertyValidator))(properties.statements)),errors.wrap('supplied properties not correct for "AndStatementProperty"')}function cfnWebACLAndStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_AndStatementPropertyValidator(properties).assertSuccess(),{Statements:cdk.listMapper(cfnWebACLStatementPropertyToCloudFormation)(properties.statements)}):properties}function CfnWebACLAndStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statements","Statements",cfn_parse.FromCloudFormation.getArray(CfnWebACLStatementPropertyFromCloudFormation)(properties.Statements)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_BlockActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customResponse",CfnWebACL_CustomResponsePropertyValidator)(properties.customResponse)),errors.wrap('supplied properties not correct for "BlockActionProperty"')}function cfnWebACLBlockActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_BlockActionPropertyValidator(properties).assertSuccess(),{CustomResponse:cfnWebACLCustomResponsePropertyToCloudFormation(properties.customResponse)}):properties}function CfnWebACLBlockActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customResponse","CustomResponse",properties.CustomResponse!=null?CfnWebACLCustomResponsePropertyFromCloudFormation(properties.CustomResponse):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_BodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "BodyProperty"')}function cfnWebACLBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_BodyPropertyValidator(properties).assertSuccess(),{OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnWebACLBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("oversizeHandling","OversizeHandling",properties.OversizeHandling!=null?cfn_parse.FromCloudFormation.getString(properties.OversizeHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ByteMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("positionalConstraint",cdk.requiredValidator)(properties.positionalConstraint)),errors.collect(cdk.propertyValidator("positionalConstraint",cdk.validateString)(properties.positionalConstraint)),errors.collect(cdk.propertyValidator("searchString",cdk.validateString)(properties.searchString)),errors.collect(cdk.propertyValidator("searchStringBase64",cdk.validateString)(properties.searchStringBase64)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "ByteMatchStatementProperty"')}function cfnWebACLByteMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ByteMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),PositionalConstraint:cdk.stringToCloudFormation(properties.positionalConstraint),SearchString:cdk.stringToCloudFormation(properties.searchString),SearchStringBase64:cdk.stringToCloudFormation(properties.searchStringBase64),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLByteMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("positionalConstraint","PositionalConstraint",cfn_parse.FromCloudFormation.getString(properties.PositionalConstraint)),ret.addPropertyResult("searchString","SearchString",properties.SearchString!=null?cfn_parse.FromCloudFormation.getString(properties.SearchString):void 0),ret.addPropertyResult("searchStringBase64","SearchStringBase64",properties.SearchStringBase64!=null?cfn_parse.FromCloudFormation.getString(properties.SearchStringBase64):void 0),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CaptchaActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customRequestHandling",CfnWebACL_CustomRequestHandlingPropertyValidator)(properties.customRequestHandling)),errors.wrap('supplied properties not correct for "CaptchaActionProperty"')}function cfnWebACLCaptchaActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CaptchaActionPropertyValidator(properties).assertSuccess(),{CustomRequestHandling:cfnWebACLCustomRequestHandlingPropertyToCloudFormation(properties.customRequestHandling)}):properties}function CfnWebACLCaptchaActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customRequestHandling","CustomRequestHandling",properties.CustomRequestHandling!=null?CfnWebACLCustomRequestHandlingPropertyFromCloudFormation(properties.CustomRequestHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CaptchaConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("immunityTimeProperty",CfnWebACL_ImmunityTimePropertyPropertyValidator)(properties.immunityTimeProperty)),errors.wrap('supplied properties not correct for "CaptchaConfigProperty"')}function cfnWebACLCaptchaConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CaptchaConfigPropertyValidator(properties).assertSuccess(),{ImmunityTimeProperty:cfnWebACLImmunityTimePropertyPropertyToCloudFormation(properties.immunityTimeProperty)}):properties}function CfnWebACLCaptchaConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("immunityTimeProperty","ImmunityTimeProperty",properties.ImmunityTimeProperty!=null?CfnWebACLImmunityTimePropertyPropertyFromCloudFormation(properties.ImmunityTimeProperty):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CookieMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("excludedCookies",cdk.listValidator(cdk.validateString))(properties.excludedCookies)),errors.collect(cdk.propertyValidator("includedCookies",cdk.listValidator(cdk.validateString))(properties.includedCookies)),errors.wrap('supplied properties not correct for "CookieMatchPatternProperty"')}function cfnWebACLCookieMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CookieMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),ExcludedCookies:cdk.listMapper(cdk.stringToCloudFormation)(properties.excludedCookies),IncludedCookies:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedCookies)}):properties}function CfnWebACLCookieMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("excludedCookies","ExcludedCookies",properties.ExcludedCookies!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExcludedCookies):void 0),ret.addPropertyResult("includedCookies","IncludedCookies",properties.IncludedCookies!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedCookies):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CookiesPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnWebACL_CookieMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.requiredValidator)(properties.oversizeHandling)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "CookiesProperty"')}function cfnWebACLCookiesPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CookiesPropertyValidator(properties).assertSuccess(),{MatchPattern:cfnWebACLCookieMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnWebACLCookiesPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("matchPattern","MatchPattern",CfnWebACLCookieMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",cfn_parse.FromCloudFormation.getString(properties.OversizeHandling)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CountActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customRequestHandling",CfnWebACL_CustomRequestHandlingPropertyValidator)(properties.customRequestHandling)),errors.wrap('supplied properties not correct for "CountActionProperty"')}function cfnWebACLCountActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CountActionPropertyValidator(properties).assertSuccess(),{CustomRequestHandling:cfnWebACLCustomRequestHandlingPropertyToCloudFormation(properties.customRequestHandling)}):properties}function CfnWebACLCountActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customRequestHandling","CustomRequestHandling",properties.CustomRequestHandling!=null?CfnWebACLCustomRequestHandlingPropertyFromCloudFormation(properties.CustomRequestHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CustomHTTPHeaderPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("value",cdk.requiredValidator)(properties.value)),errors.collect(cdk.propertyValidator("value",cdk.validateString)(properties.value)),errors.wrap('supplied properties not correct for "CustomHTTPHeaderProperty"')}function cfnWebACLCustomHTTPHeaderPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CustomHTTPHeaderPropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),Value:cdk.stringToCloudFormation(properties.value)}):properties}function CfnWebACLCustomHTTPHeaderPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("value","Value",cfn_parse.FromCloudFormation.getString(properties.Value)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CustomRequestHandlingPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("insertHeaders",cdk.requiredValidator)(properties.insertHeaders)),errors.collect(cdk.propertyValidator("insertHeaders",cdk.listValidator(CfnWebACL_CustomHTTPHeaderPropertyValidator))(properties.insertHeaders)),errors.wrap('supplied properties not correct for "CustomRequestHandlingProperty"')}function cfnWebACLCustomRequestHandlingPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CustomRequestHandlingPropertyValidator(properties).assertSuccess(),{InsertHeaders:cdk.listMapper(cfnWebACLCustomHTTPHeaderPropertyToCloudFormation)(properties.insertHeaders)}):properties}function CfnWebACLCustomRequestHandlingPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("insertHeaders","InsertHeaders",cfn_parse.FromCloudFormation.getArray(CfnWebACLCustomHTTPHeaderPropertyFromCloudFormation)(properties.InsertHeaders)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CustomResponsePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customResponseBodyKey",cdk.validateString)(properties.customResponseBodyKey)),errors.collect(cdk.propertyValidator("responseCode",cdk.requiredValidator)(properties.responseCode)),errors.collect(cdk.propertyValidator("responseCode",cdk.validateNumber)(properties.responseCode)),errors.collect(cdk.propertyValidator("responseHeaders",cdk.listValidator(CfnWebACL_CustomHTTPHeaderPropertyValidator))(properties.responseHeaders)),errors.wrap('supplied properties not correct for "CustomResponseProperty"')}function cfnWebACLCustomResponsePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CustomResponsePropertyValidator(properties).assertSuccess(),{CustomResponseBodyKey:cdk.stringToCloudFormation(properties.customResponseBodyKey),ResponseCode:cdk.numberToCloudFormation(properties.responseCode),ResponseHeaders:cdk.listMapper(cfnWebACLCustomHTTPHeaderPropertyToCloudFormation)(properties.responseHeaders)}):properties}function CfnWebACLCustomResponsePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customResponseBodyKey","CustomResponseBodyKey",properties.CustomResponseBodyKey!=null?cfn_parse.FromCloudFormation.getString(properties.CustomResponseBodyKey):void 0),ret.addPropertyResult("responseCode","ResponseCode",cfn_parse.FromCloudFormation.getNumber(properties.ResponseCode)),ret.addPropertyResult("responseHeaders","ResponseHeaders",properties.ResponseHeaders!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLCustomHTTPHeaderPropertyFromCloudFormation)(properties.ResponseHeaders):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CustomResponseBodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("content",cdk.requiredValidator)(properties.content)),errors.collect(cdk.propertyValidator("content",cdk.validateString)(properties.content)),errors.collect(cdk.propertyValidator("contentType",cdk.requiredValidator)(properties.contentType)),errors.collect(cdk.propertyValidator("contentType",cdk.validateString)(properties.contentType)),errors.wrap('supplied properties not correct for "CustomResponseBodyProperty"')}function cfnWebACLCustomResponseBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CustomResponseBodyPropertyValidator(properties).assertSuccess(),{Content:cdk.stringToCloudFormation(properties.content),ContentType:cdk.stringToCloudFormation(properties.contentType)}):properties}function CfnWebACLCustomResponseBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("content","Content",cfn_parse.FromCloudFormation.getString(properties.Content)),ret.addPropertyResult("contentType","ContentType",cfn_parse.FromCloudFormation.getString(properties.ContentType)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_DefaultActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allow",CfnWebACL_AllowActionPropertyValidator)(properties.allow)),errors.collect(cdk.propertyValidator("block",CfnWebACL_BlockActionPropertyValidator)(properties.block)),errors.wrap('supplied properties not correct for "DefaultActionProperty"')}function cfnWebACLDefaultActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_DefaultActionPropertyValidator(properties).assertSuccess(),{Allow:cfnWebACLAllowActionPropertyToCloudFormation(properties.allow),Block:cfnWebACLBlockActionPropertyToCloudFormation(properties.block)}):properties}function CfnWebACLDefaultActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allow","Allow",properties.Allow!=null?CfnWebACLAllowActionPropertyFromCloudFormation(properties.Allow):void 0),ret.addPropertyResult("block","Block",properties.Block!=null?CfnWebACLBlockActionPropertyFromCloudFormation(properties.Block):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ExcludedRulePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.wrap('supplied properties not correct for "ExcludedRuleProperty"')}function cfnWebACLExcludedRulePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ExcludedRulePropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name)}):properties}function CfnWebACLExcludedRulePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_FieldIdentifierPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("identifier",cdk.requiredValidator)(properties.identifier)),errors.collect(cdk.propertyValidator("identifier",cdk.validateString)(properties.identifier)),errors.wrap('supplied properties not correct for "FieldIdentifierProperty"')}function cfnWebACLFieldIdentifierPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_FieldIdentifierPropertyValidator(properties).assertSuccess(),{Identifier:cdk.stringToCloudFormation(properties.identifier)}):properties}function CfnWebACLFieldIdentifierPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("identifier","Identifier",cfn_parse.FromCloudFormation.getString(properties.Identifier)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_FieldToMatchPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allQueryArguments",cdk.validateObject)(properties.allQueryArguments)),errors.collect(cdk.propertyValidator("body",CfnWebACL_BodyPropertyValidator)(properties.body)),errors.collect(cdk.propertyValidator("cookies",CfnWebACL_CookiesPropertyValidator)(properties.cookies)),errors.collect(cdk.propertyValidator("headers",CfnWebACL_HeadersPropertyValidator)(properties.headers)),errors.collect(cdk.propertyValidator("jsonBody",CfnWebACL_JsonBodyPropertyValidator)(properties.jsonBody)),errors.collect(cdk.propertyValidator("method",cdk.validateObject)(properties.method)),errors.collect(cdk.propertyValidator("queryString",cdk.validateObject)(properties.queryString)),errors.collect(cdk.propertyValidator("singleHeader",cdk.validateObject)(properties.singleHeader)),errors.collect(cdk.propertyValidator("singleQueryArgument",cdk.validateObject)(properties.singleQueryArgument)),errors.collect(cdk.propertyValidator("uriPath",cdk.validateObject)(properties.uriPath)),errors.wrap('supplied properties not correct for "FieldToMatchProperty"')}function cfnWebACLFieldToMatchPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_FieldToMatchPropertyValidator(properties).assertSuccess(),{AllQueryArguments:cdk.objectToCloudFormation(properties.allQueryArguments),Body:cfnWebACLBodyPropertyToCloudFormation(properties.body),Cookies:cfnWebACLCookiesPropertyToCloudFormation(properties.cookies),Headers:cfnWebACLHeadersPropertyToCloudFormation(properties.headers),JsonBody:cfnWebACLJsonBodyPropertyToCloudFormation(properties.jsonBody),Method:cdk.objectToCloudFormation(properties.method),QueryString:cdk.objectToCloudFormation(properties.queryString),SingleHeader:cdk.objectToCloudFormation(properties.singleHeader),SingleQueryArgument:cdk.objectToCloudFormation(properties.singleQueryArgument),UriPath:cdk.objectToCloudFormation(properties.uriPath)}):properties}function CfnWebACLFieldToMatchPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allQueryArguments","AllQueryArguments",properties.AllQueryArguments!=null?cfn_parse.FromCloudFormation.getAny(properties.AllQueryArguments):void 0),ret.addPropertyResult("body","Body",properties.Body!=null?CfnWebACLBodyPropertyFromCloudFormation(properties.Body):void 0),ret.addPropertyResult("cookies","Cookies",properties.Cookies!=null?CfnWebACLCookiesPropertyFromCloudFormation(properties.Cookies):void 0),ret.addPropertyResult("headers","Headers",properties.Headers!=null?CfnWebACLHeadersPropertyFromCloudFormation(properties.Headers):void 0),ret.addPropertyResult("jsonBody","JsonBody",properties.JsonBody!=null?CfnWebACLJsonBodyPropertyFromCloudFormation(properties.JsonBody):void 0),ret.addPropertyResult("method","Method",properties.Method!=null?cfn_parse.FromCloudFormation.getAny(properties.Method):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse.FromCloudFormation.getAny(properties.QueryString):void 0),ret.addPropertyResult("singleHeader","SingleHeader",properties.SingleHeader!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleHeader):void 0),ret.addPropertyResult("singleQueryArgument","SingleQueryArgument",properties.SingleQueryArgument!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleQueryArgument):void 0),ret.addPropertyResult("uriPath","UriPath",properties.UriPath!=null?cfn_parse.FromCloudFormation.getAny(properties.UriPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ForwardedIPConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.requiredValidator)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.validateString)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("headerName",cdk.requiredValidator)(properties.headerName)),errors.collect(cdk.propertyValidator("headerName",cdk.validateString)(properties.headerName)),errors.wrap('supplied properties not correct for "ForwardedIPConfigurationProperty"')}function cfnWebACLForwardedIPConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ForwardedIPConfigurationPropertyValidator(properties).assertSuccess(),{FallbackBehavior:cdk.stringToCloudFormation(properties.fallbackBehavior),HeaderName:cdk.stringToCloudFormation(properties.headerName)}):properties}function CfnWebACLForwardedIPConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fallbackBehavior","FallbackBehavior",cfn_parse.FromCloudFormation.getString(properties.FallbackBehavior)),ret.addPropertyResult("headerName","HeaderName",cfn_parse.FromCloudFormation.getString(properties.HeaderName)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_GeoMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("countryCodes",cdk.listValidator(cdk.validateString))(properties.countryCodes)),errors.collect(cdk.propertyValidator("forwardedIpConfig",CfnWebACL_ForwardedIPConfigurationPropertyValidator)(properties.forwardedIpConfig)),errors.wrap('supplied properties not correct for "GeoMatchStatementProperty"')}function cfnWebACLGeoMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_GeoMatchStatementPropertyValidator(properties).assertSuccess(),{CountryCodes:cdk.listMapper(cdk.stringToCloudFormation)(properties.countryCodes),ForwardedIPConfig:cfnWebACLForwardedIPConfigurationPropertyToCloudFormation(properties.forwardedIpConfig)}):properties}function CfnWebACLGeoMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("countryCodes","CountryCodes",properties.CountryCodes!=null?cfn_parse.FromCloudFormation.getStringArray(properties.CountryCodes):void 0),ret.addPropertyResult("forwardedIpConfig","ForwardedIPConfig",properties.ForwardedIPConfig!=null?CfnWebACLForwardedIPConfigurationPropertyFromCloudFormation(properties.ForwardedIPConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_HeaderMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("excludedHeaders",cdk.listValidator(cdk.validateString))(properties.excludedHeaders)),errors.collect(cdk.propertyValidator("includedHeaders",cdk.listValidator(cdk.validateString))(properties.includedHeaders)),errors.wrap('supplied properties not correct for "HeaderMatchPatternProperty"')}function cfnWebACLHeaderMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_HeaderMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),ExcludedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.excludedHeaders),IncludedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedHeaders)}):properties}function CfnWebACLHeaderMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("excludedHeaders","ExcludedHeaders",properties.ExcludedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExcludedHeaders):void 0),ret.addPropertyResult("includedHeaders","IncludedHeaders",properties.IncludedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedHeaders):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_HeadersPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnWebACL_HeaderMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.requiredValidator)(properties.oversizeHandling)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "HeadersProperty"')}function cfnWebACLHeadersPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_HeadersPropertyValidator(properties).assertSuccess(),{MatchPattern:cfnWebACLHeaderMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnWebACLHeadersPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("matchPattern","MatchPattern",CfnWebACLHeaderMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",cfn_parse.FromCloudFormation.getString(properties.OversizeHandling)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_IPSetForwardedIPConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.requiredValidator)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.validateString)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("headerName",cdk.requiredValidator)(properties.headerName)),errors.collect(cdk.propertyValidator("headerName",cdk.validateString)(properties.headerName)),errors.collect(cdk.propertyValidator("position",cdk.requiredValidator)(properties.position)),errors.collect(cdk.propertyValidator("position",cdk.validateString)(properties.position)),errors.wrap('supplied properties not correct for "IPSetForwardedIPConfigurationProperty"')}function cfnWebACLIPSetForwardedIPConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_IPSetForwardedIPConfigurationPropertyValidator(properties).assertSuccess(),{FallbackBehavior:cdk.stringToCloudFormation(properties.fallbackBehavior),HeaderName:cdk.stringToCloudFormation(properties.headerName),Position:cdk.stringToCloudFormation(properties.position)}):properties}function CfnWebACLIPSetForwardedIPConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fallbackBehavior","FallbackBehavior",cfn_parse.FromCloudFormation.getString(properties.FallbackBehavior)),ret.addPropertyResult("headerName","HeaderName",cfn_parse.FromCloudFormation.getString(properties.HeaderName)),ret.addPropertyResult("position","Position",cfn_parse.FromCloudFormation.getString(properties.Position)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_IPSetReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("ipSetForwardedIpConfig",CfnWebACL_IPSetForwardedIPConfigurationPropertyValidator)(properties.ipSetForwardedIpConfig)),errors.wrap('supplied properties not correct for "IPSetReferenceStatementProperty"')}function cfnWebACLIPSetReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_IPSetReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),IPSetForwardedIPConfig:cfnWebACLIPSetForwardedIPConfigurationPropertyToCloudFormation(properties.ipSetForwardedIpConfig)}):properties}function CfnWebACLIPSetReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("ipSetForwardedIpConfig","IPSetForwardedIPConfig",properties.IPSetForwardedIPConfig!=null?CfnWebACLIPSetForwardedIPConfigurationPropertyFromCloudFormation(properties.IPSetForwardedIPConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ImmunityTimePropertyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("immunityTime",cdk.requiredValidator)(properties.immunityTime)),errors.collect(cdk.propertyValidator("immunityTime",cdk.validateNumber)(properties.immunityTime)),errors.wrap('supplied properties not correct for "ImmunityTimePropertyProperty"')}function cfnWebACLImmunityTimePropertyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ImmunityTimePropertyPropertyValidator(properties).assertSuccess(),{ImmunityTime:cdk.numberToCloudFormation(properties.immunityTime)}):properties}function CfnWebACLImmunityTimePropertyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("immunityTime","ImmunityTime",cfn_parse.FromCloudFormation.getNumber(properties.ImmunityTime)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_JsonBodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("invalidFallbackBehavior",cdk.validateString)(properties.invalidFallbackBehavior)),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnWebACL_JsonMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "JsonBodyProperty"')}function cfnWebACLJsonBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_JsonBodyPropertyValidator(properties).assertSuccess(),{InvalidFallbackBehavior:cdk.stringToCloudFormation(properties.invalidFallbackBehavior),MatchPattern:cfnWebACLJsonMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnWebACLJsonBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("invalidFallbackBehavior","InvalidFallbackBehavior",properties.InvalidFallbackBehavior!=null?cfn_parse.FromCloudFormation.getString(properties.InvalidFallbackBehavior):void 0),ret.addPropertyResult("matchPattern","MatchPattern",CfnWebACLJsonMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",properties.OversizeHandling!=null?cfn_parse.FromCloudFormation.getString(properties.OversizeHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_JsonMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("includedPaths",cdk.listValidator(cdk.validateString))(properties.includedPaths)),errors.wrap('supplied properties not correct for "JsonMatchPatternProperty"')}function cfnWebACLJsonMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_JsonMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),IncludedPaths:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedPaths)}):properties}function CfnWebACLJsonMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("includedPaths","IncludedPaths",properties.IncludedPaths!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedPaths):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_LabelPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.wrap('supplied properties not correct for "LabelProperty"')}function cfnWebACLLabelPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_LabelPropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name)}):properties}function CfnWebACLLabelPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_LabelMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("key",cdk.requiredValidator)(properties.key)),errors.collect(cdk.propertyValidator("key",cdk.validateString)(properties.key)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.wrap('supplied properties not correct for "LabelMatchStatementProperty"')}function cfnWebACLLabelMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_LabelMatchStatementPropertyValidator(properties).assertSuccess(),{Key:cdk.stringToCloudFormation(properties.key),Scope:cdk.stringToCloudFormation(properties.scope)}):properties}function CfnWebACLLabelMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",cfn_parse.FromCloudFormation.getString(properties.Key)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ManagedRuleGroupConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("loginPath",cdk.validateString)(properties.loginPath)),errors.collect(cdk.propertyValidator("passwordField",CfnWebACL_FieldIdentifierPropertyValidator)(properties.passwordField)),errors.collect(cdk.propertyValidator("payloadType",cdk.validateString)(properties.payloadType)),errors.collect(cdk.propertyValidator("usernameField",CfnWebACL_FieldIdentifierPropertyValidator)(properties.usernameField)),errors.wrap('supplied properties not correct for "ManagedRuleGroupConfigProperty"')}function cfnWebACLManagedRuleGroupConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ManagedRuleGroupConfigPropertyValidator(properties).assertSuccess(),{LoginPath:cdk.stringToCloudFormation(properties.loginPath),PasswordField:cfnWebACLFieldIdentifierPropertyToCloudFormation(properties.passwordField),PayloadType:cdk.stringToCloudFormation(properties.payloadType),UsernameField:cfnWebACLFieldIdentifierPropertyToCloudFormation(properties.usernameField)}):properties}function CfnWebACLManagedRuleGroupConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("loginPath","LoginPath",properties.LoginPath!=null?cfn_parse.FromCloudFormation.getString(properties.LoginPath):void 0),ret.addPropertyResult("passwordField","PasswordField",properties.PasswordField!=null?CfnWebACLFieldIdentifierPropertyFromCloudFormation(properties.PasswordField):void 0),ret.addPropertyResult("payloadType","PayloadType",properties.PayloadType!=null?cfn_parse.FromCloudFormation.getString(properties.PayloadType):void 0),ret.addPropertyResult("usernameField","UsernameField",properties.UsernameField!=null?CfnWebACLFieldIdentifierPropertyFromCloudFormation(properties.UsernameField):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ManagedRuleGroupStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("excludedRules",cdk.listValidator(CfnWebACL_ExcludedRulePropertyValidator))(properties.excludedRules)),errors.collect(cdk.propertyValidator("managedRuleGroupConfigs",cdk.listValidator(CfnWebACL_ManagedRuleGroupConfigPropertyValidator))(properties.managedRuleGroupConfigs)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("scopeDownStatement",CfnWebACL_StatementPropertyValidator)(properties.scopeDownStatement)),errors.collect(cdk.propertyValidator("vendorName",cdk.requiredValidator)(properties.vendorName)),errors.collect(cdk.propertyValidator("vendorName",cdk.validateString)(properties.vendorName)),errors.collect(cdk.propertyValidator("version",cdk.validateString)(properties.version)),errors.wrap('supplied properties not correct for "ManagedRuleGroupStatementProperty"')}function cfnWebACLManagedRuleGroupStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ManagedRuleGroupStatementPropertyValidator(properties).assertSuccess(),{ExcludedRules:cdk.listMapper(cfnWebACLExcludedRulePropertyToCloudFormation)(properties.excludedRules),ManagedRuleGroupConfigs:cdk.listMapper(cfnWebACLManagedRuleGroupConfigPropertyToCloudFormation)(properties.managedRuleGroupConfigs),Name:cdk.stringToCloudFormation(properties.name),ScopeDownStatement:cfnWebACLStatementPropertyToCloudFormation(properties.scopeDownStatement),VendorName:cdk.stringToCloudFormation(properties.vendorName),Version:cdk.stringToCloudFormation(properties.version)}):properties}function CfnWebACLManagedRuleGroupStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("excludedRules","ExcludedRules",properties.ExcludedRules!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLExcludedRulePropertyFromCloudFormation)(properties.ExcludedRules):void 0),ret.addPropertyResult("managedRuleGroupConfigs","ManagedRuleGroupConfigs",properties.ManagedRuleGroupConfigs!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLManagedRuleGroupConfigPropertyFromCloudFormation)(properties.ManagedRuleGroupConfigs):void 0),ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("scopeDownStatement","ScopeDownStatement",properties.ScopeDownStatement!=null?CfnWebACLStatementPropertyFromCloudFormation(properties.ScopeDownStatement):void 0),ret.addPropertyResult("vendorName","VendorName",cfn_parse.FromCloudFormation.getString(properties.VendorName)),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse.FromCloudFormation.getString(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_NotStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statement",cdk.requiredValidator)(properties.statement)),errors.collect(cdk.propertyValidator("statement",CfnWebACL_StatementPropertyValidator)(properties.statement)),errors.wrap('supplied properties not correct for "NotStatementProperty"')}function cfnWebACLNotStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_NotStatementPropertyValidator(properties).assertSuccess(),{Statement:cfnWebACLStatementPropertyToCloudFormation(properties.statement)}):properties}function CfnWebACLNotStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statement","Statement",CfnWebACLStatementPropertyFromCloudFormation(properties.Statement)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_OrStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statements",cdk.requiredValidator)(properties.statements)),errors.collect(cdk.propertyValidator("statements",cdk.listValidator(CfnWebACL_StatementPropertyValidator))(properties.statements)),errors.wrap('supplied properties not correct for "OrStatementProperty"')}function cfnWebACLOrStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_OrStatementPropertyValidator(properties).assertSuccess(),{Statements:cdk.listMapper(cfnWebACLStatementPropertyToCloudFormation)(properties.statements)}):properties}function CfnWebACLOrStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statements","Statements",cfn_parse.FromCloudFormation.getArray(CfnWebACLStatementPropertyFromCloudFormation)(properties.Statements)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_OverrideActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("count",cdk.validateObject)(properties.count)),errors.collect(cdk.propertyValidator("none",cdk.validateObject)(properties.none)),errors.wrap('supplied properties not correct for "OverrideActionProperty"')}function cfnWebACLOverrideActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_OverrideActionPropertyValidator(properties).assertSuccess(),{Count:cdk.objectToCloudFormation(properties.count),None:cdk.objectToCloudFormation(properties.none)}):properties}function CfnWebACLOverrideActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("count","Count",properties.Count!=null?cfn_parse.FromCloudFormation.getAny(properties.Count):void 0),ret.addPropertyResult("none","None",properties.None!=null?cfn_parse.FromCloudFormation.getAny(properties.None):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RateBasedStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("aggregateKeyType",cdk.requiredValidator)(properties.aggregateKeyType)),errors.collect(cdk.propertyValidator("aggregateKeyType",cdk.validateString)(properties.aggregateKeyType)),errors.collect(cdk.propertyValidator("forwardedIpConfig",CfnWebACL_ForwardedIPConfigurationPropertyValidator)(properties.forwardedIpConfig)),errors.collect(cdk.propertyValidator("limit",cdk.requiredValidator)(properties.limit)),errors.collect(cdk.propertyValidator("limit",cdk.validateNumber)(properties.limit)),errors.collect(cdk.propertyValidator("scopeDownStatement",CfnWebACL_StatementPropertyValidator)(properties.scopeDownStatement)),errors.wrap('supplied properties not correct for "RateBasedStatementProperty"')}function cfnWebACLRateBasedStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RateBasedStatementPropertyValidator(properties).assertSuccess(),{AggregateKeyType:cdk.stringToCloudFormation(properties.aggregateKeyType),ForwardedIPConfig:cfnWebACLForwardedIPConfigurationPropertyToCloudFormation(properties.forwardedIpConfig),Limit:cdk.numberToCloudFormation(properties.limit),ScopeDownStatement:cfnWebACLStatementPropertyToCloudFormation(properties.scopeDownStatement)}):properties}function CfnWebACLRateBasedStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("aggregateKeyType","AggregateKeyType",cfn_parse.FromCloudFormation.getString(properties.AggregateKeyType)),ret.addPropertyResult("forwardedIpConfig","ForwardedIPConfig",properties.ForwardedIPConfig!=null?CfnWebACLForwardedIPConfigurationPropertyFromCloudFormation(properties.ForwardedIPConfig):void 0),ret.addPropertyResult("limit","Limit",cfn_parse.FromCloudFormation.getNumber(properties.Limit)),ret.addPropertyResult("scopeDownStatement","ScopeDownStatement",properties.ScopeDownStatement!=null?CfnWebACLStatementPropertyFromCloudFormation(properties.ScopeDownStatement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RegexMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("regexString",cdk.requiredValidator)(properties.regexString)),errors.collect(cdk.propertyValidator("regexString",cdk.validateString)(properties.regexString)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "RegexMatchStatementProperty"')}function cfnWebACLRegexMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RegexMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),RegexString:cdk.stringToCloudFormation(properties.regexString),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLRegexMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("regexString","RegexString",cfn_parse.FromCloudFormation.getString(properties.RegexString)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RegexPatternSetReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "RegexPatternSetReferenceStatementProperty"')}function cfnWebACLRegexPatternSetReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RegexPatternSetReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLRegexPatternSetReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RulePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("action",CfnWebACL_RuleActionPropertyValidator)(properties.action)),errors.collect(cdk.propertyValidator("captchaConfig",CfnWebACL_CaptchaConfigPropertyValidator)(properties.captchaConfig)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("overrideAction",CfnWebACL_OverrideActionPropertyValidator)(properties.overrideAction)),errors.collect(cdk.propertyValidator("priority",cdk.requiredValidator)(properties.priority)),errors.collect(cdk.propertyValidator("priority",cdk.validateNumber)(properties.priority)),errors.collect(cdk.propertyValidator("ruleLabels",cdk.listValidator(CfnWebACL_LabelPropertyValidator))(properties.ruleLabels)),errors.collect(cdk.propertyValidator("statement",cdk.requiredValidator)(properties.statement)),errors.collect(cdk.propertyValidator("statement",CfnWebACL_StatementPropertyValidator)(properties.statement)),errors.collect(cdk.propertyValidator("visibilityConfig",cdk.requiredValidator)(properties.visibilityConfig)),errors.collect(cdk.propertyValidator("visibilityConfig",CfnWebACL_VisibilityConfigPropertyValidator)(properties.visibilityConfig)),errors.wrap('supplied properties not correct for "RuleProperty"')}function cfnWebACLRulePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RulePropertyValidator(properties).assertSuccess(),{Action:cfnWebACLRuleActionPropertyToCloudFormation(properties.action),CaptchaConfig:cfnWebACLCaptchaConfigPropertyToCloudFormation(properties.captchaConfig),Name:cdk.stringToCloudFormation(properties.name),OverrideAction:cfnWebACLOverrideActionPropertyToCloudFormation(properties.overrideAction),Priority:cdk.numberToCloudFormation(properties.priority),RuleLabels:cdk.listMapper(cfnWebACLLabelPropertyToCloudFormation)(properties.ruleLabels),Statement:cfnWebACLStatementPropertyToCloudFormation(properties.statement),VisibilityConfig:cfnWebACLVisibilityConfigPropertyToCloudFormation(properties.visibilityConfig)}):properties}function CfnWebACLRulePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("action","Action",properties.Action!=null?CfnWebACLRuleActionPropertyFromCloudFormation(properties.Action):void 0),ret.addPropertyResult("captchaConfig","CaptchaConfig",properties.CaptchaConfig!=null?CfnWebACLCaptchaConfigPropertyFromCloudFormation(properties.CaptchaConfig):void 0),ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("overrideAction","OverrideAction",properties.OverrideAction!=null?CfnWebACLOverrideActionPropertyFromCloudFormation(properties.OverrideAction):void 0),ret.addPropertyResult("priority","Priority",cfn_parse.FromCloudFormation.getNumber(properties.Priority)),ret.addPropertyResult("ruleLabels","RuleLabels",properties.RuleLabels!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLLabelPropertyFromCloudFormation)(properties.RuleLabels):void 0),ret.addPropertyResult("statement","Statement",CfnWebACLStatementPropertyFromCloudFormation(properties.Statement)),ret.addPropertyResult("visibilityConfig","VisibilityConfig",CfnWebACLVisibilityConfigPropertyFromCloudFormation(properties.VisibilityConfig)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RuleActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allow",CfnWebACL_AllowActionPropertyValidator)(properties.allow)),errors.collect(cdk.propertyValidator("block",CfnWebACL_BlockActionPropertyValidator)(properties.block)),errors.collect(cdk.propertyValidator("captcha",CfnWebACL_CaptchaActionPropertyValidator)(properties.captcha)),errors.collect(cdk.propertyValidator("count",CfnWebACL_CountActionPropertyValidator)(properties.count)),errors.wrap('supplied properties not correct for "RuleActionProperty"')}function cfnWebACLRuleActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RuleActionPropertyValidator(properties).assertSuccess(),{Allow:cfnWebACLAllowActionPropertyToCloudFormation(properties.allow),Block:cfnWebACLBlockActionPropertyToCloudFormation(properties.block),Captcha:cfnWebACLCaptchaActionPropertyToCloudFormation(properties.captcha),Count:cfnWebACLCountActionPropertyToCloudFormation(properties.count)}):properties}function CfnWebACLRuleActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allow","Allow",properties.Allow!=null?CfnWebACLAllowActionPropertyFromCloudFormation(properties.Allow):void 0),ret.addPropertyResult("block","Block",properties.Block!=null?CfnWebACLBlockActionPropertyFromCloudFormation(properties.Block):void 0),ret.addPropertyResult("captcha","Captcha",properties.Captcha!=null?CfnWebACLCaptchaActionPropertyFromCloudFormation(properties.Captcha):void 0),ret.addPropertyResult("count","Count",properties.Count!=null?CfnWebACLCountActionPropertyFromCloudFormation(properties.Count):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RuleGroupReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("excludedRules",cdk.listValidator(CfnWebACL_ExcludedRulePropertyValidator))(properties.excludedRules)),errors.wrap('supplied properties not correct for "RuleGroupReferenceStatementProperty"')}function cfnWebACLRuleGroupReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RuleGroupReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),ExcludedRules:cdk.listMapper(cfnWebACLExcludedRulePropertyToCloudFormation)(properties.excludedRules)}):properties}function CfnWebACLRuleGroupReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("excludedRules","ExcludedRules",properties.ExcludedRules!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLExcludedRulePropertyFromCloudFormation)(properties.ExcludedRules):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_SizeConstraintStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.requiredValidator)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.validateString)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("size",cdk.requiredValidator)(properties.size)),errors.collect(cdk.propertyValidator("size",cdk.validateNumber)(properties.size)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "SizeConstraintStatementProperty"')}function cfnWebACLSizeConstraintStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_SizeConstraintStatementPropertyValidator(properties).assertSuccess(),{ComparisonOperator:cdk.stringToCloudFormation(properties.comparisonOperator),FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),Size:cdk.numberToCloudFormation(properties.size),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLSizeConstraintStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("comparisonOperator","ComparisonOperator",cfn_parse.FromCloudFormation.getString(properties.ComparisonOperator)),ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("size","Size",cfn_parse.FromCloudFormation.getNumber(properties.Size)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_SqliMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("sensitivityLevel",cdk.validateString)(properties.sensitivityLevel)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "SqliMatchStatementProperty"')}function cfnWebACLSqliMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_SqliMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),SensitivityLevel:cdk.stringToCloudFormation(properties.sensitivityLevel),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLSqliMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("sensitivityLevel","SensitivityLevel",properties.SensitivityLevel!=null?cfn_parse.FromCloudFormation.getString(properties.SensitivityLevel):void 0),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_StatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("andStatement",CfnWebACL_AndStatementPropertyValidator)(properties.andStatement)),errors.collect(cdk.propertyValidator("byteMatchStatement",CfnWebACL_ByteMatchStatementPropertyValidator)(properties.byteMatchStatement)),errors.collect(cdk.propertyValidator("geoMatchStatement",CfnWebACL_GeoMatchStatementPropertyValidator)(properties.geoMatchStatement)),errors.collect(cdk.propertyValidator("ipSetReferenceStatement",CfnWebACL_IPSetReferenceStatementPropertyValidator)(properties.ipSetReferenceStatement)),errors.collect(cdk.propertyValidator("labelMatchStatement",CfnWebACL_LabelMatchStatementPropertyValidator)(properties.labelMatchStatement)),errors.collect(cdk.propertyValidator("managedRuleGroupStatement",CfnWebACL_ManagedRuleGroupStatementPropertyValidator)(properties.managedRuleGroupStatement)),errors.collect(cdk.propertyValidator("notStatement",CfnWebACL_NotStatementPropertyValidator)(properties.notStatement)),errors.collect(cdk.propertyValidator("orStatement",CfnWebACL_OrStatementPropertyValidator)(properties.orStatement)),errors.collect(cdk.propertyValidator("rateBasedStatement",CfnWebACL_RateBasedStatementPropertyValidator)(properties.rateBasedStatement)),errors.collect(cdk.propertyValidator("regexMatchStatement",CfnWebACL_RegexMatchStatementPropertyValidator)(properties.regexMatchStatement)),errors.collect(cdk.propertyValidator("regexPatternSetReferenceStatement",CfnWebACL_RegexPatternSetReferenceStatementPropertyValidator)(properties.regexPatternSetReferenceStatement)),errors.collect(cdk.propertyValidator("ruleGroupReferenceStatement",CfnWebACL_RuleGroupReferenceStatementPropertyValidator)(properties.ruleGroupReferenceStatement)),errors.collect(cdk.propertyValidator("sizeConstraintStatement",CfnWebACL_SizeConstraintStatementPropertyValidator)(properties.sizeConstraintStatement)),errors.collect(cdk.propertyValidator("sqliMatchStatement",CfnWebACL_SqliMatchStatementPropertyValidator)(properties.sqliMatchStatement)),errors.collect(cdk.propertyValidator("xssMatchStatement",CfnWebACL_XssMatchStatementPropertyValidator)(properties.xssMatchStatement)),errors.wrap('supplied properties not correct for "StatementProperty"')}function cfnWebACLStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_StatementPropertyValidator(properties).assertSuccess(),{AndStatement:cfnWebACLAndStatementPropertyToCloudFormation(properties.andStatement),ByteMatchStatement:cfnWebACLByteMatchStatementPropertyToCloudFormation(properties.byteMatchStatement),GeoMatchStatement:cfnWebACLGeoMatchStatementPropertyToCloudFormation(properties.geoMatchStatement),IPSetReferenceStatement:cfnWebACLIPSetReferenceStatementPropertyToCloudFormation(properties.ipSetReferenceStatement),LabelMatchStatement:cfnWebACLLabelMatchStatementPropertyToCloudFormation(properties.labelMatchStatement),ManagedRuleGroupStatement:cfnWebACLManagedRuleGroupStatementPropertyToCloudFormation(properties.managedRuleGroupStatement),NotStatement:cfnWebACLNotStatementPropertyToCloudFormation(properties.notStatement),OrStatement:cfnWebACLOrStatementPropertyToCloudFormation(properties.orStatement),RateBasedStatement:cfnWebACLRateBasedStatementPropertyToCloudFormation(properties.rateBasedStatement),RegexMatchStatement:cfnWebACLRegexMatchStatementPropertyToCloudFormation(properties.regexMatchStatement),RegexPatternSetReferenceStatement:cfnWebACLRegexPatternSetReferenceStatementPropertyToCloudFormation(properties.regexPatternSetReferenceStatement),RuleGroupReferenceStatement:cfnWebACLRuleGroupReferenceStatementPropertyToCloudFormation(properties.ruleGroupReferenceStatement),SizeConstraintStatement:cfnWebACLSizeConstraintStatementPropertyToCloudFormation(properties.sizeConstraintStatement),SqliMatchStatement:cfnWebACLSqliMatchStatementPropertyToCloudFormation(properties.sqliMatchStatement),XssMatchStatement:cfnWebACLXssMatchStatementPropertyToCloudFormation(properties.xssMatchStatement)}):properties}function CfnWebACLStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("andStatement","AndStatement",properties.AndStatement!=null?CfnWebACLAndStatementPropertyFromCloudFormation(properties.AndStatement):void 0),ret.addPropertyResult("byteMatchStatement","ByteMatchStatement",properties.ByteMatchStatement!=null?CfnWebACLByteMatchStatementPropertyFromCloudFormation(properties.ByteMatchStatement):void 0),ret.addPropertyResult("geoMatchStatement","GeoMatchStatement",properties.GeoMatchStatement!=null?CfnWebACLGeoMatchStatementPropertyFromCloudFormation(properties.GeoMatchStatement):void 0),ret.addPropertyResult("ipSetReferenceStatement","IPSetReferenceStatement",properties.IPSetReferenceStatement!=null?CfnWebACLIPSetReferenceStatementPropertyFromCloudFormation(properties.IPSetReferenceStatement):void 0),ret.addPropertyResult("labelMatchStatement","LabelMatchStatement",properties.LabelMatchStatement!=null?CfnWebACLLabelMatchStatementPropertyFromCloudFormation(properties.LabelMatchStatement):void 0),ret.addPropertyResult("managedRuleGroupStatement","ManagedRuleGroupStatement",properties.ManagedRuleGroupStatement!=null?CfnWebACLManagedRuleGroupStatementPropertyFromCloudFormation(properties.ManagedRuleGroupStatement):void 0),ret.addPropertyResult("notStatement","NotStatement",properties.NotStatement!=null?CfnWebACLNotStatementPropertyFromCloudFormation(properties.NotStatement):void 0),ret.addPropertyResult("orStatement","OrStatement",properties.OrStatement!=null?CfnWebACLOrStatementPropertyFromCloudFormation(properties.OrStatement):void 0),ret.addPropertyResult("rateBasedStatement","RateBasedStatement",properties.RateBasedStatement!=null?CfnWebACLRateBasedStatementPropertyFromCloudFormation(properties.RateBasedStatement):void 0),ret.addPropertyResult("regexMatchStatement","RegexMatchStatement",properties.RegexMatchStatement!=null?CfnWebACLRegexMatchStatementPropertyFromCloudFormation(properties.RegexMatchStatement):void 0),ret.addPropertyResult("regexPatternSetReferenceStatement","RegexPatternSetReferenceStatement",properties.RegexPatternSetReferenceStatement!=null?CfnWebACLRegexPatternSetReferenceStatementPropertyFromCloudFormation(properties.RegexPatternSetReferenceStatement):void 0),ret.addPropertyResult("ruleGroupReferenceStatement","RuleGroupReferenceStatement",properties.RuleGroupReferenceStatement!=null?CfnWebACLRuleGroupReferenceStatementPropertyFromCloudFormation(properties.RuleGroupReferenceStatement):void 0),ret.addPropertyResult("sizeConstraintStatement","SizeConstraintStatement",properties.SizeConstraintStatement!=null?CfnWebACLSizeConstraintStatementPropertyFromCloudFormation(properties.SizeConstraintStatement):void 0),ret.addPropertyResult("sqliMatchStatement","SqliMatchStatement",properties.SqliMatchStatement!=null?CfnWebACLSqliMatchStatementPropertyFromCloudFormation(properties.SqliMatchStatement):void 0),ret.addPropertyResult("xssMatchStatement","XssMatchStatement",properties.XssMatchStatement!=null?CfnWebACLXssMatchStatementPropertyFromCloudFormation(properties.XssMatchStatement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_TextTransformationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("priority",cdk.requiredValidator)(properties.priority)),errors.collect(cdk.propertyValidator("priority",cdk.validateNumber)(properties.priority)),errors.collect(cdk.propertyValidator("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "TextTransformationProperty"')}function cfnWebACLTextTransformationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_TextTransformationPropertyValidator(properties).assertSuccess(),{Priority:cdk.numberToCloudFormation(properties.priority),Type:cdk.stringToCloudFormation(properties.type)}):properties}function CfnWebACLTextTransformationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("priority","Priority",cfn_parse.FromCloudFormation.getNumber(properties.Priority)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_VisibilityConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("cloudWatchMetricsEnabled",cdk.requiredValidator)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("cloudWatchMetricsEnabled",cdk.validateBoolean)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("metricName",cdk.requiredValidator)(properties.metricName)),errors.collect(cdk.propertyValidator("metricName",cdk.validateString)(properties.metricName)),errors.collect(cdk.propertyValidator("sampledRequestsEnabled",cdk.requiredValidator)(properties.sampledRequestsEnabled)),errors.collect(cdk.propertyValidator("sampledRequestsEnabled",cdk.validateBoolean)(properties.sampledRequestsEnabled)),errors.wrap('supplied properties not correct for "VisibilityConfigProperty"')}function cfnWebACLVisibilityConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_VisibilityConfigPropertyValidator(properties).assertSuccess(),{CloudWatchMetricsEnabled:cdk.booleanToCloudFormation(properties.cloudWatchMetricsEnabled),MetricName:cdk.stringToCloudFormation(properties.metricName),SampledRequestsEnabled:cdk.booleanToCloudFormation(properties.sampledRequestsEnabled)}):properties}function CfnWebACLVisibilityConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("cloudWatchMetricsEnabled","CloudWatchMetricsEnabled",cfn_parse.FromCloudFormation.getBoolean(properties.CloudWatchMetricsEnabled)),ret.addPropertyResult("metricName","MetricName",cfn_parse.FromCloudFormation.getString(properties.MetricName)),ret.addPropertyResult("sampledRequestsEnabled","SampledRequestsEnabled",cfn_parse.FromCloudFormation.getBoolean(properties.SampledRequestsEnabled)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_XssMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "XssMatchStatementProperty"')}function cfnWebACLXssMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_XssMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLXssMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACLAssociationPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("resourceArn",cdk.requiredValidator)(properties.resourceArn)),errors.collect(cdk.propertyValidator("resourceArn",cdk.validateString)(properties.resourceArn)),errors.collect(cdk.propertyValidator("webAclArn",cdk.requiredValidator)(properties.webAclArn)),errors.collect(cdk.propertyValidator("webAclArn",cdk.validateString)(properties.webAclArn)),errors.wrap('supplied properties not correct for "CfnWebACLAssociationProps"')}function cfnWebACLAssociationPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACLAssociationPropsValidator(properties).assertSuccess(),{ResourceArn:cdk.stringToCloudFormation(properties.resourceArn),WebACLArn:cdk.stringToCloudFormation(properties.webAclArn)}):properties}function CfnWebACLAssociationPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("resourceArn","ResourceArn",cfn_parse.FromCloudFormation.getString(properties.ResourceArn)),ret.addPropertyResult("webAclArn","WebACLArn",cfn_parse.FromCloudFormation.getString(properties.WebACLArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnWebACLAssociation extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnWebACLAssociation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnWebACLAssociationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWebACLAssociation),error}cdk.requireProperty(props,"resourceArn",this),cdk.requireProperty(props,"webAclArn",this),this.resourceArn=props.resourceArn,this.webAclArn=props.webAclArn}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWebACLAssociationPropsFromCloudFormation(resourceProperties),ret=new CfnWebACLAssociation(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnWebACLAssociation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{resourceArn:this.resourceArn,webAclArn:this.webAclArn}}renderProperties(props){return cfnWebACLAssociationPropsToCloudFormation(props)}}exports.CfnWebACLAssociation=CfnWebACLAssociation,_f=JSII_RTTI_SYMBOL_1,CfnWebACLAssociation[_f]={fqn:"aws-cdk-lib.aws_wafv2.CfnWebACLAssociation",version:"2.51.0"},CfnWebACLAssociation.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::WebACLAssociation";
|
|
1
|
+
"use strict";var _a,_b,_c,_d,_e,_f;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnWebACLAssociation=exports.CfnWebACL=exports.CfnRuleGroup=exports.CfnRegexPatternSet=exports.CfnLoggingConfiguration=exports.CfnIPSet=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),cfn_parse=require("../../core/lib/helpers-internal");function CfnIPSetPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("addresses",cdk.requiredValidator)(properties.addresses)),errors.collect(cdk.propertyValidator("addresses",cdk.listValidator(cdk.validateString))(properties.addresses)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("ipAddressVersion",cdk.requiredValidator)(properties.ipAddressVersion)),errors.collect(cdk.propertyValidator("ipAddressVersion",cdk.validateString)(properties.ipAddressVersion)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnIPSetProps"')}function cfnIPSetPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnIPSetPropsValidator(properties).assertSuccess(),{Addresses:cdk.listMapper(cdk.stringToCloudFormation)(properties.addresses),IPAddressVersion:cdk.stringToCloudFormation(properties.ipAddressVersion),Scope:cdk.stringToCloudFormation(properties.scope),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnIPSetPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("addresses","Addresses",cfn_parse.FromCloudFormation.getStringArray(properties.Addresses)),ret.addPropertyResult("ipAddressVersion","IPAddressVersion",cfn_parse.FromCloudFormation.getString(properties.IPAddressVersion)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnIPSet extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnIPSet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnIPSetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnIPSet),error}cdk.requireProperty(props,"addresses",this),cdk.requireProperty(props,"ipAddressVersion",this),cdk.requireProperty(props,"scope",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn")),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.addresses=props.addresses,this.ipAddressVersion=props.ipAddressVersion,this.scope=props.scope,this.description=props.description,this.name=props.name,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::WAFv2::IPSet",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnIPSetPropsFromCloudFormation(resourceProperties),ret=new CfnIPSet(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnIPSet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{addresses:this.addresses,ipAddressVersion:this.ipAddressVersion,scope:this.scope,description:this.description,name:this.name,tags:this.tags.renderTags()}}renderProperties(props){return cfnIPSetPropsToCloudFormation(props)}}exports.CfnIPSet=CfnIPSet,_a=JSII_RTTI_SYMBOL_1,CfnIPSet[_a]={fqn:"aws-cdk-lib.aws_wafv2.CfnIPSet",version:"2.51.1"},CfnIPSet.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::IPSet";function CfnLoggingConfigurationPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("logDestinationConfigs",cdk.requiredValidator)(properties.logDestinationConfigs)),errors.collect(cdk.propertyValidator("logDestinationConfigs",cdk.listValidator(cdk.validateString))(properties.logDestinationConfigs)),errors.collect(cdk.propertyValidator("loggingFilter",cdk.validateObject)(properties.loggingFilter)),errors.collect(cdk.propertyValidator("redactedFields",cdk.listValidator(CfnLoggingConfiguration_FieldToMatchPropertyValidator))(properties.redactedFields)),errors.collect(cdk.propertyValidator("resourceArn",cdk.requiredValidator)(properties.resourceArn)),errors.collect(cdk.propertyValidator("resourceArn",cdk.validateString)(properties.resourceArn)),errors.wrap('supplied properties not correct for "CfnLoggingConfigurationProps"')}function cfnLoggingConfigurationPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnLoggingConfigurationPropsValidator(properties).assertSuccess(),{LogDestinationConfigs:cdk.listMapper(cdk.stringToCloudFormation)(properties.logDestinationConfigs),ResourceArn:cdk.stringToCloudFormation(properties.resourceArn),LoggingFilter:cdk.objectToCloudFormation(properties.loggingFilter),RedactedFields:cdk.listMapper(cfnLoggingConfigurationFieldToMatchPropertyToCloudFormation)(properties.redactedFields)}):properties}function CfnLoggingConfigurationPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("logDestinationConfigs","LogDestinationConfigs",cfn_parse.FromCloudFormation.getStringArray(properties.LogDestinationConfigs)),ret.addPropertyResult("resourceArn","ResourceArn",cfn_parse.FromCloudFormation.getString(properties.ResourceArn)),ret.addPropertyResult("loggingFilter","LoggingFilter",properties.LoggingFilter!=null?cfn_parse.FromCloudFormation.getAny(properties.LoggingFilter):void 0),ret.addPropertyResult("redactedFields","RedactedFields",properties.RedactedFields!=null?cfn_parse.FromCloudFormation.getArray(CfnLoggingConfigurationFieldToMatchPropertyFromCloudFormation)(properties.RedactedFields):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnLoggingConfiguration extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnLoggingConfigurationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnLoggingConfiguration),error}cdk.requireProperty(props,"logDestinationConfigs",this),cdk.requireProperty(props,"resourceArn",this),this.attrManagedByFirewallManager=this.getAtt("ManagedByFirewallManager"),this.logDestinationConfigs=props.logDestinationConfigs,this.resourceArn=props.resourceArn,this.loggingFilter=props.loggingFilter,this.redactedFields=props.redactedFields}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnLoggingConfigurationPropsFromCloudFormation(resourceProperties),ret=new CfnLoggingConfiguration(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{logDestinationConfigs:this.logDestinationConfigs,resourceArn:this.resourceArn,loggingFilter:this.loggingFilter,redactedFields:this.redactedFields}}renderProperties(props){return cfnLoggingConfigurationPropsToCloudFormation(props)}}exports.CfnLoggingConfiguration=CfnLoggingConfiguration,_b=JSII_RTTI_SYMBOL_1,CfnLoggingConfiguration[_b]={fqn:"aws-cdk-lib.aws_wafv2.CfnLoggingConfiguration",version:"2.51.1"},CfnLoggingConfiguration.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::LoggingConfiguration";function CfnLoggingConfiguration_FieldToMatchPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("jsonBody",cdk.validateObject)(properties.jsonBody)),errors.collect(cdk.propertyValidator("method",cdk.validateObject)(properties.method)),errors.collect(cdk.propertyValidator("queryString",cdk.validateObject)(properties.queryString)),errors.collect(cdk.propertyValidator("singleHeader",cdk.validateObject)(properties.singleHeader)),errors.collect(cdk.propertyValidator("uriPath",cdk.validateObject)(properties.uriPath)),errors.wrap('supplied properties not correct for "FieldToMatchProperty"')}function cfnLoggingConfigurationFieldToMatchPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnLoggingConfiguration_FieldToMatchPropertyValidator(properties).assertSuccess(),{JsonBody:cdk.objectToCloudFormation(properties.jsonBody),Method:cdk.objectToCloudFormation(properties.method),QueryString:cdk.objectToCloudFormation(properties.queryString),SingleHeader:cdk.objectToCloudFormation(properties.singleHeader),UriPath:cdk.objectToCloudFormation(properties.uriPath)}):properties}function CfnLoggingConfigurationFieldToMatchPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("jsonBody","JsonBody",properties.JsonBody!=null?cfn_parse.FromCloudFormation.getAny(properties.JsonBody):void 0),ret.addPropertyResult("method","Method",properties.Method!=null?cfn_parse.FromCloudFormation.getAny(properties.Method):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse.FromCloudFormation.getAny(properties.QueryString):void 0),ret.addPropertyResult("singleHeader","SingleHeader",properties.SingleHeader!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleHeader):void 0),ret.addPropertyResult("uriPath","UriPath",properties.UriPath!=null?cfn_parse.FromCloudFormation.getAny(properties.UriPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRegexPatternSetPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("regularExpressionList",cdk.requiredValidator)(properties.regularExpressionList)),errors.collect(cdk.propertyValidator("regularExpressionList",cdk.listValidator(cdk.validateString))(properties.regularExpressionList)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnRegexPatternSetProps"')}function cfnRegexPatternSetPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRegexPatternSetPropsValidator(properties).assertSuccess(),{RegularExpressionList:cdk.listMapper(cdk.stringToCloudFormation)(properties.regularExpressionList),Scope:cdk.stringToCloudFormation(properties.scope),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnRegexPatternSetPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("regularExpressionList","RegularExpressionList",cfn_parse.FromCloudFormation.getStringArray(properties.RegularExpressionList)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnRegexPatternSet extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnRegexPatternSet.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnRegexPatternSetProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnRegexPatternSet),error}cdk.requireProperty(props,"regularExpressionList",this),cdk.requireProperty(props,"scope",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn")),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.regularExpressionList=props.regularExpressionList,this.scope=props.scope,this.description=props.description,this.name=props.name,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::WAFv2::RegexPatternSet",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnRegexPatternSetPropsFromCloudFormation(resourceProperties),ret=new CfnRegexPatternSet(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnRegexPatternSet.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{regularExpressionList:this.regularExpressionList,scope:this.scope,description:this.description,name:this.name,tags:this.tags.renderTags()}}renderProperties(props){return cfnRegexPatternSetPropsToCloudFormation(props)}}exports.CfnRegexPatternSet=CfnRegexPatternSet,_c=JSII_RTTI_SYMBOL_1,CfnRegexPatternSet[_c]={fqn:"aws-cdk-lib.aws_wafv2.CfnRegexPatternSet",version:"2.51.1"},CfnRegexPatternSet.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::RegexPatternSet";function CfnRuleGroupPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("capacity",cdk.requiredValidator)(properties.capacity)),errors.collect(cdk.propertyValidator("capacity",cdk.validateNumber)(properties.capacity)),errors.collect(cdk.propertyValidator("customResponseBodies",cdk.hashValidator(CfnRuleGroup_CustomResponseBodyPropertyValidator))(properties.customResponseBodies)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("rules",cdk.listValidator(CfnRuleGroup_RulePropertyValidator))(properties.rules)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("visibilityConfig",cdk.requiredValidator)(properties.visibilityConfig)),errors.collect(cdk.propertyValidator("visibilityConfig",CfnRuleGroup_VisibilityConfigPropertyValidator)(properties.visibilityConfig)),errors.wrap('supplied properties not correct for "CfnRuleGroupProps"')}function cfnRuleGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroupPropsValidator(properties).assertSuccess(),{Capacity:cdk.numberToCloudFormation(properties.capacity),Scope:cdk.stringToCloudFormation(properties.scope),VisibilityConfig:cfnRuleGroupVisibilityConfigPropertyToCloudFormation(properties.visibilityConfig),CustomResponseBodies:cdk.hashMapper(cfnRuleGroupCustomResponseBodyPropertyToCloudFormation)(properties.customResponseBodies),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),Rules:cdk.listMapper(cfnRuleGroupRulePropertyToCloudFormation)(properties.rules),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnRuleGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("capacity","Capacity",cfn_parse.FromCloudFormation.getNumber(properties.Capacity)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addPropertyResult("visibilityConfig","VisibilityConfig",CfnRuleGroupVisibilityConfigPropertyFromCloudFormation(properties.VisibilityConfig)),ret.addPropertyResult("customResponseBodies","CustomResponseBodies",properties.CustomResponseBodies!=null?cfn_parse.FromCloudFormation.getMap(CfnRuleGroupCustomResponseBodyPropertyFromCloudFormation)(properties.CustomResponseBodies):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("rules","Rules",properties.Rules!=null?cfn_parse.FromCloudFormation.getArray(CfnRuleGroupRulePropertyFromCloudFormation)(properties.Rules):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnRuleGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnRuleGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnRuleGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnRuleGroup),error}cdk.requireProperty(props,"capacity",this),cdk.requireProperty(props,"scope",this),cdk.requireProperty(props,"visibilityConfig",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn")),this.attrAvailableLabels=this.getAtt("AvailableLabels"),this.attrConsumedLabels=this.getAtt("ConsumedLabels"),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.attrLabelNamespace=cdk.Token.asString(this.getAtt("LabelNamespace")),this.capacity=props.capacity,this.scope=props.scope,this.visibilityConfig=props.visibilityConfig,this.customResponseBodies=props.customResponseBodies,this.description=props.description,this.name=props.name,this.rules=props.rules,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::WAFv2::RuleGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnRuleGroupPropsFromCloudFormation(resourceProperties),ret=new CfnRuleGroup(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnRuleGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{capacity:this.capacity,scope:this.scope,visibilityConfig:this.visibilityConfig,customResponseBodies:this.customResponseBodies,description:this.description,name:this.name,rules:this.rules,tags:this.tags.renderTags()}}renderProperties(props){return cfnRuleGroupPropsToCloudFormation(props)}}exports.CfnRuleGroup=CfnRuleGroup,_d=JSII_RTTI_SYMBOL_1,CfnRuleGroup[_d]={fqn:"aws-cdk-lib.aws_wafv2.CfnRuleGroup",version:"2.51.1"},CfnRuleGroup.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::RuleGroup";function CfnRuleGroup_AndStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statements",cdk.requiredValidator)(properties.statements)),errors.collect(cdk.propertyValidator("statements",cdk.listValidator(CfnRuleGroup_StatementPropertyValidator))(properties.statements)),errors.wrap('supplied properties not correct for "AndStatementProperty"')}function cfnRuleGroupAndStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_AndStatementPropertyValidator(properties).assertSuccess(),{Statements:cdk.listMapper(cfnRuleGroupStatementPropertyToCloudFormation)(properties.statements)}):properties}function CfnRuleGroupAndStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statements","Statements",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupStatementPropertyFromCloudFormation)(properties.Statements)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_BodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "BodyProperty"')}function cfnRuleGroupBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_BodyPropertyValidator(properties).assertSuccess(),{OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnRuleGroupBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("oversizeHandling","OversizeHandling",properties.OversizeHandling!=null?cfn_parse.FromCloudFormation.getString(properties.OversizeHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_ByteMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("positionalConstraint",cdk.requiredValidator)(properties.positionalConstraint)),errors.collect(cdk.propertyValidator("positionalConstraint",cdk.validateString)(properties.positionalConstraint)),errors.collect(cdk.propertyValidator("searchString",cdk.validateString)(properties.searchString)),errors.collect(cdk.propertyValidator("searchStringBase64",cdk.validateString)(properties.searchStringBase64)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "ByteMatchStatementProperty"')}function cfnRuleGroupByteMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_ByteMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),PositionalConstraint:cdk.stringToCloudFormation(properties.positionalConstraint),SearchString:cdk.stringToCloudFormation(properties.searchString),SearchStringBase64:cdk.stringToCloudFormation(properties.searchStringBase64),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupByteMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("positionalConstraint","PositionalConstraint",cfn_parse.FromCloudFormation.getString(properties.PositionalConstraint)),ret.addPropertyResult("searchString","SearchString",properties.SearchString!=null?cfn_parse.FromCloudFormation.getString(properties.SearchString):void 0),ret.addPropertyResult("searchStringBase64","SearchStringBase64",properties.SearchStringBase64!=null?cfn_parse.FromCloudFormation.getString(properties.SearchStringBase64):void 0),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_CaptchaConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("immunityTimeProperty",CfnRuleGroup_ImmunityTimePropertyPropertyValidator)(properties.immunityTimeProperty)),errors.wrap('supplied properties not correct for "CaptchaConfigProperty"')}function cfnRuleGroupCaptchaConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_CaptchaConfigPropertyValidator(properties).assertSuccess(),{ImmunityTimeProperty:cfnRuleGroupImmunityTimePropertyPropertyToCloudFormation(properties.immunityTimeProperty)}):properties}function CfnRuleGroupCaptchaConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("immunityTimeProperty","ImmunityTimeProperty",properties.ImmunityTimeProperty!=null?CfnRuleGroupImmunityTimePropertyPropertyFromCloudFormation(properties.ImmunityTimeProperty):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_CookieMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("excludedCookies",cdk.listValidator(cdk.validateString))(properties.excludedCookies)),errors.collect(cdk.propertyValidator("includedCookies",cdk.listValidator(cdk.validateString))(properties.includedCookies)),errors.wrap('supplied properties not correct for "CookieMatchPatternProperty"')}function cfnRuleGroupCookieMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_CookieMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),ExcludedCookies:cdk.listMapper(cdk.stringToCloudFormation)(properties.excludedCookies),IncludedCookies:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedCookies)}):properties}function CfnRuleGroupCookieMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("excludedCookies","ExcludedCookies",properties.ExcludedCookies!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExcludedCookies):void 0),ret.addPropertyResult("includedCookies","IncludedCookies",properties.IncludedCookies!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedCookies):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_CookiesPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnRuleGroup_CookieMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.requiredValidator)(properties.oversizeHandling)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "CookiesProperty"')}function cfnRuleGroupCookiesPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_CookiesPropertyValidator(properties).assertSuccess(),{MatchPattern:cfnRuleGroupCookieMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnRuleGroupCookiesPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("matchPattern","MatchPattern",CfnRuleGroupCookieMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",cfn_parse.FromCloudFormation.getString(properties.OversizeHandling)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_CustomResponseBodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("content",cdk.requiredValidator)(properties.content)),errors.collect(cdk.propertyValidator("content",cdk.validateString)(properties.content)),errors.collect(cdk.propertyValidator("contentType",cdk.requiredValidator)(properties.contentType)),errors.collect(cdk.propertyValidator("contentType",cdk.validateString)(properties.contentType)),errors.wrap('supplied properties not correct for "CustomResponseBodyProperty"')}function cfnRuleGroupCustomResponseBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_CustomResponseBodyPropertyValidator(properties).assertSuccess(),{Content:cdk.stringToCloudFormation(properties.content),ContentType:cdk.stringToCloudFormation(properties.contentType)}):properties}function CfnRuleGroupCustomResponseBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("content","Content",cfn_parse.FromCloudFormation.getString(properties.Content)),ret.addPropertyResult("contentType","ContentType",cfn_parse.FromCloudFormation.getString(properties.ContentType)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_FieldToMatchPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allQueryArguments",cdk.validateObject)(properties.allQueryArguments)),errors.collect(cdk.propertyValidator("body",CfnRuleGroup_BodyPropertyValidator)(properties.body)),errors.collect(cdk.propertyValidator("cookies",CfnRuleGroup_CookiesPropertyValidator)(properties.cookies)),errors.collect(cdk.propertyValidator("headers",CfnRuleGroup_HeadersPropertyValidator)(properties.headers)),errors.collect(cdk.propertyValidator("jsonBody",CfnRuleGroup_JsonBodyPropertyValidator)(properties.jsonBody)),errors.collect(cdk.propertyValidator("method",cdk.validateObject)(properties.method)),errors.collect(cdk.propertyValidator("queryString",cdk.validateObject)(properties.queryString)),errors.collect(cdk.propertyValidator("singleHeader",cdk.validateObject)(properties.singleHeader)),errors.collect(cdk.propertyValidator("singleQueryArgument",cdk.validateObject)(properties.singleQueryArgument)),errors.collect(cdk.propertyValidator("uriPath",cdk.validateObject)(properties.uriPath)),errors.wrap('supplied properties not correct for "FieldToMatchProperty"')}function cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_FieldToMatchPropertyValidator(properties).assertSuccess(),{AllQueryArguments:cdk.objectToCloudFormation(properties.allQueryArguments),Body:cfnRuleGroupBodyPropertyToCloudFormation(properties.body),Cookies:cfnRuleGroupCookiesPropertyToCloudFormation(properties.cookies),Headers:cfnRuleGroupHeadersPropertyToCloudFormation(properties.headers),JsonBody:cfnRuleGroupJsonBodyPropertyToCloudFormation(properties.jsonBody),Method:cdk.objectToCloudFormation(properties.method),QueryString:cdk.objectToCloudFormation(properties.queryString),SingleHeader:cdk.objectToCloudFormation(properties.singleHeader),SingleQueryArgument:cdk.objectToCloudFormation(properties.singleQueryArgument),UriPath:cdk.objectToCloudFormation(properties.uriPath)}):properties}function CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allQueryArguments","AllQueryArguments",properties.AllQueryArguments!=null?cfn_parse.FromCloudFormation.getAny(properties.AllQueryArguments):void 0),ret.addPropertyResult("body","Body",properties.Body!=null?CfnRuleGroupBodyPropertyFromCloudFormation(properties.Body):void 0),ret.addPropertyResult("cookies","Cookies",properties.Cookies!=null?CfnRuleGroupCookiesPropertyFromCloudFormation(properties.Cookies):void 0),ret.addPropertyResult("headers","Headers",properties.Headers!=null?CfnRuleGroupHeadersPropertyFromCloudFormation(properties.Headers):void 0),ret.addPropertyResult("jsonBody","JsonBody",properties.JsonBody!=null?CfnRuleGroupJsonBodyPropertyFromCloudFormation(properties.JsonBody):void 0),ret.addPropertyResult("method","Method",properties.Method!=null?cfn_parse.FromCloudFormation.getAny(properties.Method):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse.FromCloudFormation.getAny(properties.QueryString):void 0),ret.addPropertyResult("singleHeader","SingleHeader",properties.SingleHeader!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleHeader):void 0),ret.addPropertyResult("singleQueryArgument","SingleQueryArgument",properties.SingleQueryArgument!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleQueryArgument):void 0),ret.addPropertyResult("uriPath","UriPath",properties.UriPath!=null?cfn_parse.FromCloudFormation.getAny(properties.UriPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_ForwardedIPConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.requiredValidator)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.validateString)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("headerName",cdk.requiredValidator)(properties.headerName)),errors.collect(cdk.propertyValidator("headerName",cdk.validateString)(properties.headerName)),errors.wrap('supplied properties not correct for "ForwardedIPConfigurationProperty"')}function cfnRuleGroupForwardedIPConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_ForwardedIPConfigurationPropertyValidator(properties).assertSuccess(),{FallbackBehavior:cdk.stringToCloudFormation(properties.fallbackBehavior),HeaderName:cdk.stringToCloudFormation(properties.headerName)}):properties}function CfnRuleGroupForwardedIPConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fallbackBehavior","FallbackBehavior",cfn_parse.FromCloudFormation.getString(properties.FallbackBehavior)),ret.addPropertyResult("headerName","HeaderName",cfn_parse.FromCloudFormation.getString(properties.HeaderName)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_GeoMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("countryCodes",cdk.listValidator(cdk.validateString))(properties.countryCodes)),errors.collect(cdk.propertyValidator("forwardedIpConfig",CfnRuleGroup_ForwardedIPConfigurationPropertyValidator)(properties.forwardedIpConfig)),errors.wrap('supplied properties not correct for "GeoMatchStatementProperty"')}function cfnRuleGroupGeoMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_GeoMatchStatementPropertyValidator(properties).assertSuccess(),{CountryCodes:cdk.listMapper(cdk.stringToCloudFormation)(properties.countryCodes),ForwardedIPConfig:cfnRuleGroupForwardedIPConfigurationPropertyToCloudFormation(properties.forwardedIpConfig)}):properties}function CfnRuleGroupGeoMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("countryCodes","CountryCodes",properties.CountryCodes!=null?cfn_parse.FromCloudFormation.getStringArray(properties.CountryCodes):void 0),ret.addPropertyResult("forwardedIpConfig","ForwardedIPConfig",properties.ForwardedIPConfig!=null?CfnRuleGroupForwardedIPConfigurationPropertyFromCloudFormation(properties.ForwardedIPConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_HeaderMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("excludedHeaders",cdk.listValidator(cdk.validateString))(properties.excludedHeaders)),errors.collect(cdk.propertyValidator("includedHeaders",cdk.listValidator(cdk.validateString))(properties.includedHeaders)),errors.wrap('supplied properties not correct for "HeaderMatchPatternProperty"')}function cfnRuleGroupHeaderMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_HeaderMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),ExcludedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.excludedHeaders),IncludedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedHeaders)}):properties}function CfnRuleGroupHeaderMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("excludedHeaders","ExcludedHeaders",properties.ExcludedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExcludedHeaders):void 0),ret.addPropertyResult("includedHeaders","IncludedHeaders",properties.IncludedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedHeaders):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_HeadersPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnRuleGroup_HeaderMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.requiredValidator)(properties.oversizeHandling)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "HeadersProperty"')}function cfnRuleGroupHeadersPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_HeadersPropertyValidator(properties).assertSuccess(),{MatchPattern:cfnRuleGroupHeaderMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnRuleGroupHeadersPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("matchPattern","MatchPattern",CfnRuleGroupHeaderMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",cfn_parse.FromCloudFormation.getString(properties.OversizeHandling)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_IPSetForwardedIPConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.requiredValidator)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.validateString)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("headerName",cdk.requiredValidator)(properties.headerName)),errors.collect(cdk.propertyValidator("headerName",cdk.validateString)(properties.headerName)),errors.collect(cdk.propertyValidator("position",cdk.requiredValidator)(properties.position)),errors.collect(cdk.propertyValidator("position",cdk.validateString)(properties.position)),errors.wrap('supplied properties not correct for "IPSetForwardedIPConfigurationProperty"')}function cfnRuleGroupIPSetForwardedIPConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_IPSetForwardedIPConfigurationPropertyValidator(properties).assertSuccess(),{FallbackBehavior:cdk.stringToCloudFormation(properties.fallbackBehavior),HeaderName:cdk.stringToCloudFormation(properties.headerName),Position:cdk.stringToCloudFormation(properties.position)}):properties}function CfnRuleGroupIPSetForwardedIPConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fallbackBehavior","FallbackBehavior",cfn_parse.FromCloudFormation.getString(properties.FallbackBehavior)),ret.addPropertyResult("headerName","HeaderName",cfn_parse.FromCloudFormation.getString(properties.HeaderName)),ret.addPropertyResult("position","Position",cfn_parse.FromCloudFormation.getString(properties.Position)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_IPSetReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("ipSetForwardedIpConfig",CfnRuleGroup_IPSetForwardedIPConfigurationPropertyValidator)(properties.ipSetForwardedIpConfig)),errors.wrap('supplied properties not correct for "IPSetReferenceStatementProperty"')}function cfnRuleGroupIPSetReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_IPSetReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),IPSetForwardedIPConfig:cfnRuleGroupIPSetForwardedIPConfigurationPropertyToCloudFormation(properties.ipSetForwardedIpConfig)}):properties}function CfnRuleGroupIPSetReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("ipSetForwardedIpConfig","IPSetForwardedIPConfig",properties.IPSetForwardedIPConfig!=null?CfnRuleGroupIPSetForwardedIPConfigurationPropertyFromCloudFormation(properties.IPSetForwardedIPConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_ImmunityTimePropertyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("immunityTime",cdk.requiredValidator)(properties.immunityTime)),errors.collect(cdk.propertyValidator("immunityTime",cdk.validateNumber)(properties.immunityTime)),errors.wrap('supplied properties not correct for "ImmunityTimePropertyProperty"')}function cfnRuleGroupImmunityTimePropertyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_ImmunityTimePropertyPropertyValidator(properties).assertSuccess(),{ImmunityTime:cdk.numberToCloudFormation(properties.immunityTime)}):properties}function CfnRuleGroupImmunityTimePropertyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("immunityTime","ImmunityTime",cfn_parse.FromCloudFormation.getNumber(properties.ImmunityTime)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_JsonBodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("invalidFallbackBehavior",cdk.validateString)(properties.invalidFallbackBehavior)),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnRuleGroup_JsonMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "JsonBodyProperty"')}function cfnRuleGroupJsonBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_JsonBodyPropertyValidator(properties).assertSuccess(),{InvalidFallbackBehavior:cdk.stringToCloudFormation(properties.invalidFallbackBehavior),MatchPattern:cfnRuleGroupJsonMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnRuleGroupJsonBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("invalidFallbackBehavior","InvalidFallbackBehavior",properties.InvalidFallbackBehavior!=null?cfn_parse.FromCloudFormation.getString(properties.InvalidFallbackBehavior):void 0),ret.addPropertyResult("matchPattern","MatchPattern",CfnRuleGroupJsonMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",properties.OversizeHandling!=null?cfn_parse.FromCloudFormation.getString(properties.OversizeHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_JsonMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("includedPaths",cdk.listValidator(cdk.validateString))(properties.includedPaths)),errors.wrap('supplied properties not correct for "JsonMatchPatternProperty"')}function cfnRuleGroupJsonMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_JsonMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),IncludedPaths:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedPaths)}):properties}function CfnRuleGroupJsonMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("includedPaths","IncludedPaths",properties.IncludedPaths!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedPaths):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_LabelPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.wrap('supplied properties not correct for "LabelProperty"')}function cfnRuleGroupLabelPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_LabelPropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name)}):properties}function CfnRuleGroupLabelPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_LabelMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("key",cdk.requiredValidator)(properties.key)),errors.collect(cdk.propertyValidator("key",cdk.validateString)(properties.key)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.wrap('supplied properties not correct for "LabelMatchStatementProperty"')}function cfnRuleGroupLabelMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_LabelMatchStatementPropertyValidator(properties).assertSuccess(),{Key:cdk.stringToCloudFormation(properties.key),Scope:cdk.stringToCloudFormation(properties.scope)}):properties}function CfnRuleGroupLabelMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",cfn_parse.FromCloudFormation.getString(properties.Key)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_LabelSummaryPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.wrap('supplied properties not correct for "LabelSummaryProperty"')}function cfnRuleGroupLabelSummaryPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_LabelSummaryPropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name)}):properties}function CfnRuleGroupLabelSummaryPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_NotStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statement",cdk.requiredValidator)(properties.statement)),errors.collect(cdk.propertyValidator("statement",CfnRuleGroup_StatementPropertyValidator)(properties.statement)),errors.wrap('supplied properties not correct for "NotStatementProperty"')}function cfnRuleGroupNotStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_NotStatementPropertyValidator(properties).assertSuccess(),{Statement:cfnRuleGroupStatementPropertyToCloudFormation(properties.statement)}):properties}function CfnRuleGroupNotStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statement","Statement",CfnRuleGroupStatementPropertyFromCloudFormation(properties.Statement)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_OrStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statements",cdk.requiredValidator)(properties.statements)),errors.collect(cdk.propertyValidator("statements",cdk.listValidator(CfnRuleGroup_StatementPropertyValidator))(properties.statements)),errors.wrap('supplied properties not correct for "OrStatementProperty"')}function cfnRuleGroupOrStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_OrStatementPropertyValidator(properties).assertSuccess(),{Statements:cdk.listMapper(cfnRuleGroupStatementPropertyToCloudFormation)(properties.statements)}):properties}function CfnRuleGroupOrStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statements","Statements",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupStatementPropertyFromCloudFormation)(properties.Statements)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RateBasedStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("aggregateKeyType",cdk.requiredValidator)(properties.aggregateKeyType)),errors.collect(cdk.propertyValidator("aggregateKeyType",cdk.validateString)(properties.aggregateKeyType)),errors.collect(cdk.propertyValidator("forwardedIpConfig",CfnRuleGroup_ForwardedIPConfigurationPropertyValidator)(properties.forwardedIpConfig)),errors.collect(cdk.propertyValidator("limit",cdk.requiredValidator)(properties.limit)),errors.collect(cdk.propertyValidator("limit",cdk.validateNumber)(properties.limit)),errors.collect(cdk.propertyValidator("scopeDownStatement",CfnRuleGroup_StatementPropertyValidator)(properties.scopeDownStatement)),errors.wrap('supplied properties not correct for "RateBasedStatementProperty"')}function cfnRuleGroupRateBasedStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RateBasedStatementPropertyValidator(properties).assertSuccess(),{AggregateKeyType:cdk.stringToCloudFormation(properties.aggregateKeyType),ForwardedIPConfig:cfnRuleGroupForwardedIPConfigurationPropertyToCloudFormation(properties.forwardedIpConfig),Limit:cdk.numberToCloudFormation(properties.limit),ScopeDownStatement:cfnRuleGroupStatementPropertyToCloudFormation(properties.scopeDownStatement)}):properties}function CfnRuleGroupRateBasedStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("aggregateKeyType","AggregateKeyType",cfn_parse.FromCloudFormation.getString(properties.AggregateKeyType)),ret.addPropertyResult("forwardedIpConfig","ForwardedIPConfig",properties.ForwardedIPConfig!=null?CfnRuleGroupForwardedIPConfigurationPropertyFromCloudFormation(properties.ForwardedIPConfig):void 0),ret.addPropertyResult("limit","Limit",cfn_parse.FromCloudFormation.getNumber(properties.Limit)),ret.addPropertyResult("scopeDownStatement","ScopeDownStatement",properties.ScopeDownStatement!=null?CfnRuleGroupStatementPropertyFromCloudFormation(properties.ScopeDownStatement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RegexMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("regexString",cdk.requiredValidator)(properties.regexString)),errors.collect(cdk.propertyValidator("regexString",cdk.validateString)(properties.regexString)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "RegexMatchStatementProperty"')}function cfnRuleGroupRegexMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RegexMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),RegexString:cdk.stringToCloudFormation(properties.regexString),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupRegexMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("regexString","RegexString",cfn_parse.FromCloudFormation.getString(properties.RegexString)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RegexPatternSetReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "RegexPatternSetReferenceStatementProperty"')}function cfnRuleGroupRegexPatternSetReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RegexPatternSetReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupRegexPatternSetReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RulePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("action",CfnRuleGroup_RuleActionPropertyValidator)(properties.action)),errors.collect(cdk.propertyValidator("captchaConfig",CfnRuleGroup_CaptchaConfigPropertyValidator)(properties.captchaConfig)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("priority",cdk.requiredValidator)(properties.priority)),errors.collect(cdk.propertyValidator("priority",cdk.validateNumber)(properties.priority)),errors.collect(cdk.propertyValidator("ruleLabels",cdk.listValidator(CfnRuleGroup_LabelPropertyValidator))(properties.ruleLabels)),errors.collect(cdk.propertyValidator("statement",cdk.requiredValidator)(properties.statement)),errors.collect(cdk.propertyValidator("statement",CfnRuleGroup_StatementPropertyValidator)(properties.statement)),errors.collect(cdk.propertyValidator("visibilityConfig",cdk.requiredValidator)(properties.visibilityConfig)),errors.collect(cdk.propertyValidator("visibilityConfig",CfnRuleGroup_VisibilityConfigPropertyValidator)(properties.visibilityConfig)),errors.wrap('supplied properties not correct for "RuleProperty"')}function cfnRuleGroupRulePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RulePropertyValidator(properties).assertSuccess(),{Action:cfnRuleGroupRuleActionPropertyToCloudFormation(properties.action),CaptchaConfig:cfnRuleGroupCaptchaConfigPropertyToCloudFormation(properties.captchaConfig),Name:cdk.stringToCloudFormation(properties.name),Priority:cdk.numberToCloudFormation(properties.priority),RuleLabels:cdk.listMapper(cfnRuleGroupLabelPropertyToCloudFormation)(properties.ruleLabels),Statement:cfnRuleGroupStatementPropertyToCloudFormation(properties.statement),VisibilityConfig:cfnRuleGroupVisibilityConfigPropertyToCloudFormation(properties.visibilityConfig)}):properties}function CfnRuleGroupRulePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("action","Action",properties.Action!=null?CfnRuleGroupRuleActionPropertyFromCloudFormation(properties.Action):void 0),ret.addPropertyResult("captchaConfig","CaptchaConfig",properties.CaptchaConfig!=null?CfnRuleGroupCaptchaConfigPropertyFromCloudFormation(properties.CaptchaConfig):void 0),ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("priority","Priority",cfn_parse.FromCloudFormation.getNumber(properties.Priority)),ret.addPropertyResult("ruleLabels","RuleLabels",properties.RuleLabels!=null?cfn_parse.FromCloudFormation.getArray(CfnRuleGroupLabelPropertyFromCloudFormation)(properties.RuleLabels):void 0),ret.addPropertyResult("statement","Statement",CfnRuleGroupStatementPropertyFromCloudFormation(properties.Statement)),ret.addPropertyResult("visibilityConfig","VisibilityConfig",CfnRuleGroupVisibilityConfigPropertyFromCloudFormation(properties.VisibilityConfig)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_RuleActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allow",cdk.validateObject)(properties.allow)),errors.collect(cdk.propertyValidator("block",cdk.validateObject)(properties.block)),errors.collect(cdk.propertyValidator("captcha",cdk.validateObject)(properties.captcha)),errors.collect(cdk.propertyValidator("count",cdk.validateObject)(properties.count)),errors.wrap('supplied properties not correct for "RuleActionProperty"')}function cfnRuleGroupRuleActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_RuleActionPropertyValidator(properties).assertSuccess(),{Allow:cdk.objectToCloudFormation(properties.allow),Block:cdk.objectToCloudFormation(properties.block),Captcha:cdk.objectToCloudFormation(properties.captcha),Count:cdk.objectToCloudFormation(properties.count)}):properties}function CfnRuleGroupRuleActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allow","Allow",properties.Allow!=null?cfn_parse.FromCloudFormation.getAny(properties.Allow):void 0),ret.addPropertyResult("block","Block",properties.Block!=null?cfn_parse.FromCloudFormation.getAny(properties.Block):void 0),ret.addPropertyResult("captcha","Captcha",properties.Captcha!=null?cfn_parse.FromCloudFormation.getAny(properties.Captcha):void 0),ret.addPropertyResult("count","Count",properties.Count!=null?cfn_parse.FromCloudFormation.getAny(properties.Count):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_SizeConstraintStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.requiredValidator)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.validateString)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("size",cdk.requiredValidator)(properties.size)),errors.collect(cdk.propertyValidator("size",cdk.validateNumber)(properties.size)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "SizeConstraintStatementProperty"')}function cfnRuleGroupSizeConstraintStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_SizeConstraintStatementPropertyValidator(properties).assertSuccess(),{ComparisonOperator:cdk.stringToCloudFormation(properties.comparisonOperator),FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),Size:cdk.numberToCloudFormation(properties.size),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupSizeConstraintStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("comparisonOperator","ComparisonOperator",cfn_parse.FromCloudFormation.getString(properties.ComparisonOperator)),ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("size","Size",cfn_parse.FromCloudFormation.getNumber(properties.Size)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_SqliMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("sensitivityLevel",cdk.validateString)(properties.sensitivityLevel)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "SqliMatchStatementProperty"')}function cfnRuleGroupSqliMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_SqliMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),SensitivityLevel:cdk.stringToCloudFormation(properties.sensitivityLevel),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupSqliMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("sensitivityLevel","SensitivityLevel",properties.SensitivityLevel!=null?cfn_parse.FromCloudFormation.getString(properties.SensitivityLevel):void 0),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_StatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("andStatement",CfnRuleGroup_AndStatementPropertyValidator)(properties.andStatement)),errors.collect(cdk.propertyValidator("byteMatchStatement",CfnRuleGroup_ByteMatchStatementPropertyValidator)(properties.byteMatchStatement)),errors.collect(cdk.propertyValidator("geoMatchStatement",CfnRuleGroup_GeoMatchStatementPropertyValidator)(properties.geoMatchStatement)),errors.collect(cdk.propertyValidator("ipSetReferenceStatement",CfnRuleGroup_IPSetReferenceStatementPropertyValidator)(properties.ipSetReferenceStatement)),errors.collect(cdk.propertyValidator("labelMatchStatement",CfnRuleGroup_LabelMatchStatementPropertyValidator)(properties.labelMatchStatement)),errors.collect(cdk.propertyValidator("notStatement",CfnRuleGroup_NotStatementPropertyValidator)(properties.notStatement)),errors.collect(cdk.propertyValidator("orStatement",CfnRuleGroup_OrStatementPropertyValidator)(properties.orStatement)),errors.collect(cdk.propertyValidator("rateBasedStatement",CfnRuleGroup_RateBasedStatementPropertyValidator)(properties.rateBasedStatement)),errors.collect(cdk.propertyValidator("regexMatchStatement",CfnRuleGroup_RegexMatchStatementPropertyValidator)(properties.regexMatchStatement)),errors.collect(cdk.propertyValidator("regexPatternSetReferenceStatement",CfnRuleGroup_RegexPatternSetReferenceStatementPropertyValidator)(properties.regexPatternSetReferenceStatement)),errors.collect(cdk.propertyValidator("sizeConstraintStatement",CfnRuleGroup_SizeConstraintStatementPropertyValidator)(properties.sizeConstraintStatement)),errors.collect(cdk.propertyValidator("sqliMatchStatement",CfnRuleGroup_SqliMatchStatementPropertyValidator)(properties.sqliMatchStatement)),errors.collect(cdk.propertyValidator("xssMatchStatement",CfnRuleGroup_XssMatchStatementPropertyValidator)(properties.xssMatchStatement)),errors.wrap('supplied properties not correct for "StatementProperty"')}function cfnRuleGroupStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_StatementPropertyValidator(properties).assertSuccess(),{AndStatement:cfnRuleGroupAndStatementPropertyToCloudFormation(properties.andStatement),ByteMatchStatement:cfnRuleGroupByteMatchStatementPropertyToCloudFormation(properties.byteMatchStatement),GeoMatchStatement:cfnRuleGroupGeoMatchStatementPropertyToCloudFormation(properties.geoMatchStatement),IPSetReferenceStatement:cfnRuleGroupIPSetReferenceStatementPropertyToCloudFormation(properties.ipSetReferenceStatement),LabelMatchStatement:cfnRuleGroupLabelMatchStatementPropertyToCloudFormation(properties.labelMatchStatement),NotStatement:cfnRuleGroupNotStatementPropertyToCloudFormation(properties.notStatement),OrStatement:cfnRuleGroupOrStatementPropertyToCloudFormation(properties.orStatement),RateBasedStatement:cfnRuleGroupRateBasedStatementPropertyToCloudFormation(properties.rateBasedStatement),RegexMatchStatement:cfnRuleGroupRegexMatchStatementPropertyToCloudFormation(properties.regexMatchStatement),RegexPatternSetReferenceStatement:cfnRuleGroupRegexPatternSetReferenceStatementPropertyToCloudFormation(properties.regexPatternSetReferenceStatement),SizeConstraintStatement:cfnRuleGroupSizeConstraintStatementPropertyToCloudFormation(properties.sizeConstraintStatement),SqliMatchStatement:cfnRuleGroupSqliMatchStatementPropertyToCloudFormation(properties.sqliMatchStatement),XssMatchStatement:cfnRuleGroupXssMatchStatementPropertyToCloudFormation(properties.xssMatchStatement)}):properties}function CfnRuleGroupStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("andStatement","AndStatement",properties.AndStatement!=null?CfnRuleGroupAndStatementPropertyFromCloudFormation(properties.AndStatement):void 0),ret.addPropertyResult("byteMatchStatement","ByteMatchStatement",properties.ByteMatchStatement!=null?CfnRuleGroupByteMatchStatementPropertyFromCloudFormation(properties.ByteMatchStatement):void 0),ret.addPropertyResult("geoMatchStatement","GeoMatchStatement",properties.GeoMatchStatement!=null?CfnRuleGroupGeoMatchStatementPropertyFromCloudFormation(properties.GeoMatchStatement):void 0),ret.addPropertyResult("ipSetReferenceStatement","IPSetReferenceStatement",properties.IPSetReferenceStatement!=null?CfnRuleGroupIPSetReferenceStatementPropertyFromCloudFormation(properties.IPSetReferenceStatement):void 0),ret.addPropertyResult("labelMatchStatement","LabelMatchStatement",properties.LabelMatchStatement!=null?CfnRuleGroupLabelMatchStatementPropertyFromCloudFormation(properties.LabelMatchStatement):void 0),ret.addPropertyResult("notStatement","NotStatement",properties.NotStatement!=null?CfnRuleGroupNotStatementPropertyFromCloudFormation(properties.NotStatement):void 0),ret.addPropertyResult("orStatement","OrStatement",properties.OrStatement!=null?CfnRuleGroupOrStatementPropertyFromCloudFormation(properties.OrStatement):void 0),ret.addPropertyResult("rateBasedStatement","RateBasedStatement",properties.RateBasedStatement!=null?CfnRuleGroupRateBasedStatementPropertyFromCloudFormation(properties.RateBasedStatement):void 0),ret.addPropertyResult("regexMatchStatement","RegexMatchStatement",properties.RegexMatchStatement!=null?CfnRuleGroupRegexMatchStatementPropertyFromCloudFormation(properties.RegexMatchStatement):void 0),ret.addPropertyResult("regexPatternSetReferenceStatement","RegexPatternSetReferenceStatement",properties.RegexPatternSetReferenceStatement!=null?CfnRuleGroupRegexPatternSetReferenceStatementPropertyFromCloudFormation(properties.RegexPatternSetReferenceStatement):void 0),ret.addPropertyResult("sizeConstraintStatement","SizeConstraintStatement",properties.SizeConstraintStatement!=null?CfnRuleGroupSizeConstraintStatementPropertyFromCloudFormation(properties.SizeConstraintStatement):void 0),ret.addPropertyResult("sqliMatchStatement","SqliMatchStatement",properties.SqliMatchStatement!=null?CfnRuleGroupSqliMatchStatementPropertyFromCloudFormation(properties.SqliMatchStatement):void 0),ret.addPropertyResult("xssMatchStatement","XssMatchStatement",properties.XssMatchStatement!=null?CfnRuleGroupXssMatchStatementPropertyFromCloudFormation(properties.XssMatchStatement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_TextTransformationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("priority",cdk.requiredValidator)(properties.priority)),errors.collect(cdk.propertyValidator("priority",cdk.validateNumber)(properties.priority)),errors.collect(cdk.propertyValidator("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "TextTransformationProperty"')}function cfnRuleGroupTextTransformationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_TextTransformationPropertyValidator(properties).assertSuccess(),{Priority:cdk.numberToCloudFormation(properties.priority),Type:cdk.stringToCloudFormation(properties.type)}):properties}function CfnRuleGroupTextTransformationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("priority","Priority",cfn_parse.FromCloudFormation.getNumber(properties.Priority)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_VisibilityConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("cloudWatchMetricsEnabled",cdk.requiredValidator)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("cloudWatchMetricsEnabled",cdk.validateBoolean)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("metricName",cdk.requiredValidator)(properties.metricName)),errors.collect(cdk.propertyValidator("metricName",cdk.validateString)(properties.metricName)),errors.collect(cdk.propertyValidator("sampledRequestsEnabled",cdk.requiredValidator)(properties.sampledRequestsEnabled)),errors.collect(cdk.propertyValidator("sampledRequestsEnabled",cdk.validateBoolean)(properties.sampledRequestsEnabled)),errors.wrap('supplied properties not correct for "VisibilityConfigProperty"')}function cfnRuleGroupVisibilityConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_VisibilityConfigPropertyValidator(properties).assertSuccess(),{CloudWatchMetricsEnabled:cdk.booleanToCloudFormation(properties.cloudWatchMetricsEnabled),MetricName:cdk.stringToCloudFormation(properties.metricName),SampledRequestsEnabled:cdk.booleanToCloudFormation(properties.sampledRequestsEnabled)}):properties}function CfnRuleGroupVisibilityConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("cloudWatchMetricsEnabled","CloudWatchMetricsEnabled",cfn_parse.FromCloudFormation.getBoolean(properties.CloudWatchMetricsEnabled)),ret.addPropertyResult("metricName","MetricName",cfn_parse.FromCloudFormation.getString(properties.MetricName)),ret.addPropertyResult("sampledRequestsEnabled","SampledRequestsEnabled",cfn_parse.FromCloudFormation.getBoolean(properties.SampledRequestsEnabled)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnRuleGroup_XssMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnRuleGroup_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnRuleGroup_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "XssMatchStatementProperty"')}function cfnRuleGroupXssMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnRuleGroup_XssMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnRuleGroupFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),TextTransformations:cdk.listMapper(cfnRuleGroupTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnRuleGroupXssMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnRuleGroupFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnRuleGroupTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACLPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("captchaConfig",CfnWebACL_CaptchaConfigPropertyValidator)(properties.captchaConfig)),errors.collect(cdk.propertyValidator("customResponseBodies",cdk.hashValidator(CfnWebACL_CustomResponseBodyPropertyValidator))(properties.customResponseBodies)),errors.collect(cdk.propertyValidator("defaultAction",cdk.requiredValidator)(properties.defaultAction)),errors.collect(cdk.propertyValidator("defaultAction",CfnWebACL_DefaultActionPropertyValidator)(properties.defaultAction)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("rules",cdk.listValidator(CfnWebACL_RulePropertyValidator))(properties.rules)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("visibilityConfig",cdk.requiredValidator)(properties.visibilityConfig)),errors.collect(cdk.propertyValidator("visibilityConfig",CfnWebACL_VisibilityConfigPropertyValidator)(properties.visibilityConfig)),errors.wrap('supplied properties not correct for "CfnWebACLProps"')}function cfnWebACLPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACLPropsValidator(properties).assertSuccess(),{DefaultAction:cfnWebACLDefaultActionPropertyToCloudFormation(properties.defaultAction),Scope:cdk.stringToCloudFormation(properties.scope),VisibilityConfig:cfnWebACLVisibilityConfigPropertyToCloudFormation(properties.visibilityConfig),CaptchaConfig:cfnWebACLCaptchaConfigPropertyToCloudFormation(properties.captchaConfig),CustomResponseBodies:cdk.hashMapper(cfnWebACLCustomResponseBodyPropertyToCloudFormation)(properties.customResponseBodies),Description:cdk.stringToCloudFormation(properties.description),Name:cdk.stringToCloudFormation(properties.name),Rules:cdk.listMapper(cfnWebACLRulePropertyToCloudFormation)(properties.rules),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnWebACLPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("defaultAction","DefaultAction",CfnWebACLDefaultActionPropertyFromCloudFormation(properties.DefaultAction)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addPropertyResult("visibilityConfig","VisibilityConfig",CfnWebACLVisibilityConfigPropertyFromCloudFormation(properties.VisibilityConfig)),ret.addPropertyResult("captchaConfig","CaptchaConfig",properties.CaptchaConfig!=null?CfnWebACLCaptchaConfigPropertyFromCloudFormation(properties.CaptchaConfig):void 0),ret.addPropertyResult("customResponseBodies","CustomResponseBodies",properties.CustomResponseBodies!=null?cfn_parse.FromCloudFormation.getMap(CfnWebACLCustomResponseBodyPropertyFromCloudFormation)(properties.CustomResponseBodies):void 0),ret.addPropertyResult("description","Description",properties.Description!=null?cfn_parse.FromCloudFormation.getString(properties.Description):void 0),ret.addPropertyResult("name","Name",properties.Name!=null?cfn_parse.FromCloudFormation.getString(properties.Name):void 0),ret.addPropertyResult("rules","Rules",properties.Rules!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLRulePropertyFromCloudFormation)(properties.Rules):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnWebACL extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnWebACL.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnWebACLProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWebACL),error}cdk.requireProperty(props,"defaultAction",this),cdk.requireProperty(props,"scope",this),cdk.requireProperty(props,"visibilityConfig",this),this.attrArn=cdk.Token.asString(this.getAtt("Arn")),this.attrCapacity=cdk.Token.asNumber(this.getAtt("Capacity")),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.attrLabelNamespace=cdk.Token.asString(this.getAtt("LabelNamespace")),this.defaultAction=props.defaultAction,this.scope=props.scope,this.visibilityConfig=props.visibilityConfig,this.captchaConfig=props.captchaConfig,this.customResponseBodies=props.customResponseBodies,this.description=props.description,this.name=props.name,this.rules=props.rules,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::WAFv2::WebACL",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWebACLPropsFromCloudFormation(resourceProperties),ret=new CfnWebACL(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnWebACL.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{defaultAction:this.defaultAction,scope:this.scope,visibilityConfig:this.visibilityConfig,captchaConfig:this.captchaConfig,customResponseBodies:this.customResponseBodies,description:this.description,name:this.name,rules:this.rules,tags:this.tags.renderTags()}}renderProperties(props){return cfnWebACLPropsToCloudFormation(props)}}exports.CfnWebACL=CfnWebACL,_e=JSII_RTTI_SYMBOL_1,CfnWebACL[_e]={fqn:"aws-cdk-lib.aws_wafv2.CfnWebACL",version:"2.51.1"},CfnWebACL.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::WebACL";function CfnWebACL_AllowActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customRequestHandling",CfnWebACL_CustomRequestHandlingPropertyValidator)(properties.customRequestHandling)),errors.wrap('supplied properties not correct for "AllowActionProperty"')}function cfnWebACLAllowActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_AllowActionPropertyValidator(properties).assertSuccess(),{CustomRequestHandling:cfnWebACLCustomRequestHandlingPropertyToCloudFormation(properties.customRequestHandling)}):properties}function CfnWebACLAllowActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customRequestHandling","CustomRequestHandling",properties.CustomRequestHandling!=null?CfnWebACLCustomRequestHandlingPropertyFromCloudFormation(properties.CustomRequestHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_AndStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statements",cdk.requiredValidator)(properties.statements)),errors.collect(cdk.propertyValidator("statements",cdk.listValidator(CfnWebACL_StatementPropertyValidator))(properties.statements)),errors.wrap('supplied properties not correct for "AndStatementProperty"')}function cfnWebACLAndStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_AndStatementPropertyValidator(properties).assertSuccess(),{Statements:cdk.listMapper(cfnWebACLStatementPropertyToCloudFormation)(properties.statements)}):properties}function CfnWebACLAndStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statements","Statements",cfn_parse.FromCloudFormation.getArray(CfnWebACLStatementPropertyFromCloudFormation)(properties.Statements)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_BlockActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customResponse",CfnWebACL_CustomResponsePropertyValidator)(properties.customResponse)),errors.wrap('supplied properties not correct for "BlockActionProperty"')}function cfnWebACLBlockActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_BlockActionPropertyValidator(properties).assertSuccess(),{CustomResponse:cfnWebACLCustomResponsePropertyToCloudFormation(properties.customResponse)}):properties}function CfnWebACLBlockActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customResponse","CustomResponse",properties.CustomResponse!=null?CfnWebACLCustomResponsePropertyFromCloudFormation(properties.CustomResponse):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_BodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "BodyProperty"')}function cfnWebACLBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_BodyPropertyValidator(properties).assertSuccess(),{OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnWebACLBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("oversizeHandling","OversizeHandling",properties.OversizeHandling!=null?cfn_parse.FromCloudFormation.getString(properties.OversizeHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ByteMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("positionalConstraint",cdk.requiredValidator)(properties.positionalConstraint)),errors.collect(cdk.propertyValidator("positionalConstraint",cdk.validateString)(properties.positionalConstraint)),errors.collect(cdk.propertyValidator("searchString",cdk.validateString)(properties.searchString)),errors.collect(cdk.propertyValidator("searchStringBase64",cdk.validateString)(properties.searchStringBase64)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "ByteMatchStatementProperty"')}function cfnWebACLByteMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ByteMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),PositionalConstraint:cdk.stringToCloudFormation(properties.positionalConstraint),SearchString:cdk.stringToCloudFormation(properties.searchString),SearchStringBase64:cdk.stringToCloudFormation(properties.searchStringBase64),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLByteMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("positionalConstraint","PositionalConstraint",cfn_parse.FromCloudFormation.getString(properties.PositionalConstraint)),ret.addPropertyResult("searchString","SearchString",properties.SearchString!=null?cfn_parse.FromCloudFormation.getString(properties.SearchString):void 0),ret.addPropertyResult("searchStringBase64","SearchStringBase64",properties.SearchStringBase64!=null?cfn_parse.FromCloudFormation.getString(properties.SearchStringBase64):void 0),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CaptchaActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customRequestHandling",CfnWebACL_CustomRequestHandlingPropertyValidator)(properties.customRequestHandling)),errors.wrap('supplied properties not correct for "CaptchaActionProperty"')}function cfnWebACLCaptchaActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CaptchaActionPropertyValidator(properties).assertSuccess(),{CustomRequestHandling:cfnWebACLCustomRequestHandlingPropertyToCloudFormation(properties.customRequestHandling)}):properties}function CfnWebACLCaptchaActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customRequestHandling","CustomRequestHandling",properties.CustomRequestHandling!=null?CfnWebACLCustomRequestHandlingPropertyFromCloudFormation(properties.CustomRequestHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CaptchaConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("immunityTimeProperty",CfnWebACL_ImmunityTimePropertyPropertyValidator)(properties.immunityTimeProperty)),errors.wrap('supplied properties not correct for "CaptchaConfigProperty"')}function cfnWebACLCaptchaConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CaptchaConfigPropertyValidator(properties).assertSuccess(),{ImmunityTimeProperty:cfnWebACLImmunityTimePropertyPropertyToCloudFormation(properties.immunityTimeProperty)}):properties}function CfnWebACLCaptchaConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("immunityTimeProperty","ImmunityTimeProperty",properties.ImmunityTimeProperty!=null?CfnWebACLImmunityTimePropertyPropertyFromCloudFormation(properties.ImmunityTimeProperty):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CookieMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("excludedCookies",cdk.listValidator(cdk.validateString))(properties.excludedCookies)),errors.collect(cdk.propertyValidator("includedCookies",cdk.listValidator(cdk.validateString))(properties.includedCookies)),errors.wrap('supplied properties not correct for "CookieMatchPatternProperty"')}function cfnWebACLCookieMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CookieMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),ExcludedCookies:cdk.listMapper(cdk.stringToCloudFormation)(properties.excludedCookies),IncludedCookies:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedCookies)}):properties}function CfnWebACLCookieMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("excludedCookies","ExcludedCookies",properties.ExcludedCookies!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExcludedCookies):void 0),ret.addPropertyResult("includedCookies","IncludedCookies",properties.IncludedCookies!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedCookies):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CookiesPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnWebACL_CookieMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.requiredValidator)(properties.oversizeHandling)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "CookiesProperty"')}function cfnWebACLCookiesPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CookiesPropertyValidator(properties).assertSuccess(),{MatchPattern:cfnWebACLCookieMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnWebACLCookiesPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("matchPattern","MatchPattern",CfnWebACLCookieMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",cfn_parse.FromCloudFormation.getString(properties.OversizeHandling)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CountActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customRequestHandling",CfnWebACL_CustomRequestHandlingPropertyValidator)(properties.customRequestHandling)),errors.wrap('supplied properties not correct for "CountActionProperty"')}function cfnWebACLCountActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CountActionPropertyValidator(properties).assertSuccess(),{CustomRequestHandling:cfnWebACLCustomRequestHandlingPropertyToCloudFormation(properties.customRequestHandling)}):properties}function CfnWebACLCountActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customRequestHandling","CustomRequestHandling",properties.CustomRequestHandling!=null?CfnWebACLCustomRequestHandlingPropertyFromCloudFormation(properties.CustomRequestHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CustomHTTPHeaderPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("value",cdk.requiredValidator)(properties.value)),errors.collect(cdk.propertyValidator("value",cdk.validateString)(properties.value)),errors.wrap('supplied properties not correct for "CustomHTTPHeaderProperty"')}function cfnWebACLCustomHTTPHeaderPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CustomHTTPHeaderPropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name),Value:cdk.stringToCloudFormation(properties.value)}):properties}function CfnWebACLCustomHTTPHeaderPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("value","Value",cfn_parse.FromCloudFormation.getString(properties.Value)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CustomRequestHandlingPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("insertHeaders",cdk.requiredValidator)(properties.insertHeaders)),errors.collect(cdk.propertyValidator("insertHeaders",cdk.listValidator(CfnWebACL_CustomHTTPHeaderPropertyValidator))(properties.insertHeaders)),errors.wrap('supplied properties not correct for "CustomRequestHandlingProperty"')}function cfnWebACLCustomRequestHandlingPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CustomRequestHandlingPropertyValidator(properties).assertSuccess(),{InsertHeaders:cdk.listMapper(cfnWebACLCustomHTTPHeaderPropertyToCloudFormation)(properties.insertHeaders)}):properties}function CfnWebACLCustomRequestHandlingPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("insertHeaders","InsertHeaders",cfn_parse.FromCloudFormation.getArray(CfnWebACLCustomHTTPHeaderPropertyFromCloudFormation)(properties.InsertHeaders)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CustomResponsePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("customResponseBodyKey",cdk.validateString)(properties.customResponseBodyKey)),errors.collect(cdk.propertyValidator("responseCode",cdk.requiredValidator)(properties.responseCode)),errors.collect(cdk.propertyValidator("responseCode",cdk.validateNumber)(properties.responseCode)),errors.collect(cdk.propertyValidator("responseHeaders",cdk.listValidator(CfnWebACL_CustomHTTPHeaderPropertyValidator))(properties.responseHeaders)),errors.wrap('supplied properties not correct for "CustomResponseProperty"')}function cfnWebACLCustomResponsePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CustomResponsePropertyValidator(properties).assertSuccess(),{CustomResponseBodyKey:cdk.stringToCloudFormation(properties.customResponseBodyKey),ResponseCode:cdk.numberToCloudFormation(properties.responseCode),ResponseHeaders:cdk.listMapper(cfnWebACLCustomHTTPHeaderPropertyToCloudFormation)(properties.responseHeaders)}):properties}function CfnWebACLCustomResponsePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("customResponseBodyKey","CustomResponseBodyKey",properties.CustomResponseBodyKey!=null?cfn_parse.FromCloudFormation.getString(properties.CustomResponseBodyKey):void 0),ret.addPropertyResult("responseCode","ResponseCode",cfn_parse.FromCloudFormation.getNumber(properties.ResponseCode)),ret.addPropertyResult("responseHeaders","ResponseHeaders",properties.ResponseHeaders!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLCustomHTTPHeaderPropertyFromCloudFormation)(properties.ResponseHeaders):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_CustomResponseBodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("content",cdk.requiredValidator)(properties.content)),errors.collect(cdk.propertyValidator("content",cdk.validateString)(properties.content)),errors.collect(cdk.propertyValidator("contentType",cdk.requiredValidator)(properties.contentType)),errors.collect(cdk.propertyValidator("contentType",cdk.validateString)(properties.contentType)),errors.wrap('supplied properties not correct for "CustomResponseBodyProperty"')}function cfnWebACLCustomResponseBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_CustomResponseBodyPropertyValidator(properties).assertSuccess(),{Content:cdk.stringToCloudFormation(properties.content),ContentType:cdk.stringToCloudFormation(properties.contentType)}):properties}function CfnWebACLCustomResponseBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("content","Content",cfn_parse.FromCloudFormation.getString(properties.Content)),ret.addPropertyResult("contentType","ContentType",cfn_parse.FromCloudFormation.getString(properties.ContentType)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_DefaultActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allow",CfnWebACL_AllowActionPropertyValidator)(properties.allow)),errors.collect(cdk.propertyValidator("block",CfnWebACL_BlockActionPropertyValidator)(properties.block)),errors.wrap('supplied properties not correct for "DefaultActionProperty"')}function cfnWebACLDefaultActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_DefaultActionPropertyValidator(properties).assertSuccess(),{Allow:cfnWebACLAllowActionPropertyToCloudFormation(properties.allow),Block:cfnWebACLBlockActionPropertyToCloudFormation(properties.block)}):properties}function CfnWebACLDefaultActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allow","Allow",properties.Allow!=null?CfnWebACLAllowActionPropertyFromCloudFormation(properties.Allow):void 0),ret.addPropertyResult("block","Block",properties.Block!=null?CfnWebACLBlockActionPropertyFromCloudFormation(properties.Block):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ExcludedRulePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.wrap('supplied properties not correct for "ExcludedRuleProperty"')}function cfnWebACLExcludedRulePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ExcludedRulePropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name)}):properties}function CfnWebACLExcludedRulePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_FieldIdentifierPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("identifier",cdk.requiredValidator)(properties.identifier)),errors.collect(cdk.propertyValidator("identifier",cdk.validateString)(properties.identifier)),errors.wrap('supplied properties not correct for "FieldIdentifierProperty"')}function cfnWebACLFieldIdentifierPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_FieldIdentifierPropertyValidator(properties).assertSuccess(),{Identifier:cdk.stringToCloudFormation(properties.identifier)}):properties}function CfnWebACLFieldIdentifierPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("identifier","Identifier",cfn_parse.FromCloudFormation.getString(properties.Identifier)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_FieldToMatchPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allQueryArguments",cdk.validateObject)(properties.allQueryArguments)),errors.collect(cdk.propertyValidator("body",CfnWebACL_BodyPropertyValidator)(properties.body)),errors.collect(cdk.propertyValidator("cookies",CfnWebACL_CookiesPropertyValidator)(properties.cookies)),errors.collect(cdk.propertyValidator("headers",CfnWebACL_HeadersPropertyValidator)(properties.headers)),errors.collect(cdk.propertyValidator("jsonBody",CfnWebACL_JsonBodyPropertyValidator)(properties.jsonBody)),errors.collect(cdk.propertyValidator("method",cdk.validateObject)(properties.method)),errors.collect(cdk.propertyValidator("queryString",cdk.validateObject)(properties.queryString)),errors.collect(cdk.propertyValidator("singleHeader",cdk.validateObject)(properties.singleHeader)),errors.collect(cdk.propertyValidator("singleQueryArgument",cdk.validateObject)(properties.singleQueryArgument)),errors.collect(cdk.propertyValidator("uriPath",cdk.validateObject)(properties.uriPath)),errors.wrap('supplied properties not correct for "FieldToMatchProperty"')}function cfnWebACLFieldToMatchPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_FieldToMatchPropertyValidator(properties).assertSuccess(),{AllQueryArguments:cdk.objectToCloudFormation(properties.allQueryArguments),Body:cfnWebACLBodyPropertyToCloudFormation(properties.body),Cookies:cfnWebACLCookiesPropertyToCloudFormation(properties.cookies),Headers:cfnWebACLHeadersPropertyToCloudFormation(properties.headers),JsonBody:cfnWebACLJsonBodyPropertyToCloudFormation(properties.jsonBody),Method:cdk.objectToCloudFormation(properties.method),QueryString:cdk.objectToCloudFormation(properties.queryString),SingleHeader:cdk.objectToCloudFormation(properties.singleHeader),SingleQueryArgument:cdk.objectToCloudFormation(properties.singleQueryArgument),UriPath:cdk.objectToCloudFormation(properties.uriPath)}):properties}function CfnWebACLFieldToMatchPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allQueryArguments","AllQueryArguments",properties.AllQueryArguments!=null?cfn_parse.FromCloudFormation.getAny(properties.AllQueryArguments):void 0),ret.addPropertyResult("body","Body",properties.Body!=null?CfnWebACLBodyPropertyFromCloudFormation(properties.Body):void 0),ret.addPropertyResult("cookies","Cookies",properties.Cookies!=null?CfnWebACLCookiesPropertyFromCloudFormation(properties.Cookies):void 0),ret.addPropertyResult("headers","Headers",properties.Headers!=null?CfnWebACLHeadersPropertyFromCloudFormation(properties.Headers):void 0),ret.addPropertyResult("jsonBody","JsonBody",properties.JsonBody!=null?CfnWebACLJsonBodyPropertyFromCloudFormation(properties.JsonBody):void 0),ret.addPropertyResult("method","Method",properties.Method!=null?cfn_parse.FromCloudFormation.getAny(properties.Method):void 0),ret.addPropertyResult("queryString","QueryString",properties.QueryString!=null?cfn_parse.FromCloudFormation.getAny(properties.QueryString):void 0),ret.addPropertyResult("singleHeader","SingleHeader",properties.SingleHeader!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleHeader):void 0),ret.addPropertyResult("singleQueryArgument","SingleQueryArgument",properties.SingleQueryArgument!=null?cfn_parse.FromCloudFormation.getAny(properties.SingleQueryArgument):void 0),ret.addPropertyResult("uriPath","UriPath",properties.UriPath!=null?cfn_parse.FromCloudFormation.getAny(properties.UriPath):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ForwardedIPConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.requiredValidator)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.validateString)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("headerName",cdk.requiredValidator)(properties.headerName)),errors.collect(cdk.propertyValidator("headerName",cdk.validateString)(properties.headerName)),errors.wrap('supplied properties not correct for "ForwardedIPConfigurationProperty"')}function cfnWebACLForwardedIPConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ForwardedIPConfigurationPropertyValidator(properties).assertSuccess(),{FallbackBehavior:cdk.stringToCloudFormation(properties.fallbackBehavior),HeaderName:cdk.stringToCloudFormation(properties.headerName)}):properties}function CfnWebACLForwardedIPConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fallbackBehavior","FallbackBehavior",cfn_parse.FromCloudFormation.getString(properties.FallbackBehavior)),ret.addPropertyResult("headerName","HeaderName",cfn_parse.FromCloudFormation.getString(properties.HeaderName)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_GeoMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("countryCodes",cdk.listValidator(cdk.validateString))(properties.countryCodes)),errors.collect(cdk.propertyValidator("forwardedIpConfig",CfnWebACL_ForwardedIPConfigurationPropertyValidator)(properties.forwardedIpConfig)),errors.wrap('supplied properties not correct for "GeoMatchStatementProperty"')}function cfnWebACLGeoMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_GeoMatchStatementPropertyValidator(properties).assertSuccess(),{CountryCodes:cdk.listMapper(cdk.stringToCloudFormation)(properties.countryCodes),ForwardedIPConfig:cfnWebACLForwardedIPConfigurationPropertyToCloudFormation(properties.forwardedIpConfig)}):properties}function CfnWebACLGeoMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("countryCodes","CountryCodes",properties.CountryCodes!=null?cfn_parse.FromCloudFormation.getStringArray(properties.CountryCodes):void 0),ret.addPropertyResult("forwardedIpConfig","ForwardedIPConfig",properties.ForwardedIPConfig!=null?CfnWebACLForwardedIPConfigurationPropertyFromCloudFormation(properties.ForwardedIPConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_HeaderMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("excludedHeaders",cdk.listValidator(cdk.validateString))(properties.excludedHeaders)),errors.collect(cdk.propertyValidator("includedHeaders",cdk.listValidator(cdk.validateString))(properties.includedHeaders)),errors.wrap('supplied properties not correct for "HeaderMatchPatternProperty"')}function cfnWebACLHeaderMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_HeaderMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),ExcludedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.excludedHeaders),IncludedHeaders:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedHeaders)}):properties}function CfnWebACLHeaderMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("excludedHeaders","ExcludedHeaders",properties.ExcludedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ExcludedHeaders):void 0),ret.addPropertyResult("includedHeaders","IncludedHeaders",properties.IncludedHeaders!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedHeaders):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_HeadersPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnWebACL_HeaderMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.requiredValidator)(properties.oversizeHandling)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "HeadersProperty"')}function cfnWebACLHeadersPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_HeadersPropertyValidator(properties).assertSuccess(),{MatchPattern:cfnWebACLHeaderMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnWebACLHeadersPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("matchPattern","MatchPattern",CfnWebACLHeaderMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",cfn_parse.FromCloudFormation.getString(properties.OversizeHandling)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_IPSetForwardedIPConfigurationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.requiredValidator)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("fallbackBehavior",cdk.validateString)(properties.fallbackBehavior)),errors.collect(cdk.propertyValidator("headerName",cdk.requiredValidator)(properties.headerName)),errors.collect(cdk.propertyValidator("headerName",cdk.validateString)(properties.headerName)),errors.collect(cdk.propertyValidator("position",cdk.requiredValidator)(properties.position)),errors.collect(cdk.propertyValidator("position",cdk.validateString)(properties.position)),errors.wrap('supplied properties not correct for "IPSetForwardedIPConfigurationProperty"')}function cfnWebACLIPSetForwardedIPConfigurationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_IPSetForwardedIPConfigurationPropertyValidator(properties).assertSuccess(),{FallbackBehavior:cdk.stringToCloudFormation(properties.fallbackBehavior),HeaderName:cdk.stringToCloudFormation(properties.headerName),Position:cdk.stringToCloudFormation(properties.position)}):properties}function CfnWebACLIPSetForwardedIPConfigurationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fallbackBehavior","FallbackBehavior",cfn_parse.FromCloudFormation.getString(properties.FallbackBehavior)),ret.addPropertyResult("headerName","HeaderName",cfn_parse.FromCloudFormation.getString(properties.HeaderName)),ret.addPropertyResult("position","Position",cfn_parse.FromCloudFormation.getString(properties.Position)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_IPSetReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("ipSetForwardedIpConfig",CfnWebACL_IPSetForwardedIPConfigurationPropertyValidator)(properties.ipSetForwardedIpConfig)),errors.wrap('supplied properties not correct for "IPSetReferenceStatementProperty"')}function cfnWebACLIPSetReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_IPSetReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),IPSetForwardedIPConfig:cfnWebACLIPSetForwardedIPConfigurationPropertyToCloudFormation(properties.ipSetForwardedIpConfig)}):properties}function CfnWebACLIPSetReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("ipSetForwardedIpConfig","IPSetForwardedIPConfig",properties.IPSetForwardedIPConfig!=null?CfnWebACLIPSetForwardedIPConfigurationPropertyFromCloudFormation(properties.IPSetForwardedIPConfig):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ImmunityTimePropertyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("immunityTime",cdk.requiredValidator)(properties.immunityTime)),errors.collect(cdk.propertyValidator("immunityTime",cdk.validateNumber)(properties.immunityTime)),errors.wrap('supplied properties not correct for "ImmunityTimePropertyProperty"')}function cfnWebACLImmunityTimePropertyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ImmunityTimePropertyPropertyValidator(properties).assertSuccess(),{ImmunityTime:cdk.numberToCloudFormation(properties.immunityTime)}):properties}function CfnWebACLImmunityTimePropertyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("immunityTime","ImmunityTime",cfn_parse.FromCloudFormation.getNumber(properties.ImmunityTime)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_JsonBodyPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("invalidFallbackBehavior",cdk.validateString)(properties.invalidFallbackBehavior)),errors.collect(cdk.propertyValidator("matchPattern",cdk.requiredValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchPattern",CfnWebACL_JsonMatchPatternPropertyValidator)(properties.matchPattern)),errors.collect(cdk.propertyValidator("matchScope",cdk.requiredValidator)(properties.matchScope)),errors.collect(cdk.propertyValidator("matchScope",cdk.validateString)(properties.matchScope)),errors.collect(cdk.propertyValidator("oversizeHandling",cdk.validateString)(properties.oversizeHandling)),errors.wrap('supplied properties not correct for "JsonBodyProperty"')}function cfnWebACLJsonBodyPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_JsonBodyPropertyValidator(properties).assertSuccess(),{InvalidFallbackBehavior:cdk.stringToCloudFormation(properties.invalidFallbackBehavior),MatchPattern:cfnWebACLJsonMatchPatternPropertyToCloudFormation(properties.matchPattern),MatchScope:cdk.stringToCloudFormation(properties.matchScope),OversizeHandling:cdk.stringToCloudFormation(properties.oversizeHandling)}):properties}function CfnWebACLJsonBodyPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("invalidFallbackBehavior","InvalidFallbackBehavior",properties.InvalidFallbackBehavior!=null?cfn_parse.FromCloudFormation.getString(properties.InvalidFallbackBehavior):void 0),ret.addPropertyResult("matchPattern","MatchPattern",CfnWebACLJsonMatchPatternPropertyFromCloudFormation(properties.MatchPattern)),ret.addPropertyResult("matchScope","MatchScope",cfn_parse.FromCloudFormation.getString(properties.MatchScope)),ret.addPropertyResult("oversizeHandling","OversizeHandling",properties.OversizeHandling!=null?cfn_parse.FromCloudFormation.getString(properties.OversizeHandling):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_JsonMatchPatternPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("all",cdk.validateObject)(properties.all)),errors.collect(cdk.propertyValidator("includedPaths",cdk.listValidator(cdk.validateString))(properties.includedPaths)),errors.wrap('supplied properties not correct for "JsonMatchPatternProperty"')}function cfnWebACLJsonMatchPatternPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_JsonMatchPatternPropertyValidator(properties).assertSuccess(),{All:cdk.objectToCloudFormation(properties.all),IncludedPaths:cdk.listMapper(cdk.stringToCloudFormation)(properties.includedPaths)}):properties}function CfnWebACLJsonMatchPatternPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("all","All",properties.All!=null?cfn_parse.FromCloudFormation.getAny(properties.All):void 0),ret.addPropertyResult("includedPaths","IncludedPaths",properties.IncludedPaths!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IncludedPaths):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_LabelPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.wrap('supplied properties not correct for "LabelProperty"')}function cfnWebACLLabelPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_LabelPropertyValidator(properties).assertSuccess(),{Name:cdk.stringToCloudFormation(properties.name)}):properties}function CfnWebACLLabelPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_LabelMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("key",cdk.requiredValidator)(properties.key)),errors.collect(cdk.propertyValidator("key",cdk.validateString)(properties.key)),errors.collect(cdk.propertyValidator("scope",cdk.requiredValidator)(properties.scope)),errors.collect(cdk.propertyValidator("scope",cdk.validateString)(properties.scope)),errors.wrap('supplied properties not correct for "LabelMatchStatementProperty"')}function cfnWebACLLabelMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_LabelMatchStatementPropertyValidator(properties).assertSuccess(),{Key:cdk.stringToCloudFormation(properties.key),Scope:cdk.stringToCloudFormation(properties.scope)}):properties}function CfnWebACLLabelMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("key","Key",cfn_parse.FromCloudFormation.getString(properties.Key)),ret.addPropertyResult("scope","Scope",cfn_parse.FromCloudFormation.getString(properties.Scope)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ManagedRuleGroupConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("loginPath",cdk.validateString)(properties.loginPath)),errors.collect(cdk.propertyValidator("passwordField",CfnWebACL_FieldIdentifierPropertyValidator)(properties.passwordField)),errors.collect(cdk.propertyValidator("payloadType",cdk.validateString)(properties.payloadType)),errors.collect(cdk.propertyValidator("usernameField",CfnWebACL_FieldIdentifierPropertyValidator)(properties.usernameField)),errors.wrap('supplied properties not correct for "ManagedRuleGroupConfigProperty"')}function cfnWebACLManagedRuleGroupConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ManagedRuleGroupConfigPropertyValidator(properties).assertSuccess(),{LoginPath:cdk.stringToCloudFormation(properties.loginPath),PasswordField:cfnWebACLFieldIdentifierPropertyToCloudFormation(properties.passwordField),PayloadType:cdk.stringToCloudFormation(properties.payloadType),UsernameField:cfnWebACLFieldIdentifierPropertyToCloudFormation(properties.usernameField)}):properties}function CfnWebACLManagedRuleGroupConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("loginPath","LoginPath",properties.LoginPath!=null?cfn_parse.FromCloudFormation.getString(properties.LoginPath):void 0),ret.addPropertyResult("passwordField","PasswordField",properties.PasswordField!=null?CfnWebACLFieldIdentifierPropertyFromCloudFormation(properties.PasswordField):void 0),ret.addPropertyResult("payloadType","PayloadType",properties.PayloadType!=null?cfn_parse.FromCloudFormation.getString(properties.PayloadType):void 0),ret.addPropertyResult("usernameField","UsernameField",properties.UsernameField!=null?CfnWebACLFieldIdentifierPropertyFromCloudFormation(properties.UsernameField):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_ManagedRuleGroupStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("excludedRules",cdk.listValidator(CfnWebACL_ExcludedRulePropertyValidator))(properties.excludedRules)),errors.collect(cdk.propertyValidator("managedRuleGroupConfigs",cdk.listValidator(CfnWebACL_ManagedRuleGroupConfigPropertyValidator))(properties.managedRuleGroupConfigs)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("scopeDownStatement",CfnWebACL_StatementPropertyValidator)(properties.scopeDownStatement)),errors.collect(cdk.propertyValidator("vendorName",cdk.requiredValidator)(properties.vendorName)),errors.collect(cdk.propertyValidator("vendorName",cdk.validateString)(properties.vendorName)),errors.collect(cdk.propertyValidator("version",cdk.validateString)(properties.version)),errors.wrap('supplied properties not correct for "ManagedRuleGroupStatementProperty"')}function cfnWebACLManagedRuleGroupStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_ManagedRuleGroupStatementPropertyValidator(properties).assertSuccess(),{ExcludedRules:cdk.listMapper(cfnWebACLExcludedRulePropertyToCloudFormation)(properties.excludedRules),ManagedRuleGroupConfigs:cdk.listMapper(cfnWebACLManagedRuleGroupConfigPropertyToCloudFormation)(properties.managedRuleGroupConfigs),Name:cdk.stringToCloudFormation(properties.name),ScopeDownStatement:cfnWebACLStatementPropertyToCloudFormation(properties.scopeDownStatement),VendorName:cdk.stringToCloudFormation(properties.vendorName),Version:cdk.stringToCloudFormation(properties.version)}):properties}function CfnWebACLManagedRuleGroupStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("excludedRules","ExcludedRules",properties.ExcludedRules!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLExcludedRulePropertyFromCloudFormation)(properties.ExcludedRules):void 0),ret.addPropertyResult("managedRuleGroupConfigs","ManagedRuleGroupConfigs",properties.ManagedRuleGroupConfigs!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLManagedRuleGroupConfigPropertyFromCloudFormation)(properties.ManagedRuleGroupConfigs):void 0),ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("scopeDownStatement","ScopeDownStatement",properties.ScopeDownStatement!=null?CfnWebACLStatementPropertyFromCloudFormation(properties.ScopeDownStatement):void 0),ret.addPropertyResult("vendorName","VendorName",cfn_parse.FromCloudFormation.getString(properties.VendorName)),ret.addPropertyResult("version","Version",properties.Version!=null?cfn_parse.FromCloudFormation.getString(properties.Version):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_NotStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statement",cdk.requiredValidator)(properties.statement)),errors.collect(cdk.propertyValidator("statement",CfnWebACL_StatementPropertyValidator)(properties.statement)),errors.wrap('supplied properties not correct for "NotStatementProperty"')}function cfnWebACLNotStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_NotStatementPropertyValidator(properties).assertSuccess(),{Statement:cfnWebACLStatementPropertyToCloudFormation(properties.statement)}):properties}function CfnWebACLNotStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statement","Statement",CfnWebACLStatementPropertyFromCloudFormation(properties.Statement)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_OrStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("statements",cdk.requiredValidator)(properties.statements)),errors.collect(cdk.propertyValidator("statements",cdk.listValidator(CfnWebACL_StatementPropertyValidator))(properties.statements)),errors.wrap('supplied properties not correct for "OrStatementProperty"')}function cfnWebACLOrStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_OrStatementPropertyValidator(properties).assertSuccess(),{Statements:cdk.listMapper(cfnWebACLStatementPropertyToCloudFormation)(properties.statements)}):properties}function CfnWebACLOrStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("statements","Statements",cfn_parse.FromCloudFormation.getArray(CfnWebACLStatementPropertyFromCloudFormation)(properties.Statements)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_OverrideActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("count",cdk.validateObject)(properties.count)),errors.collect(cdk.propertyValidator("none",cdk.validateObject)(properties.none)),errors.wrap('supplied properties not correct for "OverrideActionProperty"')}function cfnWebACLOverrideActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_OverrideActionPropertyValidator(properties).assertSuccess(),{Count:cdk.objectToCloudFormation(properties.count),None:cdk.objectToCloudFormation(properties.none)}):properties}function CfnWebACLOverrideActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("count","Count",properties.Count!=null?cfn_parse.FromCloudFormation.getAny(properties.Count):void 0),ret.addPropertyResult("none","None",properties.None!=null?cfn_parse.FromCloudFormation.getAny(properties.None):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RateBasedStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("aggregateKeyType",cdk.requiredValidator)(properties.aggregateKeyType)),errors.collect(cdk.propertyValidator("aggregateKeyType",cdk.validateString)(properties.aggregateKeyType)),errors.collect(cdk.propertyValidator("forwardedIpConfig",CfnWebACL_ForwardedIPConfigurationPropertyValidator)(properties.forwardedIpConfig)),errors.collect(cdk.propertyValidator("limit",cdk.requiredValidator)(properties.limit)),errors.collect(cdk.propertyValidator("limit",cdk.validateNumber)(properties.limit)),errors.collect(cdk.propertyValidator("scopeDownStatement",CfnWebACL_StatementPropertyValidator)(properties.scopeDownStatement)),errors.wrap('supplied properties not correct for "RateBasedStatementProperty"')}function cfnWebACLRateBasedStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RateBasedStatementPropertyValidator(properties).assertSuccess(),{AggregateKeyType:cdk.stringToCloudFormation(properties.aggregateKeyType),ForwardedIPConfig:cfnWebACLForwardedIPConfigurationPropertyToCloudFormation(properties.forwardedIpConfig),Limit:cdk.numberToCloudFormation(properties.limit),ScopeDownStatement:cfnWebACLStatementPropertyToCloudFormation(properties.scopeDownStatement)}):properties}function CfnWebACLRateBasedStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("aggregateKeyType","AggregateKeyType",cfn_parse.FromCloudFormation.getString(properties.AggregateKeyType)),ret.addPropertyResult("forwardedIpConfig","ForwardedIPConfig",properties.ForwardedIPConfig!=null?CfnWebACLForwardedIPConfigurationPropertyFromCloudFormation(properties.ForwardedIPConfig):void 0),ret.addPropertyResult("limit","Limit",cfn_parse.FromCloudFormation.getNumber(properties.Limit)),ret.addPropertyResult("scopeDownStatement","ScopeDownStatement",properties.ScopeDownStatement!=null?CfnWebACLStatementPropertyFromCloudFormation(properties.ScopeDownStatement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RegexMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("regexString",cdk.requiredValidator)(properties.regexString)),errors.collect(cdk.propertyValidator("regexString",cdk.validateString)(properties.regexString)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "RegexMatchStatementProperty"')}function cfnWebACLRegexMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RegexMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),RegexString:cdk.stringToCloudFormation(properties.regexString),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLRegexMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("regexString","RegexString",cfn_parse.FromCloudFormation.getString(properties.RegexString)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RegexPatternSetReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "RegexPatternSetReferenceStatementProperty"')}function cfnWebACLRegexPatternSetReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RegexPatternSetReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLRegexPatternSetReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RulePropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("action",CfnWebACL_RuleActionPropertyValidator)(properties.action)),errors.collect(cdk.propertyValidator("captchaConfig",CfnWebACL_CaptchaConfigPropertyValidator)(properties.captchaConfig)),errors.collect(cdk.propertyValidator("name",cdk.requiredValidator)(properties.name)),errors.collect(cdk.propertyValidator("name",cdk.validateString)(properties.name)),errors.collect(cdk.propertyValidator("overrideAction",CfnWebACL_OverrideActionPropertyValidator)(properties.overrideAction)),errors.collect(cdk.propertyValidator("priority",cdk.requiredValidator)(properties.priority)),errors.collect(cdk.propertyValidator("priority",cdk.validateNumber)(properties.priority)),errors.collect(cdk.propertyValidator("ruleLabels",cdk.listValidator(CfnWebACL_LabelPropertyValidator))(properties.ruleLabels)),errors.collect(cdk.propertyValidator("statement",cdk.requiredValidator)(properties.statement)),errors.collect(cdk.propertyValidator("statement",CfnWebACL_StatementPropertyValidator)(properties.statement)),errors.collect(cdk.propertyValidator("visibilityConfig",cdk.requiredValidator)(properties.visibilityConfig)),errors.collect(cdk.propertyValidator("visibilityConfig",CfnWebACL_VisibilityConfigPropertyValidator)(properties.visibilityConfig)),errors.wrap('supplied properties not correct for "RuleProperty"')}function cfnWebACLRulePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RulePropertyValidator(properties).assertSuccess(),{Action:cfnWebACLRuleActionPropertyToCloudFormation(properties.action),CaptchaConfig:cfnWebACLCaptchaConfigPropertyToCloudFormation(properties.captchaConfig),Name:cdk.stringToCloudFormation(properties.name),OverrideAction:cfnWebACLOverrideActionPropertyToCloudFormation(properties.overrideAction),Priority:cdk.numberToCloudFormation(properties.priority),RuleLabels:cdk.listMapper(cfnWebACLLabelPropertyToCloudFormation)(properties.ruleLabels),Statement:cfnWebACLStatementPropertyToCloudFormation(properties.statement),VisibilityConfig:cfnWebACLVisibilityConfigPropertyToCloudFormation(properties.visibilityConfig)}):properties}function CfnWebACLRulePropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("action","Action",properties.Action!=null?CfnWebACLRuleActionPropertyFromCloudFormation(properties.Action):void 0),ret.addPropertyResult("captchaConfig","CaptchaConfig",properties.CaptchaConfig!=null?CfnWebACLCaptchaConfigPropertyFromCloudFormation(properties.CaptchaConfig):void 0),ret.addPropertyResult("name","Name",cfn_parse.FromCloudFormation.getString(properties.Name)),ret.addPropertyResult("overrideAction","OverrideAction",properties.OverrideAction!=null?CfnWebACLOverrideActionPropertyFromCloudFormation(properties.OverrideAction):void 0),ret.addPropertyResult("priority","Priority",cfn_parse.FromCloudFormation.getNumber(properties.Priority)),ret.addPropertyResult("ruleLabels","RuleLabels",properties.RuleLabels!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLLabelPropertyFromCloudFormation)(properties.RuleLabels):void 0),ret.addPropertyResult("statement","Statement",CfnWebACLStatementPropertyFromCloudFormation(properties.Statement)),ret.addPropertyResult("visibilityConfig","VisibilityConfig",CfnWebACLVisibilityConfigPropertyFromCloudFormation(properties.VisibilityConfig)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RuleActionPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("allow",CfnWebACL_AllowActionPropertyValidator)(properties.allow)),errors.collect(cdk.propertyValidator("block",CfnWebACL_BlockActionPropertyValidator)(properties.block)),errors.collect(cdk.propertyValidator("captcha",CfnWebACL_CaptchaActionPropertyValidator)(properties.captcha)),errors.collect(cdk.propertyValidator("count",CfnWebACL_CountActionPropertyValidator)(properties.count)),errors.wrap('supplied properties not correct for "RuleActionProperty"')}function cfnWebACLRuleActionPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RuleActionPropertyValidator(properties).assertSuccess(),{Allow:cfnWebACLAllowActionPropertyToCloudFormation(properties.allow),Block:cfnWebACLBlockActionPropertyToCloudFormation(properties.block),Captcha:cfnWebACLCaptchaActionPropertyToCloudFormation(properties.captcha),Count:cfnWebACLCountActionPropertyToCloudFormation(properties.count)}):properties}function CfnWebACLRuleActionPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("allow","Allow",properties.Allow!=null?CfnWebACLAllowActionPropertyFromCloudFormation(properties.Allow):void 0),ret.addPropertyResult("block","Block",properties.Block!=null?CfnWebACLBlockActionPropertyFromCloudFormation(properties.Block):void 0),ret.addPropertyResult("captcha","Captcha",properties.Captcha!=null?CfnWebACLCaptchaActionPropertyFromCloudFormation(properties.Captcha):void 0),ret.addPropertyResult("count","Count",properties.Count!=null?CfnWebACLCountActionPropertyFromCloudFormation(properties.Count):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_RuleGroupReferenceStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("arn",cdk.requiredValidator)(properties.arn)),errors.collect(cdk.propertyValidator("arn",cdk.validateString)(properties.arn)),errors.collect(cdk.propertyValidator("excludedRules",cdk.listValidator(CfnWebACL_ExcludedRulePropertyValidator))(properties.excludedRules)),errors.wrap('supplied properties not correct for "RuleGroupReferenceStatementProperty"')}function cfnWebACLRuleGroupReferenceStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_RuleGroupReferenceStatementPropertyValidator(properties).assertSuccess(),{Arn:cdk.stringToCloudFormation(properties.arn),ExcludedRules:cdk.listMapper(cfnWebACLExcludedRulePropertyToCloudFormation)(properties.excludedRules)}):properties}function CfnWebACLRuleGroupReferenceStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("arn","Arn",cfn_parse.FromCloudFormation.getString(properties.Arn)),ret.addPropertyResult("excludedRules","ExcludedRules",properties.ExcludedRules!=null?cfn_parse.FromCloudFormation.getArray(CfnWebACLExcludedRulePropertyFromCloudFormation)(properties.ExcludedRules):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_SizeConstraintStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.requiredValidator)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("comparisonOperator",cdk.validateString)(properties.comparisonOperator)),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("size",cdk.requiredValidator)(properties.size)),errors.collect(cdk.propertyValidator("size",cdk.validateNumber)(properties.size)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "SizeConstraintStatementProperty"')}function cfnWebACLSizeConstraintStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_SizeConstraintStatementPropertyValidator(properties).assertSuccess(),{ComparisonOperator:cdk.stringToCloudFormation(properties.comparisonOperator),FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),Size:cdk.numberToCloudFormation(properties.size),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLSizeConstraintStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("comparisonOperator","ComparisonOperator",cfn_parse.FromCloudFormation.getString(properties.ComparisonOperator)),ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("size","Size",cfn_parse.FromCloudFormation.getNumber(properties.Size)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_SqliMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("sensitivityLevel",cdk.validateString)(properties.sensitivityLevel)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "SqliMatchStatementProperty"')}function cfnWebACLSqliMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_SqliMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),SensitivityLevel:cdk.stringToCloudFormation(properties.sensitivityLevel),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLSqliMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("sensitivityLevel","SensitivityLevel",properties.SensitivityLevel!=null?cfn_parse.FromCloudFormation.getString(properties.SensitivityLevel):void 0),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_StatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("andStatement",CfnWebACL_AndStatementPropertyValidator)(properties.andStatement)),errors.collect(cdk.propertyValidator("byteMatchStatement",CfnWebACL_ByteMatchStatementPropertyValidator)(properties.byteMatchStatement)),errors.collect(cdk.propertyValidator("geoMatchStatement",CfnWebACL_GeoMatchStatementPropertyValidator)(properties.geoMatchStatement)),errors.collect(cdk.propertyValidator("ipSetReferenceStatement",CfnWebACL_IPSetReferenceStatementPropertyValidator)(properties.ipSetReferenceStatement)),errors.collect(cdk.propertyValidator("labelMatchStatement",CfnWebACL_LabelMatchStatementPropertyValidator)(properties.labelMatchStatement)),errors.collect(cdk.propertyValidator("managedRuleGroupStatement",CfnWebACL_ManagedRuleGroupStatementPropertyValidator)(properties.managedRuleGroupStatement)),errors.collect(cdk.propertyValidator("notStatement",CfnWebACL_NotStatementPropertyValidator)(properties.notStatement)),errors.collect(cdk.propertyValidator("orStatement",CfnWebACL_OrStatementPropertyValidator)(properties.orStatement)),errors.collect(cdk.propertyValidator("rateBasedStatement",CfnWebACL_RateBasedStatementPropertyValidator)(properties.rateBasedStatement)),errors.collect(cdk.propertyValidator("regexMatchStatement",CfnWebACL_RegexMatchStatementPropertyValidator)(properties.regexMatchStatement)),errors.collect(cdk.propertyValidator("regexPatternSetReferenceStatement",CfnWebACL_RegexPatternSetReferenceStatementPropertyValidator)(properties.regexPatternSetReferenceStatement)),errors.collect(cdk.propertyValidator("ruleGroupReferenceStatement",CfnWebACL_RuleGroupReferenceStatementPropertyValidator)(properties.ruleGroupReferenceStatement)),errors.collect(cdk.propertyValidator("sizeConstraintStatement",CfnWebACL_SizeConstraintStatementPropertyValidator)(properties.sizeConstraintStatement)),errors.collect(cdk.propertyValidator("sqliMatchStatement",CfnWebACL_SqliMatchStatementPropertyValidator)(properties.sqliMatchStatement)),errors.collect(cdk.propertyValidator("xssMatchStatement",CfnWebACL_XssMatchStatementPropertyValidator)(properties.xssMatchStatement)),errors.wrap('supplied properties not correct for "StatementProperty"')}function cfnWebACLStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_StatementPropertyValidator(properties).assertSuccess(),{AndStatement:cfnWebACLAndStatementPropertyToCloudFormation(properties.andStatement),ByteMatchStatement:cfnWebACLByteMatchStatementPropertyToCloudFormation(properties.byteMatchStatement),GeoMatchStatement:cfnWebACLGeoMatchStatementPropertyToCloudFormation(properties.geoMatchStatement),IPSetReferenceStatement:cfnWebACLIPSetReferenceStatementPropertyToCloudFormation(properties.ipSetReferenceStatement),LabelMatchStatement:cfnWebACLLabelMatchStatementPropertyToCloudFormation(properties.labelMatchStatement),ManagedRuleGroupStatement:cfnWebACLManagedRuleGroupStatementPropertyToCloudFormation(properties.managedRuleGroupStatement),NotStatement:cfnWebACLNotStatementPropertyToCloudFormation(properties.notStatement),OrStatement:cfnWebACLOrStatementPropertyToCloudFormation(properties.orStatement),RateBasedStatement:cfnWebACLRateBasedStatementPropertyToCloudFormation(properties.rateBasedStatement),RegexMatchStatement:cfnWebACLRegexMatchStatementPropertyToCloudFormation(properties.regexMatchStatement),RegexPatternSetReferenceStatement:cfnWebACLRegexPatternSetReferenceStatementPropertyToCloudFormation(properties.regexPatternSetReferenceStatement),RuleGroupReferenceStatement:cfnWebACLRuleGroupReferenceStatementPropertyToCloudFormation(properties.ruleGroupReferenceStatement),SizeConstraintStatement:cfnWebACLSizeConstraintStatementPropertyToCloudFormation(properties.sizeConstraintStatement),SqliMatchStatement:cfnWebACLSqliMatchStatementPropertyToCloudFormation(properties.sqliMatchStatement),XssMatchStatement:cfnWebACLXssMatchStatementPropertyToCloudFormation(properties.xssMatchStatement)}):properties}function CfnWebACLStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("andStatement","AndStatement",properties.AndStatement!=null?CfnWebACLAndStatementPropertyFromCloudFormation(properties.AndStatement):void 0),ret.addPropertyResult("byteMatchStatement","ByteMatchStatement",properties.ByteMatchStatement!=null?CfnWebACLByteMatchStatementPropertyFromCloudFormation(properties.ByteMatchStatement):void 0),ret.addPropertyResult("geoMatchStatement","GeoMatchStatement",properties.GeoMatchStatement!=null?CfnWebACLGeoMatchStatementPropertyFromCloudFormation(properties.GeoMatchStatement):void 0),ret.addPropertyResult("ipSetReferenceStatement","IPSetReferenceStatement",properties.IPSetReferenceStatement!=null?CfnWebACLIPSetReferenceStatementPropertyFromCloudFormation(properties.IPSetReferenceStatement):void 0),ret.addPropertyResult("labelMatchStatement","LabelMatchStatement",properties.LabelMatchStatement!=null?CfnWebACLLabelMatchStatementPropertyFromCloudFormation(properties.LabelMatchStatement):void 0),ret.addPropertyResult("managedRuleGroupStatement","ManagedRuleGroupStatement",properties.ManagedRuleGroupStatement!=null?CfnWebACLManagedRuleGroupStatementPropertyFromCloudFormation(properties.ManagedRuleGroupStatement):void 0),ret.addPropertyResult("notStatement","NotStatement",properties.NotStatement!=null?CfnWebACLNotStatementPropertyFromCloudFormation(properties.NotStatement):void 0),ret.addPropertyResult("orStatement","OrStatement",properties.OrStatement!=null?CfnWebACLOrStatementPropertyFromCloudFormation(properties.OrStatement):void 0),ret.addPropertyResult("rateBasedStatement","RateBasedStatement",properties.RateBasedStatement!=null?CfnWebACLRateBasedStatementPropertyFromCloudFormation(properties.RateBasedStatement):void 0),ret.addPropertyResult("regexMatchStatement","RegexMatchStatement",properties.RegexMatchStatement!=null?CfnWebACLRegexMatchStatementPropertyFromCloudFormation(properties.RegexMatchStatement):void 0),ret.addPropertyResult("regexPatternSetReferenceStatement","RegexPatternSetReferenceStatement",properties.RegexPatternSetReferenceStatement!=null?CfnWebACLRegexPatternSetReferenceStatementPropertyFromCloudFormation(properties.RegexPatternSetReferenceStatement):void 0),ret.addPropertyResult("ruleGroupReferenceStatement","RuleGroupReferenceStatement",properties.RuleGroupReferenceStatement!=null?CfnWebACLRuleGroupReferenceStatementPropertyFromCloudFormation(properties.RuleGroupReferenceStatement):void 0),ret.addPropertyResult("sizeConstraintStatement","SizeConstraintStatement",properties.SizeConstraintStatement!=null?CfnWebACLSizeConstraintStatementPropertyFromCloudFormation(properties.SizeConstraintStatement):void 0),ret.addPropertyResult("sqliMatchStatement","SqliMatchStatement",properties.SqliMatchStatement!=null?CfnWebACLSqliMatchStatementPropertyFromCloudFormation(properties.SqliMatchStatement):void 0),ret.addPropertyResult("xssMatchStatement","XssMatchStatement",properties.XssMatchStatement!=null?CfnWebACLXssMatchStatementPropertyFromCloudFormation(properties.XssMatchStatement):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_TextTransformationPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("priority",cdk.requiredValidator)(properties.priority)),errors.collect(cdk.propertyValidator("priority",cdk.validateNumber)(properties.priority)),errors.collect(cdk.propertyValidator("type",cdk.requiredValidator)(properties.type)),errors.collect(cdk.propertyValidator("type",cdk.validateString)(properties.type)),errors.wrap('supplied properties not correct for "TextTransformationProperty"')}function cfnWebACLTextTransformationPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_TextTransformationPropertyValidator(properties).assertSuccess(),{Priority:cdk.numberToCloudFormation(properties.priority),Type:cdk.stringToCloudFormation(properties.type)}):properties}function CfnWebACLTextTransformationPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("priority","Priority",cfn_parse.FromCloudFormation.getNumber(properties.Priority)),ret.addPropertyResult("type","Type",cfn_parse.FromCloudFormation.getString(properties.Type)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_VisibilityConfigPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("cloudWatchMetricsEnabled",cdk.requiredValidator)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("cloudWatchMetricsEnabled",cdk.validateBoolean)(properties.cloudWatchMetricsEnabled)),errors.collect(cdk.propertyValidator("metricName",cdk.requiredValidator)(properties.metricName)),errors.collect(cdk.propertyValidator("metricName",cdk.validateString)(properties.metricName)),errors.collect(cdk.propertyValidator("sampledRequestsEnabled",cdk.requiredValidator)(properties.sampledRequestsEnabled)),errors.collect(cdk.propertyValidator("sampledRequestsEnabled",cdk.validateBoolean)(properties.sampledRequestsEnabled)),errors.wrap('supplied properties not correct for "VisibilityConfigProperty"')}function cfnWebACLVisibilityConfigPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_VisibilityConfigPropertyValidator(properties).assertSuccess(),{CloudWatchMetricsEnabled:cdk.booleanToCloudFormation(properties.cloudWatchMetricsEnabled),MetricName:cdk.stringToCloudFormation(properties.metricName),SampledRequestsEnabled:cdk.booleanToCloudFormation(properties.sampledRequestsEnabled)}):properties}function CfnWebACLVisibilityConfigPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("cloudWatchMetricsEnabled","CloudWatchMetricsEnabled",cfn_parse.FromCloudFormation.getBoolean(properties.CloudWatchMetricsEnabled)),ret.addPropertyResult("metricName","MetricName",cfn_parse.FromCloudFormation.getString(properties.MetricName)),ret.addPropertyResult("sampledRequestsEnabled","SampledRequestsEnabled",cfn_parse.FromCloudFormation.getBoolean(properties.SampledRequestsEnabled)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACL_XssMatchStatementPropertyValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("fieldToMatch",cdk.requiredValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("fieldToMatch",CfnWebACL_FieldToMatchPropertyValidator)(properties.fieldToMatch)),errors.collect(cdk.propertyValidator("textTransformations",cdk.requiredValidator)(properties.textTransformations)),errors.collect(cdk.propertyValidator("textTransformations",cdk.listValidator(CfnWebACL_TextTransformationPropertyValidator))(properties.textTransformations)),errors.wrap('supplied properties not correct for "XssMatchStatementProperty"')}function cfnWebACLXssMatchStatementPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACL_XssMatchStatementPropertyValidator(properties).assertSuccess(),{FieldToMatch:cfnWebACLFieldToMatchPropertyToCloudFormation(properties.fieldToMatch),TextTransformations:cdk.listMapper(cfnWebACLTextTransformationPropertyToCloudFormation)(properties.textTransformations)}):properties}function CfnWebACLXssMatchStatementPropertyFromCloudFormation(properties){if(cdk.isResolvableObject(properties))return new cfn_parse.FromCloudFormationResult(properties);if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("fieldToMatch","FieldToMatch",CfnWebACLFieldToMatchPropertyFromCloudFormation(properties.FieldToMatch)),ret.addPropertyResult("textTransformations","TextTransformations",cfn_parse.FromCloudFormation.getArray(CfnWebACLTextTransformationPropertyFromCloudFormation)(properties.TextTransformations)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnWebACLAssociationPropsValidator(properties){if(!cdk.canInspect(properties))return cdk.VALIDATION_SUCCESS;const errors=new cdk.ValidationResults;return typeof properties!="object"&&errors.collect(new cdk.ValidationResult("Expected an object, but received: "+JSON.stringify(properties))),errors.collect(cdk.propertyValidator("resourceArn",cdk.requiredValidator)(properties.resourceArn)),errors.collect(cdk.propertyValidator("resourceArn",cdk.validateString)(properties.resourceArn)),errors.collect(cdk.propertyValidator("webAclArn",cdk.requiredValidator)(properties.webAclArn)),errors.collect(cdk.propertyValidator("webAclArn",cdk.validateString)(properties.webAclArn)),errors.wrap('supplied properties not correct for "CfnWebACLAssociationProps"')}function cfnWebACLAssociationPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWebACLAssociationPropsValidator(properties).assertSuccess(),{ResourceArn:cdk.stringToCloudFormation(properties.resourceArn),WebACLArn:cdk.stringToCloudFormation(properties.webAclArn)}):properties}function CfnWebACLAssociationPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("resourceArn","ResourceArn",cfn_parse.FromCloudFormation.getString(properties.ResourceArn)),ret.addPropertyResult("webAclArn","WebACLArn",cfn_parse.FromCloudFormation.getString(properties.WebACLArn)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnWebACLAssociation extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnWebACLAssociation.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_wafv2_CfnWebACLAssociationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWebACLAssociation),error}cdk.requireProperty(props,"resourceArn",this),cdk.requireProperty(props,"webAclArn",this),this.resourceArn=props.resourceArn,this.webAclArn=props.webAclArn}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWebACLAssociationPropsFromCloudFormation(resourceProperties),ret=new CfnWebACLAssociation(scope,id,propsResult.value);for(const[propKey,propVal]of Object.entries(propsResult.extraProperties))ret.addPropertyOverride(propKey,propVal);return options.parser.handleAttributes(ret,resourceAttributes,id),ret}inspect(inspector){try{jsiiDeprecationWarnings.aws_cdk_lib_TreeInspector(inspector)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.inspect),error}inspector.addAttribute("aws:cdk:cloudformation:type",CfnWebACLAssociation.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{resourceArn:this.resourceArn,webAclArn:this.webAclArn}}renderProperties(props){return cfnWebACLAssociationPropsToCloudFormation(props)}}exports.CfnWebACLAssociation=CfnWebACLAssociation,_f=JSII_RTTI_SYMBOL_1,CfnWebACLAssociation[_f]={fqn:"aws-cdk-lib.aws_wafv2.CfnWebACLAssociation",version:"2.51.1"},CfnWebACLAssociation.CFN_RESOURCE_TYPE_NAME="AWS::WAFv2::WebACLAssociation";
|
|
2
2
|
//# sourceMappingURL=wafv2.generated.js.map
|