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.
Files changed (883) hide show
  1. package/.jsii.gz +0 -0
  2. package/alexa-ask/lib/ask.generated.js +1 -1
  3. package/assertions/lib/annotations.js +1 -1
  4. package/assertions/lib/capture.js +1 -1
  5. package/assertions/lib/match.js +1 -1
  6. package/assertions/lib/matcher.js +1 -1
  7. package/assertions/lib/template.js +1 -1
  8. package/assets/lib/staging.js +1 -1
  9. package/aws-accessanalyzer/lib/accessanalyzer.generated.js +1 -1
  10. package/aws-acmpca/lib/acmpca.generated.js +1 -1
  11. package/aws-acmpca/lib/certificate-authority.js +1 -1
  12. package/aws-amazonmq/lib/amazonmq.generated.js +1 -1
  13. package/aws-amplify/lib/amplify.generated.js +1 -1
  14. package/aws-amplifyuibuilder/lib/amplifyuibuilder.generated.js +1 -1
  15. package/aws-apigateway/lib/access-log.js +1 -1
  16. package/aws-apigateway/lib/api-definition.js +1 -1
  17. package/aws-apigateway/lib/api-key.js +1 -1
  18. package/aws-apigateway/lib/apigateway.generated.js +1 -1
  19. package/aws-apigateway/lib/apigatewayv2.js +1 -1
  20. package/aws-apigateway/lib/authorizer.js +1 -1
  21. package/aws-apigateway/lib/authorizers/cognito.js +1 -1
  22. package/aws-apigateway/lib/authorizers/identity-source.js +1 -1
  23. package/aws-apigateway/lib/authorizers/lambda.js +1 -1
  24. package/aws-apigateway/lib/base-path-mapping.js +1 -1
  25. package/aws-apigateway/lib/cors.js +1 -1
  26. package/aws-apigateway/lib/deployment.js +1 -1
  27. package/aws-apigateway/lib/domain-name.js +1 -1
  28. package/aws-apigateway/lib/gateway-response.js +1 -1
  29. package/aws-apigateway/lib/integration.js +1 -1
  30. package/aws-apigateway/lib/integrations/aws.js +1 -1
  31. package/aws-apigateway/lib/integrations/http.js +1 -1
  32. package/aws-apigateway/lib/integrations/lambda.js +1 -1
  33. package/aws-apigateway/lib/integrations/mock.js +1 -1
  34. package/aws-apigateway/lib/integrations/stepfunctions.js +1 -1
  35. package/aws-apigateway/lib/lambda-api.js +1 -1
  36. package/aws-apigateway/lib/method.js +1 -1
  37. package/aws-apigateway/lib/model.js +1 -1
  38. package/aws-apigateway/lib/requestvalidator.js +1 -1
  39. package/aws-apigateway/lib/resource.js +1 -1
  40. package/aws-apigateway/lib/restapi.js +1 -1
  41. package/aws-apigateway/lib/stage.js +1 -1
  42. package/aws-apigateway/lib/stepfunctions-api.js +1 -1
  43. package/aws-apigateway/lib/usage-plan.js +1 -1
  44. package/aws-apigateway/lib/vpc-link.js +1 -1
  45. package/aws-apigatewayv2/lib/apigatewayv2.generated.js +1 -1
  46. package/aws-appconfig/lib/appconfig.generated.js +1 -1
  47. package/aws-appflow/lib/appflow.generated.js +1 -1
  48. package/aws-appintegrations/lib/appintegrations.generated.js +1 -1
  49. package/aws-applicationautoscaling/lib/applicationautoscaling.generated.js +1 -1
  50. package/aws-applicationautoscaling/lib/base-scalable-attribute.js +1 -1
  51. package/aws-applicationautoscaling/lib/scalable-target.js +1 -1
  52. package/aws-applicationautoscaling/lib/schedule.js +1 -1
  53. package/aws-applicationautoscaling/lib/step-scaling-action.js +1 -1
  54. package/aws-applicationautoscaling/lib/step-scaling-policy.js +1 -1
  55. package/aws-applicationautoscaling/lib/target-tracking-scaling-policy.js +1 -1
  56. package/aws-applicationinsights/lib/applicationinsights.generated.js +1 -1
  57. package/aws-appmesh/lib/appmesh.generated.js +1 -1
  58. package/aws-appmesh/lib/gateway-route-spec.js +1 -1
  59. package/aws-appmesh/lib/gateway-route.js +1 -1
  60. package/aws-appmesh/lib/header-match.js +1 -1
  61. package/aws-appmesh/lib/health-checks.js +1 -1
  62. package/aws-appmesh/lib/http-route-path-match.js +1 -1
  63. package/aws-appmesh/lib/mesh.js +1 -1
  64. package/aws-appmesh/lib/query-parameter-match.js +1 -1
  65. package/aws-appmesh/lib/route-spec.js +1 -1
  66. package/aws-appmesh/lib/route.js +1 -1
  67. package/aws-appmesh/lib/service-discovery.js +1 -1
  68. package/aws-appmesh/lib/shared-interfaces.js +1 -1
  69. package/aws-appmesh/lib/tls-certificate.js +1 -1
  70. package/aws-appmesh/lib/tls-validation.js +1 -1
  71. package/aws-appmesh/lib/virtual-gateway-listener.js +1 -1
  72. package/aws-appmesh/lib/virtual-gateway.js +1 -1
  73. package/aws-appmesh/lib/virtual-node-listener.js +1 -1
  74. package/aws-appmesh/lib/virtual-node.js +1 -1
  75. package/aws-appmesh/lib/virtual-router-listener.js +1 -1
  76. package/aws-appmesh/lib/virtual-router.js +1 -1
  77. package/aws-appmesh/lib/virtual-service.js +1 -1
  78. package/aws-apprunner/lib/apprunner.generated.js +1 -1
  79. package/aws-appstream/lib/appstream.generated.js +1 -1
  80. package/aws-appsync/lib/appsync.generated.js +1 -1
  81. package/aws-aps/lib/aps.generated.js +1 -1
  82. package/aws-athena/lib/athena.generated.js +1 -1
  83. package/aws-auditmanager/lib/auditmanager.generated.js +1 -1
  84. package/aws-autoscaling/lib/aspects/require-imdsv2-aspect.js +1 -1
  85. package/aws-autoscaling/lib/auto-scaling-group.js +1 -1
  86. package/aws-autoscaling/lib/autoscaling.generated.js +1 -1
  87. package/aws-autoscaling/lib/lifecycle-hook.js +1 -1
  88. package/aws-autoscaling/lib/schedule.js +1 -1
  89. package/aws-autoscaling/lib/scheduled-action.js +1 -1
  90. package/aws-autoscaling/lib/step-scaling-action.js +1 -1
  91. package/aws-autoscaling/lib/step-scaling-policy.js +1 -1
  92. package/aws-autoscaling/lib/target-tracking-scaling-policy.js +1 -1
  93. package/aws-autoscaling/lib/volume.js +1 -1
  94. package/aws-autoscaling/lib/warm-pool.js +1 -1
  95. package/aws-autoscaling-hooktargets/lib/lambda-hook.js +1 -1
  96. package/aws-autoscaling-hooktargets/lib/queue-hook.js +1 -1
  97. package/aws-autoscaling-hooktargets/lib/topic-hook.js +1 -1
  98. package/aws-autoscalingplans/lib/autoscalingplans.generated.js +1 -1
  99. package/aws-backup/lib/backup.generated.js +1 -1
  100. package/aws-backup/lib/plan.js +1 -1
  101. package/aws-backup/lib/resource.js +1 -1
  102. package/aws-backup/lib/rule.js +1 -1
  103. package/aws-backup/lib/selection.js +1 -1
  104. package/aws-backup/lib/vault.js +1 -1
  105. package/aws-batch/lib/batch.generated.js +1 -1
  106. package/aws-billingconductor/lib/billingconductor.generated.js +1 -1
  107. package/aws-budgets/lib/budgets.generated.js +1 -1
  108. package/aws-cassandra/lib/cassandra.generated.js +1 -1
  109. package/aws-ce/lib/ce.generated.js +1 -1
  110. package/aws-certificatemanager/lib/certificate.js +1 -1
  111. package/aws-certificatemanager/lib/certificatemanager.generated.js +1 -1
  112. package/aws-certificatemanager/lib/dns-validated-certificate.js +1 -1
  113. package/aws-certificatemanager/lib/private-certificate.js +1 -1
  114. package/aws-chatbot/lib/chatbot.generated.js +1 -1
  115. package/aws-chatbot/lib/slack-channel-configuration.js +1 -1
  116. package/aws-cloud9/lib/cloud9.generated.js +1 -1
  117. package/aws-cloudformation/lib/cloudformation.generated.js +1 -1
  118. package/aws-cloudformation/lib/custom-resource.js +1 -1
  119. package/aws-cloudformation/lib/nested-stack.js +1 -1
  120. package/aws-cloudfront/lib/cache-policy.js +1 -1
  121. package/aws-cloudfront/lib/cloudfront.generated.js +1 -1
  122. package/aws-cloudfront/lib/distribution.js +1 -1
  123. package/aws-cloudfront/lib/experimental/edge-function.js +1 -1
  124. package/aws-cloudfront/lib/function.js +1 -1
  125. package/aws-cloudfront/lib/geo-restriction.js +1 -1
  126. package/aws-cloudfront/lib/key-group.js +1 -1
  127. package/aws-cloudfront/lib/origin-access-identity.js +1 -1
  128. package/aws-cloudfront/lib/origin-request-policy.js +1 -1
  129. package/aws-cloudfront/lib/origin.js +1 -1
  130. package/aws-cloudfront/lib/public-key.js +1 -1
  131. package/aws-cloudfront/lib/response-headers-policy.js +1 -1
  132. package/aws-cloudfront/lib/web-distribution.js +2 -2
  133. package/aws-cloudfront-origins/lib/http-origin.js +1 -1
  134. package/aws-cloudfront-origins/lib/load-balancer-origin.js +1 -1
  135. package/aws-cloudfront-origins/lib/origin-group.js +1 -1
  136. package/aws-cloudfront-origins/lib/rest-api-origin.js +1 -1
  137. package/aws-cloudfront-origins/lib/s3-origin.js +1 -1
  138. package/aws-cloudtrail/lib/cloudtrail.generated.js +1 -1
  139. package/aws-cloudtrail/lib/cloudtrail.js +1 -1
  140. package/aws-cloudwatch/lib/alarm-base.js +1 -1
  141. package/aws-cloudwatch/lib/alarm-rule.js +1 -1
  142. package/aws-cloudwatch/lib/alarm-status-widget.js +1 -1
  143. package/aws-cloudwatch/lib/alarm.js +1 -1
  144. package/aws-cloudwatch/lib/cloudwatch.generated.js +1 -1
  145. package/aws-cloudwatch/lib/composite-alarm.js +1 -1
  146. package/aws-cloudwatch/lib/dashboard.js +1 -1
  147. package/aws-cloudwatch/lib/graph.js +1 -1
  148. package/aws-cloudwatch/lib/layout.js +1 -1
  149. package/aws-cloudwatch/lib/log-query.js +1 -1
  150. package/aws-cloudwatch/lib/metric.js +1 -1
  151. package/aws-cloudwatch/lib/text.js +1 -1
  152. package/aws-cloudwatch/lib/widget.js +1 -1
  153. package/aws-cloudwatch-actions/lib/appscaling.js +1 -1
  154. package/aws-cloudwatch-actions/lib/autoscaling.js +1 -1
  155. package/aws-cloudwatch-actions/lib/ec2.js +1 -1
  156. package/aws-cloudwatch-actions/lib/sns.js +1 -1
  157. package/aws-cloudwatch-actions/lib/ssm.js +1 -1
  158. package/aws-codeartifact/lib/codeartifact.generated.js +1 -1
  159. package/aws-codebuild/lib/artifacts.js +1 -1
  160. package/aws-codebuild/lib/build-spec.js +1 -1
  161. package/aws-codebuild/lib/cache.js +1 -1
  162. package/aws-codebuild/lib/codebuild.generated.js +1 -1
  163. package/aws-codebuild/lib/events.js +1 -1
  164. package/aws-codebuild/lib/file-location.js +1 -1
  165. package/aws-codebuild/lib/linux-arm-build-image.js +1 -1
  166. package/aws-codebuild/lib/linux-gpu-build-image.js +1 -1
  167. package/aws-codebuild/lib/pipeline-project.js +1 -1
  168. package/aws-codebuild/lib/project.js +1 -1
  169. package/aws-codebuild/lib/report-group.js +1 -1
  170. package/aws-codebuild/lib/source-credentials.js +1 -1
  171. package/aws-codebuild/lib/source.js +1 -1
  172. package/aws-codebuild/lib/untrusted-code-boundary-policy.js +1 -1
  173. package/aws-codecommit/lib/code.js +1 -1
  174. package/aws-codecommit/lib/codecommit.generated.js +1 -1
  175. package/aws-codecommit/lib/events.js +1 -1
  176. package/aws-codecommit/lib/repository.js +1 -1
  177. package/aws-codedeploy/lib/base-deployment-config.js +1 -1
  178. package/aws-codedeploy/lib/codedeploy.generated.js +1 -1
  179. package/aws-codedeploy/lib/ecs/application.js +1 -1
  180. package/aws-codedeploy/lib/ecs/deployment-config.js +1 -1
  181. package/aws-codedeploy/lib/ecs/deployment-group.js +1 -1
  182. package/aws-codedeploy/lib/host-health-config.js +1 -1
  183. package/aws-codedeploy/lib/lambda/application.js +1 -1
  184. package/aws-codedeploy/lib/lambda/custom-deployment-config.js +1 -1
  185. package/aws-codedeploy/lib/lambda/deployment-config.js +1 -1
  186. package/aws-codedeploy/lib/lambda/deployment-group.js +1 -1
  187. package/aws-codedeploy/lib/server/application.js +1 -1
  188. package/aws-codedeploy/lib/server/deployment-config.js +1 -1
  189. package/aws-codedeploy/lib/server/deployment-group.js +1 -1
  190. package/aws-codedeploy/lib/server/load-balancer.js +1 -1
  191. package/aws-codedeploy/lib/traffic-routing-config.js +1 -1
  192. package/aws-codeguruprofiler/lib/codeguruprofiler.generated.js +1 -1
  193. package/aws-codeguruprofiler/lib/profiling-group.js +1 -1
  194. package/aws-codegurureviewer/lib/codegurureviewer.generated.js +1 -1
  195. package/aws-codepipeline/lib/action.js +1 -1
  196. package/aws-codepipeline/lib/artifact.js +1 -1
  197. package/aws-codepipeline/lib/codepipeline.generated.js +1 -1
  198. package/aws-codepipeline/lib/custom-action-registration.js +1 -1
  199. package/aws-codepipeline/lib/pipeline.js +1 -1
  200. package/aws-codepipeline-actions/lib/action.js +1 -1
  201. package/aws-codepipeline-actions/lib/alexa-ask/deploy-action.js +1 -1
  202. package/aws-codepipeline-actions/lib/bitbucket/source-action.js +1 -1
  203. package/aws-codepipeline-actions/lib/cloudformation/pipeline-actions.js +1 -1
  204. package/aws-codepipeline-actions/lib/cloudformation/stackinstances-action.js +1 -1
  205. package/aws-codepipeline-actions/lib/cloudformation/stackset-action.js +1 -1
  206. package/aws-codepipeline-actions/lib/cloudformation/stackset-types.js +1 -1
  207. package/aws-codepipeline-actions/lib/codebuild/build-action.js +1 -1
  208. package/aws-codepipeline-actions/lib/codecommit/source-action.js +1 -1
  209. package/aws-codepipeline-actions/lib/codedeploy/ecs-deploy-action.js +1 -1
  210. package/aws-codepipeline-actions/lib/codedeploy/server-deploy-action.js +1 -1
  211. package/aws-codepipeline-actions/lib/codestar-connections/source-action.js +1 -1
  212. package/aws-codepipeline-actions/lib/ecr/source-action.js +1 -1
  213. package/aws-codepipeline-actions/lib/ecs/deploy-action.js +1 -1
  214. package/aws-codepipeline-actions/lib/elastic-beanstalk/deploy-action.js +1 -1
  215. package/aws-codepipeline-actions/lib/github/source-action.js +1 -1
  216. package/aws-codepipeline-actions/lib/jenkins/jenkins-action.js +1 -1
  217. package/aws-codepipeline-actions/lib/jenkins/jenkins-provider.js +1 -1
  218. package/aws-codepipeline-actions/lib/lambda/invoke-action.js +1 -1
  219. package/aws-codepipeline-actions/lib/manual-approval-action.js +1 -1
  220. package/aws-codepipeline-actions/lib/s3/deploy-action.js +1 -1
  221. package/aws-codepipeline-actions/lib/s3/source-action.js +1 -1
  222. package/aws-codepipeline-actions/lib/servicecatalog/deploy-action-beta1.js +1 -1
  223. package/aws-codepipeline-actions/lib/stepfunctions/invoke-action.js +1 -1
  224. package/aws-codestar/lib/codestar.generated.js +1 -1
  225. package/aws-codestarconnections/lib/codestarconnections.generated.js +1 -1
  226. package/aws-codestarnotifications/lib/codestarnotifications.generated.js +1 -1
  227. package/aws-codestarnotifications/lib/notification-rule.js +1 -1
  228. package/aws-cognito/lib/cognito.generated.js +1 -1
  229. package/aws-cognito/lib/user-pool-attr.js +1 -1
  230. package/aws-cognito/lib/user-pool-client.js +1 -1
  231. package/aws-cognito/lib/user-pool-domain.js +1 -1
  232. package/aws-cognito/lib/user-pool-email.js +1 -1
  233. package/aws-cognito/lib/user-pool-idp.js +1 -1
  234. package/aws-cognito/lib/user-pool-idps/amazon.js +1 -1
  235. package/aws-cognito/lib/user-pool-idps/apple.js +1 -1
  236. package/aws-cognito/lib/user-pool-idps/base.js +1 -1
  237. package/aws-cognito/lib/user-pool-idps/facebook.js +1 -1
  238. package/aws-cognito/lib/user-pool-idps/google.js +1 -1
  239. package/aws-cognito/lib/user-pool-idps/oidc.js +1 -1
  240. package/aws-cognito/lib/user-pool-idps/saml.js +1 -1
  241. package/aws-cognito/lib/user-pool-resource-server.js +1 -1
  242. package/aws-cognito/lib/user-pool.js +1 -1
  243. package/aws-config/lib/config.generated.js +1 -1
  244. package/aws-config/lib/managed-rules.js +1 -1
  245. package/aws-config/lib/rule.js +1 -1
  246. package/aws-connect/lib/connect.generated.js +1 -1
  247. package/aws-connectcampaigns/lib/connectcampaigns.generated.js +1 -1
  248. package/aws-controltower/lib/controltower.generated.js +1 -1
  249. package/aws-cur/lib/cur.generated.js +1 -1
  250. package/aws-customerprofiles/lib/customerprofiles.generated.js +1 -1
  251. package/aws-databrew/lib/databrew.generated.js +1 -1
  252. package/aws-datapipeline/lib/datapipeline.generated.js +1 -1
  253. package/aws-datasync/lib/datasync.generated.js +1 -1
  254. package/aws-dax/lib/dax.generated.js +1 -1
  255. package/aws-detective/lib/detective.generated.js +1 -1
  256. package/aws-devopsguru/lib/devopsguru.generated.js +1 -1
  257. package/aws-directoryservice/lib/directoryservice.generated.js +1 -1
  258. package/aws-dlm/lib/dlm.generated.js +1 -1
  259. package/aws-dms/lib/dms.generated.js +1 -1
  260. package/aws-docdb/lib/cluster.js +1 -1
  261. package/aws-docdb/lib/database-secret.js +1 -1
  262. package/aws-docdb/lib/docdb.generated.js +1 -1
  263. package/aws-docdb/lib/endpoint.js +1 -1
  264. package/aws-docdb/lib/instance.js +1 -1
  265. package/aws-docdb/lib/parameter-group.js +1 -1
  266. package/aws-dynamodb/lib/dynamodb.generated.js +1 -1
  267. package/aws-dynamodb/lib/table.js +1 -1
  268. package/aws-ec2/lib/aspects/require-imdsv2-aspect.js +1 -1
  269. package/aws-ec2/lib/bastion-host.js +1 -1
  270. package/aws-ec2/lib/cfn-init-elements.js +1 -1
  271. package/aws-ec2/lib/cfn-init.js +1 -1
  272. package/aws-ec2/lib/client-vpn-authorization-rule.js +1 -1
  273. package/aws-ec2/lib/client-vpn-endpoint.js +1 -1
  274. package/aws-ec2/lib/client-vpn-route.js +1 -1
  275. package/aws-ec2/lib/connections.js +1 -1
  276. package/aws-ec2/lib/ec2.generated.js +1 -1
  277. package/aws-ec2/lib/instance-types.js +1 -1
  278. package/aws-ec2/lib/instance.js +1 -1
  279. package/aws-ec2/lib/ip-addresses.js +1 -1
  280. package/aws-ec2/lib/launch-template.js +1 -1
  281. package/aws-ec2/lib/machine-image.js +1 -1
  282. package/aws-ec2/lib/nat.js +1 -1
  283. package/aws-ec2/lib/network-acl-types.js +1 -1
  284. package/aws-ec2/lib/network-acl.js +1 -1
  285. package/aws-ec2/lib/peer.js +1 -1
  286. package/aws-ec2/lib/port.js +1 -1
  287. package/aws-ec2/lib/security-group.js +1 -1
  288. package/aws-ec2/lib/subnet.js +1 -1
  289. package/aws-ec2/lib/user-data.js +3 -3
  290. package/aws-ec2/lib/volume.js +1 -1
  291. package/aws-ec2/lib/vpc-endpoint-service.js +1 -1
  292. package/aws-ec2/lib/vpc-endpoint.js +1 -1
  293. package/aws-ec2/lib/vpc-flow-logs.js +1 -1
  294. package/aws-ec2/lib/vpc.js +1 -1
  295. package/aws-ec2/lib/vpn.js +1 -1
  296. package/aws-ecr/lib/auth-token.js +1 -1
  297. package/aws-ecr/lib/ecr.generated.js +1 -1
  298. package/aws-ecr/lib/repository.js +1 -1
  299. package/aws-ecr-assets/lib/image-asset.js +2 -2
  300. package/aws-ecr-assets/lib/tarball-asset.js +1 -1
  301. package/aws-ecs/lib/amis.js +1 -1
  302. package/aws-ecs/lib/base/base-service.js +1 -1
  303. package/aws-ecs/lib/base/scalable-task-count.js +1 -1
  304. package/aws-ecs/lib/base/task-definition.js +1 -1
  305. package/aws-ecs/lib/cluster.js +1 -1
  306. package/aws-ecs/lib/container-definition.js +1 -1
  307. package/aws-ecs/lib/container-image.js +1 -1
  308. package/aws-ecs/lib/ec2/ec2-service.js +1 -1
  309. package/aws-ecs/lib/ec2/ec2-task-definition.js +1 -1
  310. package/aws-ecs/lib/ecs.generated.js +1 -1
  311. package/aws-ecs/lib/environment-file.js +1 -1
  312. package/aws-ecs/lib/external/external-service.js +1 -1
  313. package/aws-ecs/lib/external/external-task-definition.js +1 -1
  314. package/aws-ecs/lib/fargate/fargate-service.js +1 -1
  315. package/aws-ecs/lib/fargate/fargate-task-definition.js +1 -1
  316. package/aws-ecs/lib/firelens-log-router.js +1 -1
  317. package/aws-ecs/lib/images/asset-image.js +1 -1
  318. package/aws-ecs/lib/images/ecr.js +1 -1
  319. package/aws-ecs/lib/images/repository.js +1 -1
  320. package/aws-ecs/lib/images/tag-parameter-container-image.js +1 -1
  321. package/aws-ecs/lib/linux-parameters.js +1 -1
  322. package/aws-ecs/lib/log-drivers/aws-log-driver.js +1 -1
  323. package/aws-ecs/lib/log-drivers/firelens-log-driver.js +1 -1
  324. package/aws-ecs/lib/log-drivers/fluentd-log-driver.js +1 -1
  325. package/aws-ecs/lib/log-drivers/gelf-log-driver.js +1 -1
  326. package/aws-ecs/lib/log-drivers/generic-log-driver.js +1 -1
  327. package/aws-ecs/lib/log-drivers/journald-log-driver.js +1 -1
  328. package/aws-ecs/lib/log-drivers/json-file-log-driver.js +1 -1
  329. package/aws-ecs/lib/log-drivers/log-driver.js +1 -1
  330. package/aws-ecs/lib/log-drivers/log-drivers.js +1 -1
  331. package/aws-ecs/lib/log-drivers/splunk-log-driver.js +1 -1
  332. package/aws-ecs/lib/log-drivers/syslog-log-driver.js +1 -1
  333. package/aws-ecs/lib/placement.js +1 -1
  334. package/aws-ecs/lib/proxy-configuration/app-mesh-proxy-configuration.js +1 -1
  335. package/aws-ecs/lib/proxy-configuration/proxy-configuration.js +1 -1
  336. package/aws-ecs/lib/proxy-configuration/proxy-configurations.js +1 -1
  337. package/aws-ecs/lib/runtime-platform.js +1 -1
  338. package/aws-ecs-patterns/lib/base/application-load-balanced-service-base.js +1 -1
  339. package/aws-ecs-patterns/lib/base/application-multiple-target-groups-service-base.js +1 -1
  340. package/aws-ecs-patterns/lib/base/network-load-balanced-service-base.js +1 -1
  341. package/aws-ecs-patterns/lib/base/network-multiple-target-groups-service-base.js +1 -1
  342. package/aws-ecs-patterns/lib/base/queue-processing-service-base.js +1 -1
  343. package/aws-ecs-patterns/lib/base/scheduled-task-base.js +1 -1
  344. package/aws-ecs-patterns/lib/ecs/application-load-balanced-ecs-service.js +1 -1
  345. package/aws-ecs-patterns/lib/ecs/application-multiple-target-groups-ecs-service.js +1 -1
  346. package/aws-ecs-patterns/lib/ecs/network-load-balanced-ecs-service.js +1 -1
  347. package/aws-ecs-patterns/lib/ecs/network-multiple-target-groups-ecs-service.js +1 -1
  348. package/aws-ecs-patterns/lib/ecs/queue-processing-ecs-service.js +1 -1
  349. package/aws-ecs-patterns/lib/ecs/scheduled-ecs-task.js +1 -1
  350. package/aws-ecs-patterns/lib/fargate/application-load-balanced-fargate-service.js +1 -1
  351. package/aws-ecs-patterns/lib/fargate/application-multiple-target-groups-fargate-service.js +1 -1
  352. package/aws-ecs-patterns/lib/fargate/network-load-balanced-fargate-service.js +1 -1
  353. package/aws-ecs-patterns/lib/fargate/network-multiple-target-groups-fargate-service.js +1 -1
  354. package/aws-ecs-patterns/lib/fargate/queue-processing-fargate-service.js +1 -1
  355. package/aws-ecs-patterns/lib/fargate/scheduled-fargate-task.js +1 -1
  356. package/aws-efs/lib/access-point.js +1 -1
  357. package/aws-efs/lib/efs-file-system.js +1 -1
  358. package/aws-efs/lib/efs.generated.js +1 -1
  359. package/aws-eks/lib/alb-controller.js +1 -1
  360. package/aws-eks/lib/aws-auth.js +1 -1
  361. package/aws-eks/lib/cluster.js +1 -1
  362. package/aws-eks/lib/eks.generated.js +1 -1
  363. package/aws-eks/lib/fargate-cluster.js +1 -1
  364. package/aws-eks/lib/fargate-profile.js +1 -1
  365. package/aws-eks/lib/helm-chart.js +1 -1
  366. package/aws-eks/lib/k8s-manifest.js +1 -1
  367. package/aws-eks/lib/k8s-object-value.js +1 -1
  368. package/aws-eks/lib/k8s-patch.js +1 -1
  369. package/aws-eks/lib/kubectl-provider.js +1 -1
  370. package/aws-eks/lib/managed-nodegroup.js +1 -1
  371. package/aws-eks/lib/oidc-provider.js +1 -1
  372. package/aws-eks/lib/service-account.js +1 -1
  373. package/aws-elasticache/lib/elasticache.generated.js +1 -1
  374. package/aws-elasticbeanstalk/lib/elasticbeanstalk.generated.js +1 -1
  375. package/aws-elasticloadbalancing/lib/elasticloadbalancing.generated.js +1 -1
  376. package/aws-elasticloadbalancing/lib/load-balancer.js +1 -1
  377. package/aws-elasticloadbalancingv2/lib/alb/application-listener-action.js +1 -1
  378. package/aws-elasticloadbalancingv2/lib/alb/application-listener-certificate.js +1 -1
  379. package/aws-elasticloadbalancingv2/lib/alb/application-listener-rule.js +1 -1
  380. package/aws-elasticloadbalancingv2/lib/alb/application-listener.js +1 -1
  381. package/aws-elasticloadbalancingv2/lib/alb/application-load-balancer.js +1 -1
  382. package/aws-elasticloadbalancingv2/lib/alb/application-target-group.js +1 -1
  383. package/aws-elasticloadbalancingv2/lib/alb/conditions.js +1 -1
  384. package/aws-elasticloadbalancingv2/lib/elasticloadbalancingv2.generated.js +1 -1
  385. package/aws-elasticloadbalancingv2/lib/nlb/network-listener-action.js +1 -1
  386. package/aws-elasticloadbalancingv2/lib/nlb/network-listener.js +1 -1
  387. package/aws-elasticloadbalancingv2/lib/nlb/network-load-balancer.js +1 -1
  388. package/aws-elasticloadbalancingv2/lib/nlb/network-target-group.js +1 -1
  389. package/aws-elasticloadbalancingv2/lib/shared/base-listener.js +1 -1
  390. package/aws-elasticloadbalancingv2/lib/shared/base-load-balancer.js +1 -1
  391. package/aws-elasticloadbalancingv2/lib/shared/base-target-group.js +1 -1
  392. package/aws-elasticloadbalancingv2/lib/shared/listener-certificate.js +1 -1
  393. package/aws-elasticloadbalancingv2/lib/shared/load-balancer-targets.js +1 -1
  394. package/aws-elasticloadbalancingv2-actions/lib/cognito-action.js +1 -1
  395. package/aws-elasticloadbalancingv2-targets/lib/alb-target.js +1 -1
  396. package/aws-elasticloadbalancingv2-targets/lib/instance-target.js +1 -1
  397. package/aws-elasticloadbalancingv2-targets/lib/ip-target.js +1 -1
  398. package/aws-elasticloadbalancingv2-targets/lib/lambda-target.js +1 -1
  399. package/aws-elasticsearch/lib/domain.js +1 -1
  400. package/aws-elasticsearch/lib/elasticsearch.generated.js +1 -1
  401. package/aws-emr/lib/emr.generated.js +1 -1
  402. package/aws-emrcontainers/lib/emrcontainers.generated.js +1 -1
  403. package/aws-emrserverless/lib/emrserverless.generated.js +1 -1
  404. package/aws-events/lib/api-destination.js +1 -1
  405. package/aws-events/lib/archive.js +1 -1
  406. package/aws-events/lib/connection.js +1 -1
  407. package/aws-events/lib/event-bus.js +1 -1
  408. package/aws-events/lib/event-pattern.js +1 -1
  409. package/aws-events/lib/events.generated.js +1 -1
  410. package/aws-events/lib/input.js +2 -2
  411. package/aws-events/lib/rule.js +1 -1
  412. package/aws-events/lib/schedule.js +1 -1
  413. package/aws-events-targets/lib/api-destination.js +1 -1
  414. package/aws-events-targets/lib/api-gateway.js +1 -1
  415. package/aws-events-targets/lib/aws-api.js +1 -1
  416. package/aws-events-targets/lib/batch.js +1 -1
  417. package/aws-events-targets/lib/codebuild.js +1 -1
  418. package/aws-events-targets/lib/codepipeline.js +1 -1
  419. package/aws-events-targets/lib/ecs-task.js +1 -1
  420. package/aws-events-targets/lib/event-bus.js +1 -1
  421. package/aws-events-targets/lib/kinesis-firehose-stream.js +1 -1
  422. package/aws-events-targets/lib/kinesis-stream.js +1 -1
  423. package/aws-events-targets/lib/lambda.js +1 -1
  424. package/aws-events-targets/lib/log-group.js +2 -2
  425. package/aws-events-targets/lib/sns.js +1 -1
  426. package/aws-events-targets/lib/sqs.js +1 -1
  427. package/aws-events-targets/lib/state-machine.js +1 -1
  428. package/aws-eventschemas/lib/eventschemas.generated.js +1 -1
  429. package/aws-evidently/lib/evidently.generated.js +1 -1
  430. package/aws-finspace/lib/finspace.generated.js +1 -1
  431. package/aws-fis/lib/fis.generated.js +1 -1
  432. package/aws-fms/lib/fms.generated.js +1 -1
  433. package/aws-forecast/lib/forecast.generated.js +1 -1
  434. package/aws-frauddetector/lib/frauddetector.generated.js +1 -1
  435. package/aws-fsx/lib/file-system.js +1 -1
  436. package/aws-fsx/lib/fsx.generated.js +1 -1
  437. package/aws-fsx/lib/lustre-file-system.js +1 -1
  438. package/aws-fsx/lib/maintenance-time.js +1 -1
  439. package/aws-gamelift/lib/gamelift.generated.js +1 -1
  440. package/aws-globalaccelerator/lib/accelerator.js +1 -1
  441. package/aws-globalaccelerator/lib/endpoint-group.js +1 -1
  442. package/aws-globalaccelerator/lib/endpoint.js +1 -1
  443. package/aws-globalaccelerator/lib/globalaccelerator.generated.js +1 -1
  444. package/aws-globalaccelerator/lib/listener.js +1 -1
  445. package/aws-globalaccelerator-endpoints/lib/alb.js +1 -1
  446. package/aws-globalaccelerator-endpoints/lib/eip.js +1 -1
  447. package/aws-globalaccelerator-endpoints/lib/instance.js +1 -1
  448. package/aws-globalaccelerator-endpoints/lib/nlb.js +1 -1
  449. package/aws-glue/lib/glue.generated.js +1 -1
  450. package/aws-greengrass/lib/greengrass.generated.js +1 -1
  451. package/aws-greengrassv2/lib/greengrassv2.generated.js +1 -1
  452. package/aws-groundstation/lib/groundstation.generated.js +1 -1
  453. package/aws-guardduty/lib/guardduty.generated.js +1 -1
  454. package/aws-healthlake/lib/healthlake.generated.js +1 -1
  455. package/aws-iam/lib/access-key.js +1 -1
  456. package/aws-iam/lib/grant.js +1 -1
  457. package/aws-iam/lib/group.js +1 -1
  458. package/aws-iam/lib/iam.generated.js +1 -1
  459. package/aws-iam/lib/lazy-role.js +1 -1
  460. package/aws-iam/lib/managed-policy.js +1 -1
  461. package/aws-iam/lib/oidc-provider.js +1 -1
  462. package/aws-iam/lib/permissions-boundary.js +1 -1
  463. package/aws-iam/lib/policy-document.js +1 -1
  464. package/aws-iam/lib/policy-statement.js +1 -1
  465. package/aws-iam/lib/policy.js +1 -1
  466. package/aws-iam/lib/principals.js +1 -1
  467. package/aws-iam/lib/role.js +1 -1
  468. package/aws-iam/lib/saml-provider.js +1 -1
  469. package/aws-iam/lib/unknown-principal.js +1 -1
  470. package/aws-iam/lib/user.js +1 -1
  471. package/aws-identitystore/lib/identitystore.generated.js +1 -1
  472. package/aws-imagebuilder/lib/imagebuilder.generated.js +1 -1
  473. package/aws-inspector/lib/inspector.generated.js +1 -1
  474. package/aws-inspectorv2/lib/inspectorv2.generated.js +1 -1
  475. package/aws-iot/lib/iot.generated.js +1 -1
  476. package/aws-iot1click/lib/iot1click.generated.js +1 -1
  477. package/aws-iotanalytics/lib/iotanalytics.generated.js +1 -1
  478. package/aws-iotcoredeviceadvisor/lib/iotcoredeviceadvisor.generated.js +1 -1
  479. package/aws-iotevents/lib/iotevents.generated.js +1 -1
  480. package/aws-iotfleethub/lib/iotfleethub.generated.js +1 -1
  481. package/aws-iotfleetwise/lib/iotfleetwise.generated.js +1 -1
  482. package/aws-iotsitewise/lib/iotsitewise.generated.js +1 -1
  483. package/aws-iotthingsgraph/lib/iotthingsgraph.generated.js +1 -1
  484. package/aws-iottwinmaker/lib/iottwinmaker.generated.js +1 -1
  485. package/aws-iotwireless/lib/iotwireless.generated.js +1 -1
  486. package/aws-ivs/lib/ivs.generated.js +1 -1
  487. package/aws-kafkaconnect/lib/kafkaconnect.generated.js +1 -1
  488. package/aws-kendra/lib/kendra.generated.js +1 -1
  489. package/aws-kinesis/lib/kinesis.generated.js +1 -1
  490. package/aws-kinesis/lib/stream.js +1 -1
  491. package/aws-kinesisanalytics/lib/kinesisanalytics.generated.js +1 -1
  492. package/aws-kinesisanalytics/lib/kinesisanalyticsv2.generated.js +1 -1
  493. package/aws-kinesisanalyticsv2/lib/kinesisanalyticsv2.generated.js +1 -1
  494. package/aws-kinesisfirehose/lib/kinesisfirehose.generated.js +1 -1
  495. package/aws-kinesisvideo/lib/kinesisvideo.generated.js +1 -1
  496. package/aws-kms/lib/alias.js +1 -1
  497. package/aws-kms/lib/key.js +1 -1
  498. package/aws-kms/lib/kms.generated.js +1 -1
  499. package/aws-kms/lib/via-service-principal.js +1 -1
  500. package/aws-lakeformation/lib/lakeformation.generated.js +1 -1
  501. package/aws-lambda/lib/alias.js +1 -1
  502. package/aws-lambda/lib/architecture.js +1 -1
  503. package/aws-lambda/lib/code-signing-config.js +1 -1
  504. package/aws-lambda/lib/code.js +1 -1
  505. package/aws-lambda/lib/event-invoke-config.js +1 -1
  506. package/aws-lambda/lib/event-source-filter.js +1 -1
  507. package/aws-lambda/lib/event-source-mapping.js +1 -1
  508. package/aws-lambda/lib/filesystem.js +1 -1
  509. package/aws-lambda/lib/function-base.js +1 -1
  510. package/aws-lambda/lib/function-url.js +1 -1
  511. package/aws-lambda/lib/function.js +1 -1
  512. package/aws-lambda/lib/handler.js +1 -1
  513. package/aws-lambda/lib/image-function.js +1 -1
  514. package/aws-lambda/lib/lambda-insights.js +1 -1
  515. package/aws-lambda/lib/lambda-version.js +1 -1
  516. package/aws-lambda/lib/lambda.generated.js +1 -1
  517. package/aws-lambda/lib/layers.js +1 -1
  518. package/aws-lambda/lib/log-retention.js +1 -1
  519. package/aws-lambda/lib/runtime.js +1 -1
  520. package/aws-lambda/lib/singleton-lambda.js +1 -1
  521. package/aws-lambda-destinations/lib/event-bridge.js +1 -1
  522. package/aws-lambda-destinations/lib/lambda.js +1 -1
  523. package/aws-lambda-destinations/lib/sns.js +1 -1
  524. package/aws-lambda-destinations/lib/sqs.js +1 -1
  525. package/aws-lambda-event-sources/lib/api.js +1 -1
  526. package/aws-lambda-event-sources/lib/dynamodb.js +1 -1
  527. package/aws-lambda-event-sources/lib/kafka.js +1 -1
  528. package/aws-lambda-event-sources/lib/kinesis.js +1 -1
  529. package/aws-lambda-event-sources/lib/s3.js +1 -1
  530. package/aws-lambda-event-sources/lib/sns-dlq.js +1 -1
  531. package/aws-lambda-event-sources/lib/sns.js +1 -1
  532. package/aws-lambda-event-sources/lib/sqs-dlq.js +1 -1
  533. package/aws-lambda-event-sources/lib/sqs.js +1 -1
  534. package/aws-lambda-event-sources/lib/stream.js +1 -1
  535. package/aws-lambda-nodejs/lib/function.js +1 -1
  536. package/aws-lex/lib/lex.generated.js +1 -1
  537. package/aws-licensemanager/lib/licensemanager.generated.js +1 -1
  538. package/aws-lightsail/lib/lightsail.generated.js +1 -1
  539. package/aws-location/lib/location.generated.js +1 -1
  540. package/aws-logs/lib/cross-account-destination.js +1 -1
  541. package/aws-logs/lib/log-group.js +1 -1
  542. package/aws-logs/lib/log-retention.js +1 -1
  543. package/aws-logs/lib/log-stream.js +1 -1
  544. package/aws-logs/lib/logs.generated.js +1 -1
  545. package/aws-logs/lib/metric-filter.js +1 -1
  546. package/aws-logs/lib/pattern.js +1 -1
  547. package/aws-logs/lib/policy.js +1 -1
  548. package/aws-logs/lib/query-definition.js +1 -1
  549. package/aws-logs/lib/subscription-filter.js +1 -1
  550. package/aws-logs-destinations/lib/kinesis.js +1 -1
  551. package/aws-logs-destinations/lib/lambda.js +1 -1
  552. package/aws-lookoutequipment/lib/lookoutequipment.generated.js +1 -1
  553. package/aws-lookoutmetrics/lib/lookoutmetrics.generated.js +1 -1
  554. package/aws-lookoutvision/lib/lookoutvision.generated.js +1 -1
  555. package/aws-m2/lib/m2.generated.js +1 -1
  556. package/aws-macie/lib/macie.generated.js +1 -1
  557. package/aws-managedblockchain/lib/managedblockchain.generated.js +1 -1
  558. package/aws-mediaconnect/lib/mediaconnect.generated.js +1 -1
  559. package/aws-mediaconvert/lib/mediaconvert.generated.js +1 -1
  560. package/aws-medialive/lib/medialive.generated.js +1 -1
  561. package/aws-mediapackage/lib/mediapackage.generated.js +1 -1
  562. package/aws-mediastore/lib/mediastore.generated.js +1 -1
  563. package/aws-mediatailor/lib/mediatailor.generated.js +1 -1
  564. package/aws-memorydb/lib/memorydb.generated.js +1 -1
  565. package/aws-msk/lib/msk.generated.js +1 -1
  566. package/aws-mwaa/lib/mwaa.generated.js +1 -1
  567. package/aws-neptune/lib/neptune.generated.js +1 -1
  568. package/aws-networkfirewall/lib/networkfirewall.generated.js +1 -1
  569. package/aws-networkmanager/lib/networkmanager.generated.js +1 -1
  570. package/aws-nimblestudio/lib/nimblestudio.generated.js +1 -1
  571. package/aws-opensearchservice/lib/domain.js +1 -1
  572. package/aws-opensearchservice/lib/opensearchservice.generated.js +1 -1
  573. package/aws-opensearchservice/lib/version.js +1 -1
  574. package/aws-opsworks/lib/opsworks.generated.js +1 -1
  575. package/aws-opsworkscm/lib/opsworkscm.generated.js +1 -1
  576. package/aws-organizations/lib/organizations.generated.js +1 -1
  577. package/aws-panorama/lib/panorama.generated.js +1 -1
  578. package/aws-personalize/lib/personalize.generated.js +1 -1
  579. package/aws-pinpoint/lib/pinpoint.generated.js +1 -1
  580. package/aws-pinpointemail/lib/pinpointemail.generated.js +1 -1
  581. package/aws-qldb/lib/qldb.generated.js +1 -1
  582. package/aws-quicksight/lib/quicksight.generated.js +1 -1
  583. package/aws-ram/lib/ram.generated.js +1 -1
  584. package/aws-rds/lib/cluster-engine.js +1 -1
  585. package/aws-rds/lib/cluster.js +1 -1
  586. package/aws-rds/lib/database-secret.js +1 -1
  587. package/aws-rds/lib/endpoint.js +1 -1
  588. package/aws-rds/lib/instance-engine.js +1 -1
  589. package/aws-rds/lib/instance.js +1 -1
  590. package/aws-rds/lib/option-group.js +1 -1
  591. package/aws-rds/lib/parameter-group.js +1 -1
  592. package/aws-rds/lib/props.js +1 -1
  593. package/aws-rds/lib/proxy.js +1 -1
  594. package/aws-rds/lib/rds.generated.js +1 -1
  595. package/aws-rds/lib/serverless-cluster.js +1 -1
  596. package/aws-rds/lib/subnet-group.js +1 -1
  597. package/aws-redshift/lib/redshift.generated.js +1 -1
  598. package/aws-redshiftserverless/lib/redshiftserverless.generated.js +1 -1
  599. package/aws-refactorspaces/lib/refactorspaces.generated.js +1 -1
  600. package/aws-rekognition/lib/rekognition.generated.js +1 -1
  601. package/aws-resiliencehub/lib/resiliencehub.generated.js +1 -1
  602. package/aws-resourceexplorer2/lib/resourceexplorer2.generated.js +1 -1
  603. package/aws-resourcegroups/lib/resourcegroups.generated.js +1 -1
  604. package/aws-robomaker/lib/robomaker.generated.js +1 -1
  605. package/aws-rolesanywhere/lib/rolesanywhere.generated.js +1 -1
  606. package/aws-route53/lib/hosted-zone.js +1 -1
  607. package/aws-route53/lib/record-set.js +1 -1
  608. package/aws-route53/lib/route53.generated.js +1 -1
  609. package/aws-route53/lib/vpc-endpoint-service-domain-name.js +1 -1
  610. package/aws-route53-patterns/lib/website-redirect.js +1 -1
  611. package/aws-route53-targets/lib/api-gateway-domain-name.js +1 -1
  612. package/aws-route53-targets/lib/api-gatewayv2-domain-name.js +1 -1
  613. package/aws-route53-targets/lib/bucket-website-target.js +1 -1
  614. package/aws-route53-targets/lib/classic-load-balancer-target.js +1 -1
  615. package/aws-route53-targets/lib/cloudfront-target.js +1 -1
  616. package/aws-route53-targets/lib/elastic-beanstalk-environment-target.js +1 -1
  617. package/aws-route53-targets/lib/global-accelerator-target.js +1 -1
  618. package/aws-route53-targets/lib/interface-vpc-endpoint-target.js +1 -1
  619. package/aws-route53-targets/lib/load-balancer-target.js +1 -1
  620. package/aws-route53-targets/lib/route53-record.js +1 -1
  621. package/aws-route53-targets/lib/userpool-domain.js +1 -1
  622. package/aws-route53recoverycontrol/lib/route53recoverycontrol.generated.js +1 -1
  623. package/aws-route53recoveryreadiness/lib/route53recoveryreadiness.generated.js +1 -1
  624. package/aws-route53resolver/lib/route53resolver.generated.js +1 -1
  625. package/aws-rum/lib/rum.generated.js +1 -1
  626. package/aws-s3/lib/bucket-policy.js +1 -1
  627. package/aws-s3/lib/bucket.js +1 -1
  628. package/aws-s3/lib/rule.js +1 -1
  629. package/aws-s3/lib/s3.generated.js +1 -1
  630. package/aws-s3-assets/lib/asset.js +1 -1
  631. package/aws-s3-deployment/lib/bucket-deployment.js +1 -1
  632. package/aws-s3-deployment/lib/source.js +1 -1
  633. package/aws-s3-notifications/lib/lambda.js +1 -1
  634. package/aws-s3-notifications/lib/sns.js +1 -1
  635. package/aws-s3-notifications/lib/sqs.js +1 -1
  636. package/aws-s3objectlambda/lib/s3objectlambda.generated.js +1 -1
  637. package/aws-s3outposts/lib/s3outposts.generated.js +1 -1
  638. package/aws-sagemaker/lib/sagemaker.generated.js +1 -1
  639. package/aws-sam/lib/sam.generated.js +1 -1
  640. package/aws-scheduler/lib/scheduler.generated.js +1 -1
  641. package/aws-sdb/lib/sdb.generated.js +1 -1
  642. package/aws-secretsmanager/lib/policy.js +1 -1
  643. package/aws-secretsmanager/lib/rotation-schedule.js +1 -1
  644. package/aws-secretsmanager/lib/secret-rotation.js +1 -1
  645. package/aws-secretsmanager/lib/secret.js +1 -1
  646. package/aws-secretsmanager/lib/secretsmanager.generated.js +1 -1
  647. package/aws-securityhub/lib/securityhub.generated.js +1 -1
  648. package/aws-servicecatalog/lib/cloudformation-template.js +1 -1
  649. package/aws-servicecatalog/lib/portfolio.js +1 -1
  650. package/aws-servicecatalog/lib/product-stack-history.js +1 -1
  651. package/aws-servicecatalog/lib/product-stack.js +1 -1
  652. package/aws-servicecatalog/lib/product.js +1 -1
  653. package/aws-servicecatalog/lib/servicecatalog.generated.js +1 -1
  654. package/aws-servicecatalog/lib/tag-options.js +1 -1
  655. package/aws-servicecatalogappregistry/lib/servicecatalogappregistry.generated.js +1 -1
  656. package/aws-servicediscovery/lib/alias-target-instance.js +1 -1
  657. package/aws-servicediscovery/lib/cname-instance.js +1 -1
  658. package/aws-servicediscovery/lib/http-namespace.js +1 -1
  659. package/aws-servicediscovery/lib/instance.js +1 -1
  660. package/aws-servicediscovery/lib/ip-instance.js +1 -1
  661. package/aws-servicediscovery/lib/non-ip-instance.js +1 -1
  662. package/aws-servicediscovery/lib/private-dns-namespace.js +1 -1
  663. package/aws-servicediscovery/lib/public-dns-namespace.js +1 -1
  664. package/aws-servicediscovery/lib/service.js +1 -1
  665. package/aws-servicediscovery/lib/servicediscovery.generated.js +1 -1
  666. package/aws-ses/lib/configuration-set.js +1 -1
  667. package/aws-ses/lib/dedicated-ip-pool.js +1 -1
  668. package/aws-ses/lib/email-identity.js +1 -1
  669. package/aws-ses/lib/receipt-filter.js +1 -1
  670. package/aws-ses/lib/receipt-rule-set.js +1 -1
  671. package/aws-ses/lib/receipt-rule.js +1 -1
  672. package/aws-ses/lib/ses.generated.js +1 -1
  673. package/aws-ses-actions/lib/add-header.js +1 -1
  674. package/aws-ses-actions/lib/bounce.js +1 -1
  675. package/aws-ses-actions/lib/lambda.js +1 -1
  676. package/aws-ses-actions/lib/s3.js +1 -1
  677. package/aws-ses-actions/lib/sns.js +1 -1
  678. package/aws-ses-actions/lib/stop.js +1 -1
  679. package/aws-signer/lib/signer.generated.js +1 -1
  680. package/aws-signer/lib/signing-profile.js +1 -1
  681. package/aws-sns/lib/policy.js +1 -1
  682. package/aws-sns/lib/sns.generated.js +1 -1
  683. package/aws-sns/lib/subscription-filter.js +1 -1
  684. package/aws-sns/lib/subscription.js +1 -1
  685. package/aws-sns/lib/topic-base.js +1 -1
  686. package/aws-sns/lib/topic.js +1 -1
  687. package/aws-sns-subscriptions/lib/email.js +1 -1
  688. package/aws-sns-subscriptions/lib/lambda.js +1 -1
  689. package/aws-sns-subscriptions/lib/sms.js +1 -1
  690. package/aws-sns-subscriptions/lib/sqs.js +1 -1
  691. package/aws-sns-subscriptions/lib/url.js +1 -1
  692. package/aws-sqs/lib/policy.js +1 -1
  693. package/aws-sqs/lib/queue-base.js +1 -1
  694. package/aws-sqs/lib/queue.js +1 -1
  695. package/aws-sqs/lib/sqs.generated.js +1 -1
  696. package/aws-ssm/lib/parameter.js +1 -1
  697. package/aws-ssm/lib/ssm.generated.js +1 -1
  698. package/aws-ssmcontacts/lib/ssmcontacts.generated.js +1 -1
  699. package/aws-ssmincidents/lib/ssmincidents.generated.js +1 -1
  700. package/aws-sso/lib/sso.generated.js +1 -1
  701. package/aws-stepfunctions/lib/activity.js +1 -1
  702. package/aws-stepfunctions/lib/chain.js +1 -1
  703. package/aws-stepfunctions/lib/condition.js +1 -1
  704. package/aws-stepfunctions/lib/fields.js +1 -1
  705. package/aws-stepfunctions/lib/input.js +1 -1
  706. package/aws-stepfunctions/lib/state-graph.js +1 -1
  707. package/aws-stepfunctions/lib/state-machine-fragment.js +1 -1
  708. package/aws-stepfunctions/lib/state-machine.js +1 -1
  709. package/aws-stepfunctions/lib/state-transition-metrics.js +1 -1
  710. package/aws-stepfunctions/lib/states/choice.js +1 -1
  711. package/aws-stepfunctions/lib/states/custom-state.js +1 -1
  712. package/aws-stepfunctions/lib/states/fail.js +1 -1
  713. package/aws-stepfunctions/lib/states/map.js +1 -1
  714. package/aws-stepfunctions/lib/states/parallel.js +1 -1
  715. package/aws-stepfunctions/lib/states/pass.js +1 -1
  716. package/aws-stepfunctions/lib/states/state.js +1 -1
  717. package/aws-stepfunctions/lib/states/succeed.js +1 -1
  718. package/aws-stepfunctions/lib/states/task-base.js +1 -1
  719. package/aws-stepfunctions/lib/states/task.js +1 -1
  720. package/aws-stepfunctions/lib/states/wait.js +1 -1
  721. package/aws-stepfunctions/lib/stepfunctions.generated.js +1 -1
  722. package/aws-stepfunctions/lib/types.js +1 -1
  723. package/aws-stepfunctions-tasks/lib/apigateway/call-http-api.js +1 -1
  724. package/aws-stepfunctions-tasks/lib/apigateway/call-rest-api.js +1 -1
  725. package/aws-stepfunctions-tasks/lib/athena/get-query-execution.js +1 -1
  726. package/aws-stepfunctions-tasks/lib/athena/get-query-results.js +1 -1
  727. package/aws-stepfunctions-tasks/lib/athena/start-query-execution.js +1 -1
  728. package/aws-stepfunctions-tasks/lib/athena/stop-query-execution.js +1 -1
  729. package/aws-stepfunctions-tasks/lib/aws-sdk/call-aws-service.js +1 -1
  730. package/aws-stepfunctions-tasks/lib/batch/run-batch-job.js +1 -1
  731. package/aws-stepfunctions-tasks/lib/batch/submit-job.js +1 -1
  732. package/aws-stepfunctions-tasks/lib/codebuild/start-build.js +1 -1
  733. package/aws-stepfunctions-tasks/lib/databrew/start-job-run.js +1 -1
  734. package/aws-stepfunctions-tasks/lib/dynamodb/delete-item.js +1 -1
  735. package/aws-stepfunctions-tasks/lib/dynamodb/get-item.js +1 -1
  736. package/aws-stepfunctions-tasks/lib/dynamodb/put-item.js +1 -1
  737. package/aws-stepfunctions-tasks/lib/dynamodb/shared-types.js +1 -1
  738. package/aws-stepfunctions-tasks/lib/dynamodb/update-item.js +1 -1
  739. package/aws-stepfunctions-tasks/lib/ecs/run-ecs-ec2-task.js +1 -1
  740. package/aws-stepfunctions-tasks/lib/ecs/run-ecs-fargate-task.js +1 -1
  741. package/aws-stepfunctions-tasks/lib/ecs/run-ecs-task-base.js +1 -1
  742. package/aws-stepfunctions-tasks/lib/ecs/run-task.js +1 -1
  743. package/aws-stepfunctions-tasks/lib/eks/call.js +1 -1
  744. package/aws-stepfunctions-tasks/lib/emr/emr-add-step.js +1 -1
  745. package/aws-stepfunctions-tasks/lib/emr/emr-cancel-step.js +1 -1
  746. package/aws-stepfunctions-tasks/lib/emr/emr-create-cluster.js +1 -1
  747. package/aws-stepfunctions-tasks/lib/emr/emr-modify-instance-fleet-by-name.js +1 -1
  748. package/aws-stepfunctions-tasks/lib/emr/emr-modify-instance-group-by-name.js +1 -1
  749. package/aws-stepfunctions-tasks/lib/emr/emr-set-cluster-termination-protection.js +1 -1
  750. package/aws-stepfunctions-tasks/lib/emr/emr-terminate-cluster.js +1 -1
  751. package/aws-stepfunctions-tasks/lib/emrcontainers/create-virtual-cluster.js +1 -1
  752. package/aws-stepfunctions-tasks/lib/emrcontainers/delete-virtual-cluster.js +1 -1
  753. package/aws-stepfunctions-tasks/lib/emrcontainers/start-job-run.js +1 -1
  754. package/aws-stepfunctions-tasks/lib/evaluate-expression.js +1 -1
  755. package/aws-stepfunctions-tasks/lib/eventbridge/put-events.js +1 -1
  756. package/aws-stepfunctions-tasks/lib/glue/run-glue-job-task.js +1 -1
  757. package/aws-stepfunctions-tasks/lib/glue/start-job-run.js +1 -1
  758. package/aws-stepfunctions-tasks/lib/invoke-activity.js +1 -1
  759. package/aws-stepfunctions-tasks/lib/lambda/invoke-function.js +1 -1
  760. package/aws-stepfunctions-tasks/lib/lambda/invoke.js +1 -1
  761. package/aws-stepfunctions-tasks/lib/lambda/run-lambda-task.js +1 -1
  762. package/aws-stepfunctions-tasks/lib/sagemaker/base-types.js +1 -1
  763. package/aws-stepfunctions-tasks/lib/sagemaker/create-endpoint-config.js +1 -1
  764. package/aws-stepfunctions-tasks/lib/sagemaker/create-endpoint.js +1 -1
  765. package/aws-stepfunctions-tasks/lib/sagemaker/create-model.js +1 -1
  766. package/aws-stepfunctions-tasks/lib/sagemaker/create-training-job.js +1 -1
  767. package/aws-stepfunctions-tasks/lib/sagemaker/create-transform-job.js +1 -1
  768. package/aws-stepfunctions-tasks/lib/sagemaker/update-endpoint.js +1 -1
  769. package/aws-stepfunctions-tasks/lib/sns/publish-to-topic.js +1 -1
  770. package/aws-stepfunctions-tasks/lib/sns/publish.js +1 -1
  771. package/aws-stepfunctions-tasks/lib/sqs/send-message.js +1 -1
  772. package/aws-stepfunctions-tasks/lib/sqs/send-to-queue.js +1 -1
  773. package/aws-stepfunctions-tasks/lib/start-execution.js +1 -1
  774. package/aws-stepfunctions-tasks/lib/stepfunctions/invoke-activity.js +1 -1
  775. package/aws-stepfunctions-tasks/lib/stepfunctions/start-execution.js +1 -1
  776. package/aws-supportapp/lib/supportapp.generated.js +1 -1
  777. package/aws-synthetics/lib/synthetics.generated.js +1 -1
  778. package/aws-timestream/lib/timestream.generated.js +1 -1
  779. package/aws-transfer/lib/transfer.generated.js +1 -1
  780. package/aws-voiceid/lib/voiceid.generated.js +1 -1
  781. package/aws-waf/lib/waf.generated.js +1 -1
  782. package/aws-wafregional/lib/wafregional.generated.js +1 -1
  783. package/aws-wafv2/lib/wafv2.generated.js +1 -1
  784. package/aws-wisdom/lib/wisdom.generated.js +1 -1
  785. package/aws-workspaces/lib/workspaces.generated.js +1 -1
  786. package/aws-xray/lib/xray.generated.js +1 -1
  787. package/cloud-assembly-schema/lib/manifest.js +1 -1
  788. package/cloudformation-include/lib/cfn-include.js +1 -1
  789. package/core/lib/annotations.js +1 -1
  790. package/core/lib/app.js +1 -1
  791. package/core/lib/arn.js +1 -1
  792. package/core/lib/aspect.js +1 -1
  793. package/core/lib/asset-staging.js +1 -1
  794. package/core/lib/bundling.js +1 -1
  795. package/core/lib/cfn-codedeploy-blue-green-hook.js +1 -1
  796. package/core/lib/cfn-condition.js +1 -1
  797. package/core/lib/cfn-dynamic-reference.js +1 -1
  798. package/core/lib/cfn-element.js +1 -1
  799. package/core/lib/cfn-fn.js +1 -1
  800. package/core/lib/cfn-hook.js +1 -1
  801. package/core/lib/cfn-include.js +1 -1
  802. package/core/lib/cfn-json.js +1 -1
  803. package/core/lib/cfn-mapping.js +1 -1
  804. package/core/lib/cfn-output.js +1 -1
  805. package/core/lib/cfn-parameter.js +1 -1
  806. package/core/lib/cfn-pseudo.js +1 -1
  807. package/core/lib/cfn-resource.js +1 -1
  808. package/core/lib/cfn-rule.js +1 -1
  809. package/core/lib/cloudformation.generated.js +1 -1
  810. package/core/lib/context-provider.js +1 -1
  811. package/core/lib/custom-resource-provider/custom-resource-provider.js +1 -1
  812. package/core/lib/custom-resource.js +1 -1
  813. package/core/lib/duration.js +1 -1
  814. package/core/lib/expiration.js +1 -1
  815. package/core/lib/feature-flags.js +1 -1
  816. package/core/lib/fs/ignore.js +1 -1
  817. package/core/lib/fs/index.js +1 -1
  818. package/core/lib/lazy.js +1 -1
  819. package/core/lib/names.js +1 -1
  820. package/core/lib/nested-stack.js +1 -1
  821. package/core/lib/physical-name.js +1 -1
  822. package/core/lib/private/intrinsic.js +1 -1
  823. package/core/lib/reference.js +1 -1
  824. package/core/lib/resolvable.js +2 -2
  825. package/core/lib/resource.js +1 -1
  826. package/core/lib/runtime.js +2 -2
  827. package/core/lib/secret-value.js +1 -1
  828. package/core/lib/size.js +1 -1
  829. package/core/lib/stack-synthesizers/asset-manifest-builder.js +1 -1
  830. package/core/lib/stack-synthesizers/bootstrapless-synthesizer.js +1 -1
  831. package/core/lib/stack-synthesizers/cli-credentials-synthesizer.js +1 -1
  832. package/core/lib/stack-synthesizers/default-synthesizer.js +1 -1
  833. package/core/lib/stack-synthesizers/legacy.js +1 -1
  834. package/core/lib/stack-synthesizers/nested.js +1 -1
  835. package/core/lib/stack-synthesizers/stack-synthesizer.js +1 -1
  836. package/core/lib/stack.js +1 -1
  837. package/core/lib/stage.js +1 -1
  838. package/core/lib/string-fragments.js +1 -1
  839. package/core/lib/tag-aspect.js +1 -1
  840. package/core/lib/tag-manager.js +1 -1
  841. package/core/lib/token.js +1 -1
  842. package/core/lib/tree.js +1 -1
  843. package/custom-resources/lib/aws-custom-resource/aws-custom-resource.js +1 -1
  844. package/custom-resources/lib/provider-framework/provider.js +1 -1
  845. package/cx-api/lib/artifacts/asset-manifest-artifact.js +1 -1
  846. package/cx-api/lib/artifacts/cloudformation-artifact.js +1 -1
  847. package/cx-api/lib/artifacts/nested-cloud-assembly-artifact.js +1 -1
  848. package/cx-api/lib/artifacts/tree-cloud-artifact.js +1 -1
  849. package/cx-api/lib/cloud-artifact.js +1 -1
  850. package/cx-api/lib/cloud-assembly.js +1 -1
  851. package/cx-api/lib/environment.js +1 -1
  852. package/cx-api/lib/placeholders.js +1 -1
  853. package/lambda-layer-awscli/lib/awscli-layer.js +1 -1
  854. package/lambda-layer-kubectl/lib/kubectl-layer.js +1 -1
  855. package/lambda-layer-node-proxy-agent/lib/node-proxy-agent-layer.js +1 -1
  856. package/package.json +253 -253
  857. package/pipelines/lib/blueprint/file-set.js +1 -1
  858. package/pipelines/lib/blueprint/manual-approval.js +1 -1
  859. package/pipelines/lib/blueprint/shell-step.js +1 -1
  860. package/pipelines/lib/blueprint/stack-deployment.js +1 -1
  861. package/pipelines/lib/blueprint/stage-deployment.js +1 -1
  862. package/pipelines/lib/blueprint/step.js +1 -1
  863. package/pipelines/lib/blueprint/wave.js +1 -1
  864. package/pipelines/lib/codepipeline/artifact-map.js +1 -1
  865. package/pipelines/lib/codepipeline/codebuild-step.js +1 -1
  866. package/pipelines/lib/codepipeline/codepipeline-source.js +1 -1
  867. package/pipelines/lib/codepipeline/codepipeline.js +1 -1
  868. package/pipelines/lib/codepipeline/confirm-permissions-broadening.js +1 -1
  869. package/pipelines/lib/docker-credentials.js +1 -1
  870. package/pipelines/lib/legacy/actions/deploy-cdk-stack-action.js +1 -1
  871. package/pipelines/lib/legacy/actions/publish-assets-action.js +1 -1
  872. package/pipelines/lib/legacy/actions/update-pipeline-action.js +1 -1
  873. package/pipelines/lib/legacy/pipeline.js +1 -1
  874. package/pipelines/lib/legacy/stage.js +1 -1
  875. package/pipelines/lib/legacy/synths/simple-synth-action.js +1 -1
  876. package/pipelines/lib/legacy/validation/shell-script-action.js +1 -1
  877. package/pipelines/lib/main/pipeline-base.js +1 -1
  878. package/region-info/lib/built-ins.generated.d.ts +1 -1
  879. package/region-info/lib/default.js +1 -1
  880. package/region-info/lib/fact.js +1 -1
  881. package/region-info/lib/region-info.js +1 -1
  882. package/triggers/lib/trigger-function.js +1 -1
  883. package/triggers/lib/trigger.js +1 -1
@@ -1,2 +1,2 @@
1
- "use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.ServerlessClusterFromSnapshot=exports.ServerlessCluster=exports.AuroraCapacityUnit=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),ec2=require("../../aws-ec2"),iam=require("../../aws-iam"),secretsmanager=require("../../aws-secretsmanager"),core_1=require("../../core"),cxapi=require("../../cx-api"),database_secret_1=require("./database-secret"),endpoint_1=require("./endpoint"),perms_1=require("./perms"),util_1=require("./private/util"),rds_generated_1=require("./rds.generated"),subnet_group_1=require("./subnet-group");var AuroraCapacityUnit;(function(AuroraCapacityUnit2){AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_1=1]="ACU_1",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_2=2]="ACU_2",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_4=4]="ACU_4",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_8=8]="ACU_8",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_16=16]="ACU_16",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_32=32]="ACU_32",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_64=64]="ACU_64",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_128=128]="ACU_128",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_192=192]="ACU_192",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_256=256]="ACU_256",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_384=384]="ACU_384"})(AuroraCapacityUnit=exports.AuroraCapacityUnit||(exports.AuroraCapacityUnit={}));class ServerlessClusterBase extends core_1.Resource{get clusterArn(){return core_1.Stack.of(this).formatArn({service:"rds",resource:"cluster",arnFormat:core_1.ArnFormat.COLON_RESOURCE_NAME,resourceName:this.clusterIdentifier})}grantDataApiAccess(grantee){if(this.enableDataApi===!1)throw new Error("Cannot grant Data API access when the Data API is disabled");this.enableDataApi=!0;const ret=iam.Grant.addToPrincipal({grantee,actions:perms_1.DATA_API_ACTIONS,resourceArns:["*"],scope:this});return this.secret?.grantRead(grantee),ret}asSecretAttachmentTarget(){return{targetId:this.clusterIdentifier,targetType:secretsmanager.AttachmentTargetType.RDS_DB_CLUSTER}}}class ServerlessClusterNew extends ServerlessClusterBase{constructor(scope,id,props){if(super(scope,id),props.vpc===void 0){if(props.vpcSubnets!==void 0)throw new Error("A VPC is required to use vpcSubnets in ServerlessCluster. Please add a VPC or remove vpcSubnets");if(props.subnetGroup!==void 0)throw new Error("A VPC is required to use subnetGroup in ServerlessCluster. Please add a VPC or remove subnetGroup");if(props.securityGroups!==void 0)throw new Error("A VPC is required to use securityGroups in ServerlessCluster. Please add a VPC or remove securityGroups")}let subnetGroup=props.subnetGroup;if(this.securityGroups=props.securityGroups??[],props.vpc!==void 0){const{subnetIds}=props.vpc.selectSubnets(props.vpcSubnets);subnetIds.length<2&&core_1.Annotations.of(this).addError(`Cluster requires at least 2 subnets, got ${subnetIds.length}`),subnetGroup=props.subnetGroup??new subnet_group_1.SubnetGroup(this,"Subnets",{description:`Subnets for ${id} database`,vpc:props.vpc,vpcSubnets:props.vpcSubnets,removalPolicy:props.removalPolicy===core_1.RemovalPolicy.RETAIN?props.removalPolicy:void 0}),this.securityGroups=props.securityGroups??[new ec2.SecurityGroup(this,"SecurityGroup",{description:"RDS security group",vpc:props.vpc})]}if(props.backupRetention){const backupRetentionDays=props.backupRetention.toDays();if(backupRetentionDays<1||backupRetentionDays>35)throw new Error(`backup retention period must be between 1 and 35 days. received: ${backupRetentionDays}`)}const clusterEngineBindConfig=props.engine.bindToCluster(this,{parameterGroup:props.parameterGroup}),clusterParameterGroupConfig=(props.parameterGroup??clusterEngineBindConfig.parameterGroup)?.bindToCluster({}),clusterIdentifier=core_1.FeatureFlags.of(this).isEnabled(cxapi.RDS_LOWERCASE_DB_IDENTIFIER)?props.clusterIdentifier?.toLowerCase():props.clusterIdentifier;this.newCfnProps={backupRetentionPeriod:props.backupRetention?.toDays(),databaseName:props.defaultDatabaseName,dbClusterIdentifier:clusterIdentifier,dbClusterParameterGroupName:clusterParameterGroupConfig?.parameterGroupName,dbSubnetGroupName:subnetGroup?.subnetGroupName,deletionProtection:util_1.defaultDeletionProtection(props.deletionProtection,props.removalPolicy),engine:props.engine.engineType,engineVersion:props.engine.engineVersion?.fullVersion,engineMode:"serverless",enableHttpEndpoint:core_1.Lazy.any({produce:()=>this.enableDataApi}),scalingConfiguration:props.scaling?this.renderScalingConfiguration(props.scaling):void 0,storageEncrypted:!0,vpcSecurityGroupIds:this.securityGroups.map(sg=>sg.securityGroupId),copyTagsToSnapshot:props.copyTagsToSnapshot??!0},this.connections=new ec2.Connections({securityGroups:this.securityGroups,defaultPort:ec2.Port.tcp(core_1.Lazy.number({produce:()=>this.clusterEndpoint.port}))})}renderScalingConfiguration(options){const minCapacity=options.minCapacity,maxCapacity=options.maxCapacity;if(minCapacity&&maxCapacity&&minCapacity>maxCapacity)throw new Error("maximum capacity must be greater than or equal to minimum capacity.");const secondsToAutoPause=options.autoPause?.toSeconds();if(secondsToAutoPause&&(secondsToAutoPause<300||secondsToAutoPause>86400))throw new Error("auto pause time must be between 5 minutes and 1 day.");return{autoPause:secondsToAutoPause!==0,minCapacity:options.minCapacity,maxCapacity:options.maxCapacity,secondsUntilAutoPause:secondsToAutoPause===0?void 0:secondsToAutoPause}}}class ServerlessCluster extends ServerlessClusterNew{constructor(scope,id,props){super(scope,id,props);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_ServerlessClusterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,ServerlessCluster),error}this.vpc=props.vpc,this.vpcSubnets=props.vpcSubnets,this.singleUserRotationApplication=props.engine.singleUserRotationApplication,this.multiUserRotationApplication=props.engine.multiUserRotationApplication,this.enableDataApi=props.enableDataApi;const credentials=util_1.renderCredentials(this,props.engine,props.credentials),secret=credentials.secret,cluster=new rds_generated_1.CfnDBCluster(this,"Resource",{...this.newCfnProps,masterUsername:credentials.username,masterUserPassword:credentials.password?.unsafeUnwrap(),kmsKeyId:props.storageEncryptionKey?.keyArn});this.clusterIdentifier=cluster.ref;const portAttribute=core_1.Token.asNumber(cluster.attrEndpointPort);this.clusterEndpoint=new endpoint_1.Endpoint(cluster.attrEndpointAddress,portAttribute),this.clusterReadEndpoint=new endpoint_1.Endpoint(cluster.attrReadEndpointAddress,portAttribute),cluster.applyRemovalPolicy(props.removalPolicy??core_1.RemovalPolicy.SNAPSHOT),secret&&(this.secret=secret.attach(this))}static fromServerlessClusterAttributes(scope,id,attrs){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_ServerlessClusterAttributes(attrs)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromServerlessClusterAttributes),error}return new ImportedServerlessCluster(scope,id,attrs)}addRotationSingleUser(options={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_RotationSingleUserOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addRotationSingleUser),error}if(!this.secret)throw new Error("Cannot add single user rotation for a cluster without secret.");if(this.vpc===void 0)throw new Error("Cannot add single user rotation for a cluster without VPC.");const id="RotationSingleUser";if(this.node.tryFindChild(id))throw new Error("A single user rotation was already added to this cluster.");return new secretsmanager.SecretRotation(this,id,{...util_1.applyDefaultRotationOptions(options,this.vpcSubnets),secret:this.secret,application:this.singleUserRotationApplication,vpc:this.vpc,target:this})}addRotationMultiUser(id,options){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_RotationMultiUserOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addRotationMultiUser),error}if(!this.secret)throw new Error("Cannot add multi user rotation for a cluster without secret.");if(this.vpc===void 0)throw new Error("Cannot add multi user rotation for a cluster without VPC.");return new secretsmanager.SecretRotation(this,id,{...util_1.applyDefaultRotationOptions(options,this.vpcSubnets),secret:options.secret,masterSecret:this.secret,application:this.multiUserRotationApplication,vpc:this.vpc,target:this})}}exports.ServerlessCluster=ServerlessCluster,_a=JSII_RTTI_SYMBOL_1,ServerlessCluster[_a]={fqn:"aws-cdk-lib.aws_rds.ServerlessCluster",version:"2.51.0"};class ImportedServerlessCluster extends ServerlessClusterBase{constructor(scope,id,attrs){super(scope,id),this.enableDataApi=!0,this.clusterIdentifier=attrs.clusterIdentifier;const defaultPort=attrs.port?ec2.Port.tcp(attrs.port):void 0;this.connections=new ec2.Connections({securityGroups:attrs.securityGroups,defaultPort}),this.secret=attrs.secret,this._clusterEndpoint=attrs.clusterEndpointAddress&&attrs.port?new endpoint_1.Endpoint(attrs.clusterEndpointAddress,attrs.port):void 0,this._clusterReadEndpoint=attrs.readerEndpointAddress&&attrs.port?new endpoint_1.Endpoint(attrs.readerEndpointAddress,attrs.port):void 0}get clusterEndpoint(){if(!this._clusterEndpoint)throw new Error("Cannot access `clusterEndpoint` of an imported cluster without an endpoint address and port");return this._clusterEndpoint}get clusterReadEndpoint(){if(!this._clusterReadEndpoint)throw new Error("Cannot access `clusterReadEndpoint` of an imported cluster without a readerEndpointAddress and port");return this._clusterReadEndpoint}}class ServerlessClusterFromSnapshot extends ServerlessClusterNew{constructor(scope,id,props){super(scope,id,props);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_ServerlessClusterFromSnapshotProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,ServerlessClusterFromSnapshot),error}this.enableDataApi=props.enableDataApi;let credentials=props.credentials,secret=credentials?.secret;if(!secret&&credentials?.generatePassword){if(!credentials.username)throw new Error("`credentials` `username` must be specified when `generatePassword` is set to true");secret=new database_secret_1.DatabaseSecret(this,"Secret",{username:credentials.username,encryptionKey:credentials.encryptionKey,excludeCharacters:credentials.excludeCharacters,replaceOnPasswordCriteriaChanges:credentials.replaceOnPasswordCriteriaChanges,replicaRegions:credentials.replicaRegions})}const cluster=new rds_generated_1.CfnDBCluster(this,"Resource",{...this.newCfnProps,snapshotIdentifier:props.snapshotIdentifier,masterUserPassword:secret?.secretValueFromJson("password")?.unsafeUnwrap()??credentials?.password?.unsafeUnwrap()});this.clusterIdentifier=cluster.ref;const portAttribute=core_1.Token.asNumber(cluster.attrEndpointPort);this.clusterEndpoint=new endpoint_1.Endpoint(cluster.attrEndpointAddress,portAttribute),this.clusterReadEndpoint=new endpoint_1.Endpoint(cluster.attrReadEndpointAddress,portAttribute),cluster.applyRemovalPolicy(props.removalPolicy??core_1.RemovalPolicy.SNAPSHOT),secret&&(this.secret=secret.attach(this))}}exports.ServerlessClusterFromSnapshot=ServerlessClusterFromSnapshot,_b=JSII_RTTI_SYMBOL_1,ServerlessClusterFromSnapshot[_b]={fqn:"aws-cdk-lib.aws_rds.ServerlessClusterFromSnapshot",version:"2.51.0"};
1
+ "use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.ServerlessClusterFromSnapshot=exports.ServerlessCluster=exports.AuroraCapacityUnit=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),ec2=require("../../aws-ec2"),iam=require("../../aws-iam"),secretsmanager=require("../../aws-secretsmanager"),core_1=require("../../core"),cxapi=require("../../cx-api"),database_secret_1=require("./database-secret"),endpoint_1=require("./endpoint"),perms_1=require("./perms"),util_1=require("./private/util"),rds_generated_1=require("./rds.generated"),subnet_group_1=require("./subnet-group");var AuroraCapacityUnit;(function(AuroraCapacityUnit2){AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_1=1]="ACU_1",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_2=2]="ACU_2",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_4=4]="ACU_4",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_8=8]="ACU_8",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_16=16]="ACU_16",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_32=32]="ACU_32",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_64=64]="ACU_64",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_128=128]="ACU_128",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_192=192]="ACU_192",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_256=256]="ACU_256",AuroraCapacityUnit2[AuroraCapacityUnit2.ACU_384=384]="ACU_384"})(AuroraCapacityUnit=exports.AuroraCapacityUnit||(exports.AuroraCapacityUnit={}));class ServerlessClusterBase extends core_1.Resource{get clusterArn(){return core_1.Stack.of(this).formatArn({service:"rds",resource:"cluster",arnFormat:core_1.ArnFormat.COLON_RESOURCE_NAME,resourceName:this.clusterIdentifier})}grantDataApiAccess(grantee){if(this.enableDataApi===!1)throw new Error("Cannot grant Data API access when the Data API is disabled");this.enableDataApi=!0;const ret=iam.Grant.addToPrincipal({grantee,actions:perms_1.DATA_API_ACTIONS,resourceArns:["*"],scope:this});return this.secret?.grantRead(grantee),ret}asSecretAttachmentTarget(){return{targetId:this.clusterIdentifier,targetType:secretsmanager.AttachmentTargetType.RDS_DB_CLUSTER}}}class ServerlessClusterNew extends ServerlessClusterBase{constructor(scope,id,props){if(super(scope,id),props.vpc===void 0){if(props.vpcSubnets!==void 0)throw new Error("A VPC is required to use vpcSubnets in ServerlessCluster. Please add a VPC or remove vpcSubnets");if(props.subnetGroup!==void 0)throw new Error("A VPC is required to use subnetGroup in ServerlessCluster. Please add a VPC or remove subnetGroup");if(props.securityGroups!==void 0)throw new Error("A VPC is required to use securityGroups in ServerlessCluster. Please add a VPC or remove securityGroups")}let subnetGroup=props.subnetGroup;if(this.securityGroups=props.securityGroups??[],props.vpc!==void 0){const{subnetIds}=props.vpc.selectSubnets(props.vpcSubnets);subnetIds.length<2&&core_1.Annotations.of(this).addError(`Cluster requires at least 2 subnets, got ${subnetIds.length}`),subnetGroup=props.subnetGroup??new subnet_group_1.SubnetGroup(this,"Subnets",{description:`Subnets for ${id} database`,vpc:props.vpc,vpcSubnets:props.vpcSubnets,removalPolicy:props.removalPolicy===core_1.RemovalPolicy.RETAIN?props.removalPolicy:void 0}),this.securityGroups=props.securityGroups??[new ec2.SecurityGroup(this,"SecurityGroup",{description:"RDS security group",vpc:props.vpc})]}if(props.backupRetention){const backupRetentionDays=props.backupRetention.toDays();if(backupRetentionDays<1||backupRetentionDays>35)throw new Error(`backup retention period must be between 1 and 35 days. received: ${backupRetentionDays}`)}const clusterEngineBindConfig=props.engine.bindToCluster(this,{parameterGroup:props.parameterGroup}),clusterParameterGroupConfig=(props.parameterGroup??clusterEngineBindConfig.parameterGroup)?.bindToCluster({}),clusterIdentifier=core_1.FeatureFlags.of(this).isEnabled(cxapi.RDS_LOWERCASE_DB_IDENTIFIER)?props.clusterIdentifier?.toLowerCase():props.clusterIdentifier;this.newCfnProps={backupRetentionPeriod:props.backupRetention?.toDays(),databaseName:props.defaultDatabaseName,dbClusterIdentifier:clusterIdentifier,dbClusterParameterGroupName:clusterParameterGroupConfig?.parameterGroupName,dbSubnetGroupName:subnetGroup?.subnetGroupName,deletionProtection:util_1.defaultDeletionProtection(props.deletionProtection,props.removalPolicy),engine:props.engine.engineType,engineVersion:props.engine.engineVersion?.fullVersion,engineMode:"serverless",enableHttpEndpoint:core_1.Lazy.any({produce:()=>this.enableDataApi}),scalingConfiguration:props.scaling?this.renderScalingConfiguration(props.scaling):void 0,storageEncrypted:!0,vpcSecurityGroupIds:this.securityGroups.map(sg=>sg.securityGroupId),copyTagsToSnapshot:props.copyTagsToSnapshot??!0},this.connections=new ec2.Connections({securityGroups:this.securityGroups,defaultPort:ec2.Port.tcp(core_1.Lazy.number({produce:()=>this.clusterEndpoint.port}))})}renderScalingConfiguration(options){const minCapacity=options.minCapacity,maxCapacity=options.maxCapacity;if(minCapacity&&maxCapacity&&minCapacity>maxCapacity)throw new Error("maximum capacity must be greater than or equal to minimum capacity.");const secondsToAutoPause=options.autoPause?.toSeconds();if(secondsToAutoPause&&(secondsToAutoPause<300||secondsToAutoPause>86400))throw new Error("auto pause time must be between 5 minutes and 1 day.");return{autoPause:secondsToAutoPause!==0,minCapacity:options.minCapacity,maxCapacity:options.maxCapacity,secondsUntilAutoPause:secondsToAutoPause===0?void 0:secondsToAutoPause}}}class ServerlessCluster extends ServerlessClusterNew{constructor(scope,id,props){super(scope,id,props);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_ServerlessClusterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,ServerlessCluster),error}this.vpc=props.vpc,this.vpcSubnets=props.vpcSubnets,this.singleUserRotationApplication=props.engine.singleUserRotationApplication,this.multiUserRotationApplication=props.engine.multiUserRotationApplication,this.enableDataApi=props.enableDataApi;const credentials=util_1.renderCredentials(this,props.engine,props.credentials),secret=credentials.secret,cluster=new rds_generated_1.CfnDBCluster(this,"Resource",{...this.newCfnProps,masterUsername:credentials.username,masterUserPassword:credentials.password?.unsafeUnwrap(),kmsKeyId:props.storageEncryptionKey?.keyArn});this.clusterIdentifier=cluster.ref;const portAttribute=core_1.Token.asNumber(cluster.attrEndpointPort);this.clusterEndpoint=new endpoint_1.Endpoint(cluster.attrEndpointAddress,portAttribute),this.clusterReadEndpoint=new endpoint_1.Endpoint(cluster.attrReadEndpointAddress,portAttribute),cluster.applyRemovalPolicy(props.removalPolicy??core_1.RemovalPolicy.SNAPSHOT),secret&&(this.secret=secret.attach(this))}static fromServerlessClusterAttributes(scope,id,attrs){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_ServerlessClusterAttributes(attrs)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromServerlessClusterAttributes),error}return new ImportedServerlessCluster(scope,id,attrs)}addRotationSingleUser(options={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_RotationSingleUserOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addRotationSingleUser),error}if(!this.secret)throw new Error("Cannot add single user rotation for a cluster without secret.");if(this.vpc===void 0)throw new Error("Cannot add single user rotation for a cluster without VPC.");const id="RotationSingleUser";if(this.node.tryFindChild(id))throw new Error("A single user rotation was already added to this cluster.");return new secretsmanager.SecretRotation(this,id,{...util_1.applyDefaultRotationOptions(options,this.vpcSubnets),secret:this.secret,application:this.singleUserRotationApplication,vpc:this.vpc,target:this})}addRotationMultiUser(id,options){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_RotationMultiUserOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addRotationMultiUser),error}if(!this.secret)throw new Error("Cannot add multi user rotation for a cluster without secret.");if(this.vpc===void 0)throw new Error("Cannot add multi user rotation for a cluster without VPC.");return new secretsmanager.SecretRotation(this,id,{...util_1.applyDefaultRotationOptions(options,this.vpcSubnets),secret:options.secret,masterSecret:this.secret,application:this.multiUserRotationApplication,vpc:this.vpc,target:this})}}exports.ServerlessCluster=ServerlessCluster,_a=JSII_RTTI_SYMBOL_1,ServerlessCluster[_a]={fqn:"aws-cdk-lib.aws_rds.ServerlessCluster",version:"2.51.1"};class ImportedServerlessCluster extends ServerlessClusterBase{constructor(scope,id,attrs){super(scope,id),this.enableDataApi=!0,this.clusterIdentifier=attrs.clusterIdentifier;const defaultPort=attrs.port?ec2.Port.tcp(attrs.port):void 0;this.connections=new ec2.Connections({securityGroups:attrs.securityGroups,defaultPort}),this.secret=attrs.secret,this._clusterEndpoint=attrs.clusterEndpointAddress&&attrs.port?new endpoint_1.Endpoint(attrs.clusterEndpointAddress,attrs.port):void 0,this._clusterReadEndpoint=attrs.readerEndpointAddress&&attrs.port?new endpoint_1.Endpoint(attrs.readerEndpointAddress,attrs.port):void 0}get clusterEndpoint(){if(!this._clusterEndpoint)throw new Error("Cannot access `clusterEndpoint` of an imported cluster without an endpoint address and port");return this._clusterEndpoint}get clusterReadEndpoint(){if(!this._clusterReadEndpoint)throw new Error("Cannot access `clusterReadEndpoint` of an imported cluster without a readerEndpointAddress and port");return this._clusterReadEndpoint}}class ServerlessClusterFromSnapshot extends ServerlessClusterNew{constructor(scope,id,props){super(scope,id,props);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_ServerlessClusterFromSnapshotProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,ServerlessClusterFromSnapshot),error}this.enableDataApi=props.enableDataApi;let credentials=props.credentials,secret=credentials?.secret;if(!secret&&credentials?.generatePassword){if(!credentials.username)throw new Error("`credentials` `username` must be specified when `generatePassword` is set to true");secret=new database_secret_1.DatabaseSecret(this,"Secret",{username:credentials.username,encryptionKey:credentials.encryptionKey,excludeCharacters:credentials.excludeCharacters,replaceOnPasswordCriteriaChanges:credentials.replaceOnPasswordCriteriaChanges,replicaRegions:credentials.replicaRegions})}const cluster=new rds_generated_1.CfnDBCluster(this,"Resource",{...this.newCfnProps,snapshotIdentifier:props.snapshotIdentifier,masterUserPassword:secret?.secretValueFromJson("password")?.unsafeUnwrap()??credentials?.password?.unsafeUnwrap()});this.clusterIdentifier=cluster.ref;const portAttribute=core_1.Token.asNumber(cluster.attrEndpointPort);this.clusterEndpoint=new endpoint_1.Endpoint(cluster.attrEndpointAddress,portAttribute),this.clusterReadEndpoint=new endpoint_1.Endpoint(cluster.attrReadEndpointAddress,portAttribute),cluster.applyRemovalPolicy(props.removalPolicy??core_1.RemovalPolicy.SNAPSHOT),secret&&(this.secret=secret.attach(this))}}exports.ServerlessClusterFromSnapshot=ServerlessClusterFromSnapshot,_b=JSII_RTTI_SYMBOL_1,ServerlessClusterFromSnapshot[_b]={fqn:"aws-cdk-lib.aws_rds.ServerlessClusterFromSnapshot",version:"2.51.1"};
2
2
  //# sourceMappingURL=serverless-cluster.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.SubnetGroup=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),ec2=require("../../aws-ec2"),core_1=require("../../core"),rds_generated_1=require("./rds.generated");class SubnetGroup extends core_1.Resource{constructor(scope,id,props){super(scope,id);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_SubnetGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SubnetGroup),error}const{subnetIds}=props.vpc.selectSubnets(props.vpcSubnets??{subnetType:ec2.SubnetType.PRIVATE_WITH_EGRESS}),subnetGroup=new rds_generated_1.CfnDBSubnetGroup(this,"Default",{dbSubnetGroupDescription:props.description,dbSubnetGroupName:core_1.Token.isUnresolved(props.subnetGroupName)?props.subnetGroupName:props.subnetGroupName?.toLowerCase(),subnetIds});props.removalPolicy&&subnetGroup.applyRemovalPolicy(props.removalPolicy),this.subnetGroupName=subnetGroup.ref}static fromSubnetGroupName(scope,id,subnetGroupName){return new class extends core_1.Resource{constructor(){super(...arguments),this.subnetGroupName=subnetGroupName}}(scope,id)}}exports.SubnetGroup=SubnetGroup,_a=JSII_RTTI_SYMBOL_1,SubnetGroup[_a]={fqn:"aws-cdk-lib.aws_rds.SubnetGroup",version:"2.51.0"};
1
+ "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.SubnetGroup=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),ec2=require("../../aws-ec2"),core_1=require("../../core"),rds_generated_1=require("./rds.generated");class SubnetGroup extends core_1.Resource{constructor(scope,id,props){super(scope,id);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_rds_SubnetGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SubnetGroup),error}const{subnetIds}=props.vpc.selectSubnets(props.vpcSubnets??{subnetType:ec2.SubnetType.PRIVATE_WITH_EGRESS}),subnetGroup=new rds_generated_1.CfnDBSubnetGroup(this,"Default",{dbSubnetGroupDescription:props.description,dbSubnetGroupName:core_1.Token.isUnresolved(props.subnetGroupName)?props.subnetGroupName:props.subnetGroupName?.toLowerCase(),subnetIds});props.removalPolicy&&subnetGroup.applyRemovalPolicy(props.removalPolicy),this.subnetGroupName=subnetGroup.ref}static fromSubnetGroupName(scope,id,subnetGroupName){return new class extends core_1.Resource{constructor(){super(...arguments),this.subnetGroupName=subnetGroupName}}(scope,id)}}exports.SubnetGroup=SubnetGroup,_a=JSII_RTTI_SYMBOL_1,SubnetGroup[_a]={fqn:"aws-cdk-lib.aws_rds.SubnetGroup",version:"2.51.1"};
2
2
  //# sourceMappingURL=subnet-group.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnScheduledAction=exports.CfnEventSubscription=exports.CfnEndpointAuthorization=exports.CfnEndpointAccess=exports.CfnClusterSubnetGroup=exports.CfnClusterSecurityGroupIngress=exports.CfnClusterSecurityGroup=exports.CfnClusterParameterGroup=exports.CfnCluster=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 CfnClusterPropsValidator(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("allowVersionUpgrade",cdk.validateBoolean)(properties.allowVersionUpgrade)),errors.collect(cdk.propertyValidator("aquaConfigurationStatus",cdk.validateString)(properties.aquaConfigurationStatus)),errors.collect(cdk.propertyValidator("automatedSnapshotRetentionPeriod",cdk.validateNumber)(properties.automatedSnapshotRetentionPeriod)),errors.collect(cdk.propertyValidator("availabilityZone",cdk.validateString)(properties.availabilityZone)),errors.collect(cdk.propertyValidator("availabilityZoneRelocation",cdk.validateBoolean)(properties.availabilityZoneRelocation)),errors.collect(cdk.propertyValidator("availabilityZoneRelocationStatus",cdk.validateString)(properties.availabilityZoneRelocationStatus)),errors.collect(cdk.propertyValidator("classic",cdk.validateBoolean)(properties.classic)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterParameterGroupName",cdk.validateString)(properties.clusterParameterGroupName)),errors.collect(cdk.propertyValidator("clusterSecurityGroups",cdk.listValidator(cdk.validateString))(properties.clusterSecurityGroups)),errors.collect(cdk.propertyValidator("clusterSubnetGroupName",cdk.validateString)(properties.clusterSubnetGroupName)),errors.collect(cdk.propertyValidator("clusterType",cdk.requiredValidator)(properties.clusterType)),errors.collect(cdk.propertyValidator("clusterType",cdk.validateString)(properties.clusterType)),errors.collect(cdk.propertyValidator("clusterVersion",cdk.validateString)(properties.clusterVersion)),errors.collect(cdk.propertyValidator("dbName",cdk.requiredValidator)(properties.dbName)),errors.collect(cdk.propertyValidator("dbName",cdk.validateString)(properties.dbName)),errors.collect(cdk.propertyValidator("deferMaintenance",cdk.validateBoolean)(properties.deferMaintenance)),errors.collect(cdk.propertyValidator("deferMaintenanceDuration",cdk.validateNumber)(properties.deferMaintenanceDuration)),errors.collect(cdk.propertyValidator("deferMaintenanceEndTime",cdk.validateString)(properties.deferMaintenanceEndTime)),errors.collect(cdk.propertyValidator("deferMaintenanceStartTime",cdk.validateString)(properties.deferMaintenanceStartTime)),errors.collect(cdk.propertyValidator("destinationRegion",cdk.validateString)(properties.destinationRegion)),errors.collect(cdk.propertyValidator("elasticIp",cdk.validateString)(properties.elasticIp)),errors.collect(cdk.propertyValidator("encrypted",cdk.validateBoolean)(properties.encrypted)),errors.collect(cdk.propertyValidator("enhancedVpcRouting",cdk.validateBoolean)(properties.enhancedVpcRouting)),errors.collect(cdk.propertyValidator("hsmClientCertificateIdentifier",cdk.validateString)(properties.hsmClientCertificateIdentifier)),errors.collect(cdk.propertyValidator("hsmConfigurationIdentifier",cdk.validateString)(properties.hsmConfigurationIdentifier)),errors.collect(cdk.propertyValidator("iamRoles",cdk.listValidator(cdk.validateString))(properties.iamRoles)),errors.collect(cdk.propertyValidator("kmsKeyId",cdk.validateString)(properties.kmsKeyId)),errors.collect(cdk.propertyValidator("loggingProperties",CfnCluster_LoggingPropertiesPropertyValidator)(properties.loggingProperties)),errors.collect(cdk.propertyValidator("maintenanceTrackName",cdk.validateString)(properties.maintenanceTrackName)),errors.collect(cdk.propertyValidator("manualSnapshotRetentionPeriod",cdk.validateNumber)(properties.manualSnapshotRetentionPeriod)),errors.collect(cdk.propertyValidator("masterUserPassword",cdk.requiredValidator)(properties.masterUserPassword)),errors.collect(cdk.propertyValidator("masterUserPassword",cdk.validateString)(properties.masterUserPassword)),errors.collect(cdk.propertyValidator("masterUsername",cdk.requiredValidator)(properties.masterUsername)),errors.collect(cdk.propertyValidator("masterUsername",cdk.validateString)(properties.masterUsername)),errors.collect(cdk.propertyValidator("nodeType",cdk.requiredValidator)(properties.nodeType)),errors.collect(cdk.propertyValidator("nodeType",cdk.validateString)(properties.nodeType)),errors.collect(cdk.propertyValidator("numberOfNodes",cdk.validateNumber)(properties.numberOfNodes)),errors.collect(cdk.propertyValidator("ownerAccount",cdk.validateString)(properties.ownerAccount)),errors.collect(cdk.propertyValidator("port",cdk.validateNumber)(properties.port)),errors.collect(cdk.propertyValidator("preferredMaintenanceWindow",cdk.validateString)(properties.preferredMaintenanceWindow)),errors.collect(cdk.propertyValidator("publiclyAccessible",cdk.validateBoolean)(properties.publiclyAccessible)),errors.collect(cdk.propertyValidator("resourceAction",cdk.validateString)(properties.resourceAction)),errors.collect(cdk.propertyValidator("revisionTarget",cdk.validateString)(properties.revisionTarget)),errors.collect(cdk.propertyValidator("rotateEncryptionKey",cdk.validateBoolean)(properties.rotateEncryptionKey)),errors.collect(cdk.propertyValidator("snapshotClusterIdentifier",cdk.validateString)(properties.snapshotClusterIdentifier)),errors.collect(cdk.propertyValidator("snapshotCopyGrantName",cdk.validateString)(properties.snapshotCopyGrantName)),errors.collect(cdk.propertyValidator("snapshotCopyManual",cdk.validateBoolean)(properties.snapshotCopyManual)),errors.collect(cdk.propertyValidator("snapshotCopyRetentionPeriod",cdk.validateNumber)(properties.snapshotCopyRetentionPeriod)),errors.collect(cdk.propertyValidator("snapshotIdentifier",cdk.validateString)(properties.snapshotIdentifier)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("vpcSecurityGroupIds",cdk.listValidator(cdk.validateString))(properties.vpcSecurityGroupIds)),errors.wrap('supplied properties not correct for "CfnClusterProps"')}function cfnClusterPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterPropsValidator(properties).assertSuccess(),{ClusterType:cdk.stringToCloudFormation(properties.clusterType),DBName:cdk.stringToCloudFormation(properties.dbName),MasterUsername:cdk.stringToCloudFormation(properties.masterUsername),MasterUserPassword:cdk.stringToCloudFormation(properties.masterUserPassword),NodeType:cdk.stringToCloudFormation(properties.nodeType),AllowVersionUpgrade:cdk.booleanToCloudFormation(properties.allowVersionUpgrade),AquaConfigurationStatus:cdk.stringToCloudFormation(properties.aquaConfigurationStatus),AutomatedSnapshotRetentionPeriod:cdk.numberToCloudFormation(properties.automatedSnapshotRetentionPeriod),AvailabilityZone:cdk.stringToCloudFormation(properties.availabilityZone),AvailabilityZoneRelocation:cdk.booleanToCloudFormation(properties.availabilityZoneRelocation),AvailabilityZoneRelocationStatus:cdk.stringToCloudFormation(properties.availabilityZoneRelocationStatus),Classic:cdk.booleanToCloudFormation(properties.classic),ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier),ClusterParameterGroupName:cdk.stringToCloudFormation(properties.clusterParameterGroupName),ClusterSecurityGroups:cdk.listMapper(cdk.stringToCloudFormation)(properties.clusterSecurityGroups),ClusterSubnetGroupName:cdk.stringToCloudFormation(properties.clusterSubnetGroupName),ClusterVersion:cdk.stringToCloudFormation(properties.clusterVersion),DeferMaintenance:cdk.booleanToCloudFormation(properties.deferMaintenance),DeferMaintenanceDuration:cdk.numberToCloudFormation(properties.deferMaintenanceDuration),DeferMaintenanceEndTime:cdk.stringToCloudFormation(properties.deferMaintenanceEndTime),DeferMaintenanceStartTime:cdk.stringToCloudFormation(properties.deferMaintenanceStartTime),DestinationRegion:cdk.stringToCloudFormation(properties.destinationRegion),ElasticIp:cdk.stringToCloudFormation(properties.elasticIp),Encrypted:cdk.booleanToCloudFormation(properties.encrypted),EnhancedVpcRouting:cdk.booleanToCloudFormation(properties.enhancedVpcRouting),HsmClientCertificateIdentifier:cdk.stringToCloudFormation(properties.hsmClientCertificateIdentifier),HsmConfigurationIdentifier:cdk.stringToCloudFormation(properties.hsmConfigurationIdentifier),IamRoles:cdk.listMapper(cdk.stringToCloudFormation)(properties.iamRoles),KmsKeyId:cdk.stringToCloudFormation(properties.kmsKeyId),LoggingProperties:cfnClusterLoggingPropertiesPropertyToCloudFormation(properties.loggingProperties),MaintenanceTrackName:cdk.stringToCloudFormation(properties.maintenanceTrackName),ManualSnapshotRetentionPeriod:cdk.numberToCloudFormation(properties.manualSnapshotRetentionPeriod),NumberOfNodes:cdk.numberToCloudFormation(properties.numberOfNodes),OwnerAccount:cdk.stringToCloudFormation(properties.ownerAccount),Port:cdk.numberToCloudFormation(properties.port),PreferredMaintenanceWindow:cdk.stringToCloudFormation(properties.preferredMaintenanceWindow),PubliclyAccessible:cdk.booleanToCloudFormation(properties.publiclyAccessible),ResourceAction:cdk.stringToCloudFormation(properties.resourceAction),RevisionTarget:cdk.stringToCloudFormation(properties.revisionTarget),RotateEncryptionKey:cdk.booleanToCloudFormation(properties.rotateEncryptionKey),SnapshotClusterIdentifier:cdk.stringToCloudFormation(properties.snapshotClusterIdentifier),SnapshotCopyGrantName:cdk.stringToCloudFormation(properties.snapshotCopyGrantName),SnapshotCopyManual:cdk.booleanToCloudFormation(properties.snapshotCopyManual),SnapshotCopyRetentionPeriod:cdk.numberToCloudFormation(properties.snapshotCopyRetentionPeriod),SnapshotIdentifier:cdk.stringToCloudFormation(properties.snapshotIdentifier),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),VpcSecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.vpcSecurityGroupIds)}):properties}function CfnClusterPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("clusterType","ClusterType",cfn_parse.FromCloudFormation.getString(properties.ClusterType)),ret.addPropertyResult("dbName","DBName",cfn_parse.FromCloudFormation.getString(properties.DBName)),ret.addPropertyResult("masterUsername","MasterUsername",cfn_parse.FromCloudFormation.getString(properties.MasterUsername)),ret.addPropertyResult("masterUserPassword","MasterUserPassword",cfn_parse.FromCloudFormation.getString(properties.MasterUserPassword)),ret.addPropertyResult("nodeType","NodeType",cfn_parse.FromCloudFormation.getString(properties.NodeType)),ret.addPropertyResult("allowVersionUpgrade","AllowVersionUpgrade",properties.AllowVersionUpgrade!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AllowVersionUpgrade):void 0),ret.addPropertyResult("aquaConfigurationStatus","AquaConfigurationStatus",properties.AquaConfigurationStatus!=null?cfn_parse.FromCloudFormation.getString(properties.AquaConfigurationStatus):void 0),ret.addPropertyResult("automatedSnapshotRetentionPeriod","AutomatedSnapshotRetentionPeriod",properties.AutomatedSnapshotRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.AutomatedSnapshotRetentionPeriod):void 0),ret.addPropertyResult("availabilityZone","AvailabilityZone",properties.AvailabilityZone!=null?cfn_parse.FromCloudFormation.getString(properties.AvailabilityZone):void 0),ret.addPropertyResult("availabilityZoneRelocation","AvailabilityZoneRelocation",properties.AvailabilityZoneRelocation!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AvailabilityZoneRelocation):void 0),ret.addPropertyResult("availabilityZoneRelocationStatus","AvailabilityZoneRelocationStatus",properties.AvailabilityZoneRelocationStatus!=null?cfn_parse.FromCloudFormation.getString(properties.AvailabilityZoneRelocationStatus):void 0),ret.addPropertyResult("classic","Classic",properties.Classic!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Classic):void 0),ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",properties.ClusterIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier):void 0),ret.addPropertyResult("clusterParameterGroupName","ClusterParameterGroupName",properties.ClusterParameterGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterParameterGroupName):void 0),ret.addPropertyResult("clusterSecurityGroups","ClusterSecurityGroups",properties.ClusterSecurityGroups!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ClusterSecurityGroups):void 0),ret.addPropertyResult("clusterSubnetGroupName","ClusterSubnetGroupName",properties.ClusterSubnetGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterSubnetGroupName):void 0),ret.addPropertyResult("clusterVersion","ClusterVersion",properties.ClusterVersion!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterVersion):void 0),ret.addPropertyResult("deferMaintenance","DeferMaintenance",properties.DeferMaintenance!=null?cfn_parse.FromCloudFormation.getBoolean(properties.DeferMaintenance):void 0),ret.addPropertyResult("deferMaintenanceDuration","DeferMaintenanceDuration",properties.DeferMaintenanceDuration!=null?cfn_parse.FromCloudFormation.getNumber(properties.DeferMaintenanceDuration):void 0),ret.addPropertyResult("deferMaintenanceEndTime","DeferMaintenanceEndTime",properties.DeferMaintenanceEndTime!=null?cfn_parse.FromCloudFormation.getString(properties.DeferMaintenanceEndTime):void 0),ret.addPropertyResult("deferMaintenanceStartTime","DeferMaintenanceStartTime",properties.DeferMaintenanceStartTime!=null?cfn_parse.FromCloudFormation.getString(properties.DeferMaintenanceStartTime):void 0),ret.addPropertyResult("destinationRegion","DestinationRegion",properties.DestinationRegion!=null?cfn_parse.FromCloudFormation.getString(properties.DestinationRegion):void 0),ret.addPropertyResult("elasticIp","ElasticIp",properties.ElasticIp!=null?cfn_parse.FromCloudFormation.getString(properties.ElasticIp):void 0),ret.addPropertyResult("encrypted","Encrypted",properties.Encrypted!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Encrypted):void 0),ret.addPropertyResult("enhancedVpcRouting","EnhancedVpcRouting",properties.EnhancedVpcRouting!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EnhancedVpcRouting):void 0),ret.addPropertyResult("hsmClientCertificateIdentifier","HsmClientCertificateIdentifier",properties.HsmClientCertificateIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.HsmClientCertificateIdentifier):void 0),ret.addPropertyResult("hsmConfigurationIdentifier","HsmConfigurationIdentifier",properties.HsmConfigurationIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.HsmConfigurationIdentifier):void 0),ret.addPropertyResult("iamRoles","IamRoles",properties.IamRoles!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IamRoles):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse.FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("loggingProperties","LoggingProperties",properties.LoggingProperties!=null?CfnClusterLoggingPropertiesPropertyFromCloudFormation(properties.LoggingProperties):void 0),ret.addPropertyResult("maintenanceTrackName","MaintenanceTrackName",properties.MaintenanceTrackName!=null?cfn_parse.FromCloudFormation.getString(properties.MaintenanceTrackName):void 0),ret.addPropertyResult("manualSnapshotRetentionPeriod","ManualSnapshotRetentionPeriod",properties.ManualSnapshotRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.ManualSnapshotRetentionPeriod):void 0),ret.addPropertyResult("numberOfNodes","NumberOfNodes",properties.NumberOfNodes!=null?cfn_parse.FromCloudFormation.getNumber(properties.NumberOfNodes):void 0),ret.addPropertyResult("ownerAccount","OwnerAccount",properties.OwnerAccount!=null?cfn_parse.FromCloudFormation.getString(properties.OwnerAccount):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse.FromCloudFormation.getNumber(properties.Port):void 0),ret.addPropertyResult("preferredMaintenanceWindow","PreferredMaintenanceWindow",properties.PreferredMaintenanceWindow!=null?cfn_parse.FromCloudFormation.getString(properties.PreferredMaintenanceWindow):void 0),ret.addPropertyResult("publiclyAccessible","PubliclyAccessible",properties.PubliclyAccessible!=null?cfn_parse.FromCloudFormation.getBoolean(properties.PubliclyAccessible):void 0),ret.addPropertyResult("resourceAction","ResourceAction",properties.ResourceAction!=null?cfn_parse.FromCloudFormation.getString(properties.ResourceAction):void 0),ret.addPropertyResult("revisionTarget","RevisionTarget",properties.RevisionTarget!=null?cfn_parse.FromCloudFormation.getString(properties.RevisionTarget):void 0),ret.addPropertyResult("rotateEncryptionKey","RotateEncryptionKey",properties.RotateEncryptionKey!=null?cfn_parse.FromCloudFormation.getBoolean(properties.RotateEncryptionKey):void 0),ret.addPropertyResult("snapshotClusterIdentifier","SnapshotClusterIdentifier",properties.SnapshotClusterIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotClusterIdentifier):void 0),ret.addPropertyResult("snapshotCopyGrantName","SnapshotCopyGrantName",properties.SnapshotCopyGrantName!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotCopyGrantName):void 0),ret.addPropertyResult("snapshotCopyManual","SnapshotCopyManual",properties.SnapshotCopyManual!=null?cfn_parse.FromCloudFormation.getBoolean(properties.SnapshotCopyManual):void 0),ret.addPropertyResult("snapshotCopyRetentionPeriod","SnapshotCopyRetentionPeriod",properties.SnapshotCopyRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.SnapshotCopyRetentionPeriod):void 0),ret.addPropertyResult("snapshotIdentifier","SnapshotIdentifier",properties.SnapshotIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotIdentifier):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vpcSecurityGroupIds","VpcSecurityGroupIds",properties.VpcSecurityGroupIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.VpcSecurityGroupIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCluster extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnCluster.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCluster),error}cdk.requireProperty(props,"clusterType",this),cdk.requireProperty(props,"dbName",this),cdk.requireProperty(props,"masterUserPassword",this),cdk.requireProperty(props,"masterUsername",this),cdk.requireProperty(props,"nodeType",this),this.attrDeferMaintenanceIdentifier=cdk.Token.asString(this.getAtt("DeferMaintenanceIdentifier")),this.attrEndpointAddress=cdk.Token.asString(this.getAtt("Endpoint.Address")),this.attrEndpointPort=cdk.Token.asString(this.getAtt("Endpoint.Port")),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.clusterType=props.clusterType,this.dbName=props.dbName,this.masterUsername=props.masterUsername,this.masterUserPassword=props.masterUserPassword,this.nodeType=props.nodeType,this.allowVersionUpgrade=props.allowVersionUpgrade,this.aquaConfigurationStatus=props.aquaConfigurationStatus,this.automatedSnapshotRetentionPeriod=props.automatedSnapshotRetentionPeriod,this.availabilityZone=props.availabilityZone,this.availabilityZoneRelocation=props.availabilityZoneRelocation,this.availabilityZoneRelocationStatus=props.availabilityZoneRelocationStatus,this.classic=props.classic,this.clusterIdentifier=props.clusterIdentifier,this.clusterParameterGroupName=props.clusterParameterGroupName,this.clusterSecurityGroups=props.clusterSecurityGroups,this.clusterSubnetGroupName=props.clusterSubnetGroupName,this.clusterVersion=props.clusterVersion,this.deferMaintenance=props.deferMaintenance,this.deferMaintenanceDuration=props.deferMaintenanceDuration,this.deferMaintenanceEndTime=props.deferMaintenanceEndTime,this.deferMaintenanceStartTime=props.deferMaintenanceStartTime,this.destinationRegion=props.destinationRegion,this.elasticIp=props.elasticIp,this.encrypted=props.encrypted,this.enhancedVpcRouting=props.enhancedVpcRouting,this.hsmClientCertificateIdentifier=props.hsmClientCertificateIdentifier,this.hsmConfigurationIdentifier=props.hsmConfigurationIdentifier,this.iamRoles=props.iamRoles,this.kmsKeyId=props.kmsKeyId,this.loggingProperties=props.loggingProperties,this.maintenanceTrackName=props.maintenanceTrackName,this.manualSnapshotRetentionPeriod=props.manualSnapshotRetentionPeriod,this.numberOfNodes=props.numberOfNodes,this.ownerAccount=props.ownerAccount,this.port=props.port,this.preferredMaintenanceWindow=props.preferredMaintenanceWindow,this.publiclyAccessible=props.publiclyAccessible,this.resourceAction=props.resourceAction,this.revisionTarget=props.revisionTarget,this.rotateEncryptionKey=props.rotateEncryptionKey,this.snapshotClusterIdentifier=props.snapshotClusterIdentifier,this.snapshotCopyGrantName=props.snapshotCopyGrantName,this.snapshotCopyManual=props.snapshotCopyManual,this.snapshotCopyRetentionPeriod=props.snapshotCopyRetentionPeriod,this.snapshotIdentifier=props.snapshotIdentifier,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::Cluster",props.tags,{tagPropertyName:"tags"}),this.vpcSecurityGroupIds=props.vpcSecurityGroupIds,this.node.scope&&cdk.Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::Redshift::Cluster' is a stateful resource type, and you must specify a Removal Policy for it. Call 'resource.applyRemovalPolicy()'."]:[]})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterPropsFromCloudFormation(resourceProperties),ret=new CfnCluster(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",CfnCluster.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{clusterType:this.clusterType,dbName:this.dbName,masterUsername:this.masterUsername,masterUserPassword:this.masterUserPassword,nodeType:this.nodeType,allowVersionUpgrade:this.allowVersionUpgrade,aquaConfigurationStatus:this.aquaConfigurationStatus,automatedSnapshotRetentionPeriod:this.automatedSnapshotRetentionPeriod,availabilityZone:this.availabilityZone,availabilityZoneRelocation:this.availabilityZoneRelocation,availabilityZoneRelocationStatus:this.availabilityZoneRelocationStatus,classic:this.classic,clusterIdentifier:this.clusterIdentifier,clusterParameterGroupName:this.clusterParameterGroupName,clusterSecurityGroups:this.clusterSecurityGroups,clusterSubnetGroupName:this.clusterSubnetGroupName,clusterVersion:this.clusterVersion,deferMaintenance:this.deferMaintenance,deferMaintenanceDuration:this.deferMaintenanceDuration,deferMaintenanceEndTime:this.deferMaintenanceEndTime,deferMaintenanceStartTime:this.deferMaintenanceStartTime,destinationRegion:this.destinationRegion,elasticIp:this.elasticIp,encrypted:this.encrypted,enhancedVpcRouting:this.enhancedVpcRouting,hsmClientCertificateIdentifier:this.hsmClientCertificateIdentifier,hsmConfigurationIdentifier:this.hsmConfigurationIdentifier,iamRoles:this.iamRoles,kmsKeyId:this.kmsKeyId,loggingProperties:this.loggingProperties,maintenanceTrackName:this.maintenanceTrackName,manualSnapshotRetentionPeriod:this.manualSnapshotRetentionPeriod,numberOfNodes:this.numberOfNodes,ownerAccount:this.ownerAccount,port:this.port,preferredMaintenanceWindow:this.preferredMaintenanceWindow,publiclyAccessible:this.publiclyAccessible,resourceAction:this.resourceAction,revisionTarget:this.revisionTarget,rotateEncryptionKey:this.rotateEncryptionKey,snapshotClusterIdentifier:this.snapshotClusterIdentifier,snapshotCopyGrantName:this.snapshotCopyGrantName,snapshotCopyManual:this.snapshotCopyManual,snapshotCopyRetentionPeriod:this.snapshotCopyRetentionPeriod,snapshotIdentifier:this.snapshotIdentifier,tags:this.tags.renderTags(),vpcSecurityGroupIds:this.vpcSecurityGroupIds}}renderProperties(props){return cfnClusterPropsToCloudFormation(props)}}exports.CfnCluster=CfnCluster,_a=JSII_RTTI_SYMBOL_1,CfnCluster[_a]={fqn:"aws-cdk-lib.aws_redshift.CfnCluster",version:"2.51.0"},CfnCluster.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::Cluster";function CfnCluster_EndpointPropertyValidator(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("address",cdk.validateString)(properties.address)),errors.collect(cdk.propertyValidator("port",cdk.validateString)(properties.port)),errors.wrap('supplied properties not correct for "EndpointProperty"')}function cfnClusterEndpointPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_EndpointPropertyValidator(properties).assertSuccess(),{Address:cdk.stringToCloudFormation(properties.address),Port:cdk.stringToCloudFormation(properties.port)}):properties}function CfnClusterEndpointPropertyFromCloudFormation(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("address","Address",properties.Address!=null?cfn_parse.FromCloudFormation.getString(properties.Address):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse.FromCloudFormation.getString(properties.Port):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_LoggingPropertiesPropertyValidator(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("bucketName",cdk.requiredValidator)(properties.bucketName)),errors.collect(cdk.propertyValidator("bucketName",cdk.validateString)(properties.bucketName)),errors.collect(cdk.propertyValidator("s3KeyPrefix",cdk.validateString)(properties.s3KeyPrefix)),errors.wrap('supplied properties not correct for "LoggingPropertiesProperty"')}function cfnClusterLoggingPropertiesPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_LoggingPropertiesPropertyValidator(properties).assertSuccess(),{BucketName:cdk.stringToCloudFormation(properties.bucketName),S3KeyPrefix:cdk.stringToCloudFormation(properties.s3KeyPrefix)}):properties}function CfnClusterLoggingPropertiesPropertyFromCloudFormation(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("bucketName","BucketName",cfn_parse.FromCloudFormation.getString(properties.BucketName)),ret.addPropertyResult("s3KeyPrefix","S3KeyPrefix",properties.S3KeyPrefix!=null?cfn_parse.FromCloudFormation.getString(properties.S3KeyPrefix):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterParameterGroupPropsValidator(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.requiredValidator)(properties.description)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("parameterGroupFamily",cdk.requiredValidator)(properties.parameterGroupFamily)),errors.collect(cdk.propertyValidator("parameterGroupFamily",cdk.validateString)(properties.parameterGroupFamily)),errors.collect(cdk.propertyValidator("parameters",cdk.listValidator(CfnClusterParameterGroup_ParameterPropertyValidator))(properties.parameters)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnClusterParameterGroupProps"')}function cfnClusterParameterGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterParameterGroupPropsValidator(properties).assertSuccess(),{Description:cdk.stringToCloudFormation(properties.description),ParameterGroupFamily:cdk.stringToCloudFormation(properties.parameterGroupFamily),Parameters:cdk.listMapper(cfnClusterParameterGroupParameterPropertyToCloudFormation)(properties.parameters),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnClusterParameterGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",cfn_parse.FromCloudFormation.getString(properties.Description)),ret.addPropertyResult("parameterGroupFamily","ParameterGroupFamily",cfn_parse.FromCloudFormation.getString(properties.ParameterGroupFamily)),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse.FromCloudFormation.getArray(CfnClusterParameterGroupParameterPropertyFromCloudFormation)(properties.Parameters):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 CfnClusterParameterGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnClusterParameterGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterParameterGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnClusterParameterGroup),error}cdk.requireProperty(props,"description",this),cdk.requireProperty(props,"parameterGroupFamily",this),this.attrParameterGroupName=cdk.Token.asString(this.getAtt("ParameterGroupName")),this.description=props.description,this.parameterGroupFamily=props.parameterGroupFamily,this.parameters=props.parameters,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::ClusterParameterGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterParameterGroupPropsFromCloudFormation(resourceProperties),ret=new CfnClusterParameterGroup(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",CfnClusterParameterGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{description:this.description,parameterGroupFamily:this.parameterGroupFamily,parameters:this.parameters,tags:this.tags.renderTags()}}renderProperties(props){return cfnClusterParameterGroupPropsToCloudFormation(props)}}exports.CfnClusterParameterGroup=CfnClusterParameterGroup,_b=JSII_RTTI_SYMBOL_1,CfnClusterParameterGroup[_b]={fqn:"aws-cdk-lib.aws_redshift.CfnClusterParameterGroup",version:"2.51.0"},CfnClusterParameterGroup.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ClusterParameterGroup";function CfnClusterParameterGroup_ParameterPropertyValidator(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("parameterName",cdk.requiredValidator)(properties.parameterName)),errors.collect(cdk.propertyValidator("parameterName",cdk.validateString)(properties.parameterName)),errors.collect(cdk.propertyValidator("parameterValue",cdk.requiredValidator)(properties.parameterValue)),errors.collect(cdk.propertyValidator("parameterValue",cdk.validateString)(properties.parameterValue)),errors.wrap('supplied properties not correct for "ParameterProperty"')}function cfnClusterParameterGroupParameterPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterParameterGroup_ParameterPropertyValidator(properties).assertSuccess(),{ParameterName:cdk.stringToCloudFormation(properties.parameterName),ParameterValue:cdk.stringToCloudFormation(properties.parameterValue)}):properties}function CfnClusterParameterGroupParameterPropertyFromCloudFormation(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("parameterName","ParameterName",cfn_parse.FromCloudFormation.getString(properties.ParameterName)),ret.addPropertyResult("parameterValue","ParameterValue",cfn_parse.FromCloudFormation.getString(properties.ParameterValue)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterSecurityGroupPropsValidator(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.requiredValidator)(properties.description)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnClusterSecurityGroupProps"')}function cfnClusterSecurityGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterSecurityGroupPropsValidator(properties).assertSuccess(),{Description:cdk.stringToCloudFormation(properties.description),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnClusterSecurityGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",cfn_parse.FromCloudFormation.getString(properties.Description)),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnClusterSecurityGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnClusterSecurityGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterSecurityGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnClusterSecurityGroup),error}cdk.requireProperty(props,"description",this),this.description=props.description,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::ClusterSecurityGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterSecurityGroupPropsFromCloudFormation(resourceProperties),ret=new CfnClusterSecurityGroup(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",CfnClusterSecurityGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{description:this.description,tags:this.tags.renderTags()}}renderProperties(props){return cfnClusterSecurityGroupPropsToCloudFormation(props)}}exports.CfnClusterSecurityGroup=CfnClusterSecurityGroup,_c=JSII_RTTI_SYMBOL_1,CfnClusterSecurityGroup[_c]={fqn:"aws-cdk-lib.aws_redshift.CfnClusterSecurityGroup",version:"2.51.0"},CfnClusterSecurityGroup.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ClusterSecurityGroup";function CfnClusterSecurityGroupIngressPropsValidator(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("cidrip",cdk.validateString)(properties.cidrip)),errors.collect(cdk.propertyValidator("clusterSecurityGroupName",cdk.requiredValidator)(properties.clusterSecurityGroupName)),errors.collect(cdk.propertyValidator("clusterSecurityGroupName",cdk.validateString)(properties.clusterSecurityGroupName)),errors.collect(cdk.propertyValidator("ec2SecurityGroupName",cdk.validateString)(properties.ec2SecurityGroupName)),errors.collect(cdk.propertyValidator("ec2SecurityGroupOwnerId",cdk.validateString)(properties.ec2SecurityGroupOwnerId)),errors.wrap('supplied properties not correct for "CfnClusterSecurityGroupIngressProps"')}function cfnClusterSecurityGroupIngressPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterSecurityGroupIngressPropsValidator(properties).assertSuccess(),{ClusterSecurityGroupName:cdk.stringToCloudFormation(properties.clusterSecurityGroupName),CIDRIP:cdk.stringToCloudFormation(properties.cidrip),EC2SecurityGroupName:cdk.stringToCloudFormation(properties.ec2SecurityGroupName),EC2SecurityGroupOwnerId:cdk.stringToCloudFormation(properties.ec2SecurityGroupOwnerId)}):properties}function CfnClusterSecurityGroupIngressPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("clusterSecurityGroupName","ClusterSecurityGroupName",cfn_parse.FromCloudFormation.getString(properties.ClusterSecurityGroupName)),ret.addPropertyResult("cidrip","CIDRIP",properties.CIDRIP!=null?cfn_parse.FromCloudFormation.getString(properties.CIDRIP):void 0),ret.addPropertyResult("ec2SecurityGroupName","EC2SecurityGroupName",properties.EC2SecurityGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.EC2SecurityGroupName):void 0),ret.addPropertyResult("ec2SecurityGroupOwnerId","EC2SecurityGroupOwnerId",properties.EC2SecurityGroupOwnerId!=null?cfn_parse.FromCloudFormation.getString(properties.EC2SecurityGroupOwnerId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnClusterSecurityGroupIngress extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnClusterSecurityGroupIngress.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterSecurityGroupIngressProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnClusterSecurityGroupIngress),error}cdk.requireProperty(props,"clusterSecurityGroupName",this),this.clusterSecurityGroupName=props.clusterSecurityGroupName,this.cidrip=props.cidrip,this.ec2SecurityGroupName=props.ec2SecurityGroupName,this.ec2SecurityGroupOwnerId=props.ec2SecurityGroupOwnerId}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterSecurityGroupIngressPropsFromCloudFormation(resourceProperties),ret=new CfnClusterSecurityGroupIngress(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",CfnClusterSecurityGroupIngress.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{clusterSecurityGroupName:this.clusterSecurityGroupName,cidrip:this.cidrip,ec2SecurityGroupName:this.ec2SecurityGroupName,ec2SecurityGroupOwnerId:this.ec2SecurityGroupOwnerId}}renderProperties(props){return cfnClusterSecurityGroupIngressPropsToCloudFormation(props)}}exports.CfnClusterSecurityGroupIngress=CfnClusterSecurityGroupIngress,_d=JSII_RTTI_SYMBOL_1,CfnClusterSecurityGroupIngress[_d]={fqn:"aws-cdk-lib.aws_redshift.CfnClusterSecurityGroupIngress",version:"2.51.0"},CfnClusterSecurityGroupIngress.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ClusterSecurityGroupIngress";function CfnClusterSubnetGroupPropsValidator(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.requiredValidator)(properties.description)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("subnetIds",cdk.requiredValidator)(properties.subnetIds)),errors.collect(cdk.propertyValidator("subnetIds",cdk.listValidator(cdk.validateString))(properties.subnetIds)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnClusterSubnetGroupProps"')}function cfnClusterSubnetGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterSubnetGroupPropsValidator(properties).assertSuccess(),{Description:cdk.stringToCloudFormation(properties.description),SubnetIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.subnetIds),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnClusterSubnetGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",cfn_parse.FromCloudFormation.getString(properties.Description)),ret.addPropertyResult("subnetIds","SubnetIds",cfn_parse.FromCloudFormation.getStringArray(properties.SubnetIds)),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnClusterSubnetGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnClusterSubnetGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterSubnetGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnClusterSubnetGroup),error}cdk.requireProperty(props,"description",this),cdk.requireProperty(props,"subnetIds",this),this.attrClusterSubnetGroupName=cdk.Token.asString(this.getAtt("ClusterSubnetGroupName")),this.description=props.description,this.subnetIds=props.subnetIds,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::ClusterSubnetGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterSubnetGroupPropsFromCloudFormation(resourceProperties),ret=new CfnClusterSubnetGroup(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",CfnClusterSubnetGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{description:this.description,subnetIds:this.subnetIds,tags:this.tags.renderTags()}}renderProperties(props){return cfnClusterSubnetGroupPropsToCloudFormation(props)}}exports.CfnClusterSubnetGroup=CfnClusterSubnetGroup,_e=JSII_RTTI_SYMBOL_1,CfnClusterSubnetGroup[_e]={fqn:"aws-cdk-lib.aws_redshift.CfnClusterSubnetGroup",version:"2.51.0"},CfnClusterSubnetGroup.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ClusterSubnetGroup";function CfnEndpointAccessPropsValidator(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("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("endpointName",cdk.requiredValidator)(properties.endpointName)),errors.collect(cdk.propertyValidator("endpointName",cdk.validateString)(properties.endpointName)),errors.collect(cdk.propertyValidator("resourceOwner",cdk.validateString)(properties.resourceOwner)),errors.collect(cdk.propertyValidator("subnetGroupName",cdk.requiredValidator)(properties.subnetGroupName)),errors.collect(cdk.propertyValidator("subnetGroupName",cdk.validateString)(properties.subnetGroupName)),errors.collect(cdk.propertyValidator("vpcEndpoint",cdk.validateObject)(properties.vpcEndpoint)),errors.collect(cdk.propertyValidator("vpcSecurityGroupIds",cdk.requiredValidator)(properties.vpcSecurityGroupIds)),errors.collect(cdk.propertyValidator("vpcSecurityGroupIds",cdk.listValidator(cdk.validateString))(properties.vpcSecurityGroupIds)),errors.collect(cdk.propertyValidator("vpcSecurityGroups",cdk.listValidator(CfnEndpointAccess_VpcSecurityGroupPropertyValidator))(properties.vpcSecurityGroups)),errors.wrap('supplied properties not correct for "CfnEndpointAccessProps"')}function cfnEndpointAccessPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnEndpointAccessPropsValidator(properties).assertSuccess(),{ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier),EndpointName:cdk.stringToCloudFormation(properties.endpointName),SubnetGroupName:cdk.stringToCloudFormation(properties.subnetGroupName),VpcSecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.vpcSecurityGroupIds),ResourceOwner:cdk.stringToCloudFormation(properties.resourceOwner),VpcEndpoint:cdk.objectToCloudFormation(properties.vpcEndpoint),VpcSecurityGroups:cdk.listMapper(cfnEndpointAccessVpcSecurityGroupPropertyToCloudFormation)(properties.vpcSecurityGroups)}):properties}function CfnEndpointAccessPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addPropertyResult("endpointName","EndpointName",cfn_parse.FromCloudFormation.getString(properties.EndpointName)),ret.addPropertyResult("subnetGroupName","SubnetGroupName",cfn_parse.FromCloudFormation.getString(properties.SubnetGroupName)),ret.addPropertyResult("vpcSecurityGroupIds","VpcSecurityGroupIds",cfn_parse.FromCloudFormation.getStringArray(properties.VpcSecurityGroupIds)),ret.addPropertyResult("resourceOwner","ResourceOwner",properties.ResourceOwner!=null?cfn_parse.FromCloudFormation.getString(properties.ResourceOwner):void 0),ret.addPropertyResult("vpcEndpoint","VpcEndpoint",properties.VpcEndpoint!=null?cfn_parse.FromCloudFormation.getAny(properties.VpcEndpoint):void 0),ret.addPropertyResult("vpcSecurityGroups","VpcSecurityGroups",properties.VpcSecurityGroups!=null?cfn_parse.FromCloudFormation.getArray(CfnEndpointAccessVpcSecurityGroupPropertyFromCloudFormation)(properties.VpcSecurityGroups):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnEndpointAccess extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnEndpointAccess.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnEndpointAccessProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEndpointAccess),error}cdk.requireProperty(props,"clusterIdentifier",this),cdk.requireProperty(props,"endpointName",this),cdk.requireProperty(props,"subnetGroupName",this),cdk.requireProperty(props,"vpcSecurityGroupIds",this),this.attrAddress=cdk.Token.asString(this.getAtt("Address")),this.attrEndpointCreateTime=cdk.Token.asString(this.getAtt("EndpointCreateTime")),this.attrEndpointStatus=cdk.Token.asString(this.getAtt("EndpointStatus")),this.attrPort=cdk.Token.asNumber(this.getAtt("Port")),this.clusterIdentifier=props.clusterIdentifier,this.endpointName=props.endpointName,this.subnetGroupName=props.subnetGroupName,this.vpcSecurityGroupIds=props.vpcSecurityGroupIds,this.resourceOwner=props.resourceOwner,this.vpcEndpoint=props.vpcEndpoint,this.vpcSecurityGroups=props.vpcSecurityGroups}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEndpointAccessPropsFromCloudFormation(resourceProperties),ret=new CfnEndpointAccess(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",CfnEndpointAccess.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{clusterIdentifier:this.clusterIdentifier,endpointName:this.endpointName,subnetGroupName:this.subnetGroupName,vpcSecurityGroupIds:this.vpcSecurityGroupIds,resourceOwner:this.resourceOwner,vpcEndpoint:this.vpcEndpoint,vpcSecurityGroups:this.vpcSecurityGroups}}renderProperties(props){return cfnEndpointAccessPropsToCloudFormation(props)}}exports.CfnEndpointAccess=CfnEndpointAccess,_f=JSII_RTTI_SYMBOL_1,CfnEndpointAccess[_f]={fqn:"aws-cdk-lib.aws_redshift.CfnEndpointAccess",version:"2.51.0"},CfnEndpointAccess.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::EndpointAccess";function CfnEndpointAccess_VpcSecurityGroupPropertyValidator(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("status",cdk.validateString)(properties.status)),errors.collect(cdk.propertyValidator("vpcSecurityGroupId",cdk.validateString)(properties.vpcSecurityGroupId)),errors.wrap('supplied properties not correct for "VpcSecurityGroupProperty"')}function cfnEndpointAccessVpcSecurityGroupPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnEndpointAccess_VpcSecurityGroupPropertyValidator(properties).assertSuccess(),{Status:cdk.stringToCloudFormation(properties.status),VpcSecurityGroupId:cdk.stringToCloudFormation(properties.vpcSecurityGroupId)}):properties}function CfnEndpointAccessVpcSecurityGroupPropertyFromCloudFormation(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("status","Status",properties.Status!=null?cfn_parse.FromCloudFormation.getString(properties.Status):void 0),ret.addPropertyResult("vpcSecurityGroupId","VpcSecurityGroupId",properties.VpcSecurityGroupId!=null?cfn_parse.FromCloudFormation.getString(properties.VpcSecurityGroupId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointAuthorizationPropsValidator(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("account",cdk.requiredValidator)(properties.account)),errors.collect(cdk.propertyValidator("account",cdk.validateString)(properties.account)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("force",cdk.validateBoolean)(properties.force)),errors.collect(cdk.propertyValidator("vpcIds",cdk.listValidator(cdk.validateString))(properties.vpcIds)),errors.wrap('supplied properties not correct for "CfnEndpointAuthorizationProps"')}function cfnEndpointAuthorizationPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnEndpointAuthorizationPropsValidator(properties).assertSuccess(),{Account:cdk.stringToCloudFormation(properties.account),ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier),Force:cdk.booleanToCloudFormation(properties.force),VpcIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.vpcIds)}):properties}function CfnEndpointAuthorizationPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("account","Account",cfn_parse.FromCloudFormation.getString(properties.Account)),ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addPropertyResult("force","Force",properties.Force!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Force):void 0),ret.addPropertyResult("vpcIds","VpcIds",properties.VpcIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.VpcIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnEndpointAuthorization extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnEndpointAuthorization.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnEndpointAuthorizationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEndpointAuthorization),error}cdk.requireProperty(props,"account",this),cdk.requireProperty(props,"clusterIdentifier",this),this.attrAllowedAllVpCs=this.getAtt("AllowedAllVPCs"),this.attrAllowedVpCs=cdk.Token.asList(this.getAtt("AllowedVPCs")),this.attrAuthorizeTime=cdk.Token.asString(this.getAtt("AuthorizeTime")),this.attrClusterStatus=cdk.Token.asString(this.getAtt("ClusterStatus")),this.attrEndpointCount=cdk.Token.asNumber(this.getAtt("EndpointCount")),this.attrGrantee=cdk.Token.asString(this.getAtt("Grantee")),this.attrGrantor=cdk.Token.asString(this.getAtt("Grantor")),this.attrStatus=cdk.Token.asString(this.getAtt("Status")),this.account=props.account,this.clusterIdentifier=props.clusterIdentifier,this.force=props.force,this.vpcIds=props.vpcIds}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEndpointAuthorizationPropsFromCloudFormation(resourceProperties),ret=new CfnEndpointAuthorization(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",CfnEndpointAuthorization.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{account:this.account,clusterIdentifier:this.clusterIdentifier,force:this.force,vpcIds:this.vpcIds}}renderProperties(props){return cfnEndpointAuthorizationPropsToCloudFormation(props)}}exports.CfnEndpointAuthorization=CfnEndpointAuthorization,_g=JSII_RTTI_SYMBOL_1,CfnEndpointAuthorization[_g]={fqn:"aws-cdk-lib.aws_redshift.CfnEndpointAuthorization",version:"2.51.0"},CfnEndpointAuthorization.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::EndpointAuthorization";function CfnEventSubscriptionPropsValidator(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("enabled",cdk.validateBoolean)(properties.enabled)),errors.collect(cdk.propertyValidator("eventCategories",cdk.listValidator(cdk.validateString))(properties.eventCategories)),errors.collect(cdk.propertyValidator("severity",cdk.validateString)(properties.severity)),errors.collect(cdk.propertyValidator("snsTopicArn",cdk.validateString)(properties.snsTopicArn)),errors.collect(cdk.propertyValidator("sourceIds",cdk.listValidator(cdk.validateString))(properties.sourceIds)),errors.collect(cdk.propertyValidator("sourceType",cdk.validateString)(properties.sourceType)),errors.collect(cdk.propertyValidator("subscriptionName",cdk.requiredValidator)(properties.subscriptionName)),errors.collect(cdk.propertyValidator("subscriptionName",cdk.validateString)(properties.subscriptionName)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnEventSubscriptionProps"')}function cfnEventSubscriptionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnEventSubscriptionPropsValidator(properties).assertSuccess(),{SubscriptionName:cdk.stringToCloudFormation(properties.subscriptionName),Enabled:cdk.booleanToCloudFormation(properties.enabled),EventCategories:cdk.listMapper(cdk.stringToCloudFormation)(properties.eventCategories),Severity:cdk.stringToCloudFormation(properties.severity),SnsTopicArn:cdk.stringToCloudFormation(properties.snsTopicArn),SourceIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.sourceIds),SourceType:cdk.stringToCloudFormation(properties.sourceType),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnEventSubscriptionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("subscriptionName","SubscriptionName",cfn_parse.FromCloudFormation.getString(properties.SubscriptionName)),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("eventCategories","EventCategories",properties.EventCategories!=null?cfn_parse.FromCloudFormation.getStringArray(properties.EventCategories):void 0),ret.addPropertyResult("severity","Severity",properties.Severity!=null?cfn_parse.FromCloudFormation.getString(properties.Severity):void 0),ret.addPropertyResult("snsTopicArn","SnsTopicArn",properties.SnsTopicArn!=null?cfn_parse.FromCloudFormation.getString(properties.SnsTopicArn):void 0),ret.addPropertyResult("sourceIds","SourceIds",properties.SourceIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SourceIds):void 0),ret.addPropertyResult("sourceType","SourceType",properties.SourceType!=null?cfn_parse.FromCloudFormation.getString(properties.SourceType):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 CfnEventSubscription extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnEventSubscription.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnEventSubscriptionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEventSubscription),error}cdk.requireProperty(props,"subscriptionName",this),this.attrCustSubscriptionId=cdk.Token.asString(this.getAtt("CustSubscriptionId")),this.attrCustomerAwsId=cdk.Token.asString(this.getAtt("CustomerAwsId")),this.attrEventCategoriesList=cdk.Token.asList(this.getAtt("EventCategoriesList")),this.attrSourceIdsList=cdk.Token.asList(this.getAtt("SourceIdsList")),this.attrStatus=cdk.Token.asString(this.getAtt("Status")),this.attrSubscriptionCreationTime=cdk.Token.asString(this.getAtt("SubscriptionCreationTime")),this.subscriptionName=props.subscriptionName,this.enabled=props.enabled,this.eventCategories=props.eventCategories,this.severity=props.severity,this.snsTopicArn=props.snsTopicArn,this.sourceIds=props.sourceIds,this.sourceType=props.sourceType,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::EventSubscription",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEventSubscriptionPropsFromCloudFormation(resourceProperties),ret=new CfnEventSubscription(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",CfnEventSubscription.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{subscriptionName:this.subscriptionName,enabled:this.enabled,eventCategories:this.eventCategories,severity:this.severity,snsTopicArn:this.snsTopicArn,sourceIds:this.sourceIds,sourceType:this.sourceType,tags:this.tags.renderTags()}}renderProperties(props){return cfnEventSubscriptionPropsToCloudFormation(props)}}exports.CfnEventSubscription=CfnEventSubscription,_h=JSII_RTTI_SYMBOL_1,CfnEventSubscription[_h]={fqn:"aws-cdk-lib.aws_redshift.CfnEventSubscription",version:"2.51.0"},CfnEventSubscription.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::EventSubscription";function CfnScheduledActionPropsValidator(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("enable",cdk.validateBoolean)(properties.enable)),errors.collect(cdk.propertyValidator("endTime",cdk.validateString)(properties.endTime)),errors.collect(cdk.propertyValidator("iamRole",cdk.validateString)(properties.iamRole)),errors.collect(cdk.propertyValidator("schedule",cdk.validateString)(properties.schedule)),errors.collect(cdk.propertyValidator("scheduledActionDescription",cdk.validateString)(properties.scheduledActionDescription)),errors.collect(cdk.propertyValidator("scheduledActionName",cdk.requiredValidator)(properties.scheduledActionName)),errors.collect(cdk.propertyValidator("scheduledActionName",cdk.validateString)(properties.scheduledActionName)),errors.collect(cdk.propertyValidator("startTime",cdk.validateString)(properties.startTime)),errors.collect(cdk.propertyValidator("targetAction",CfnScheduledAction_ScheduledActionTypePropertyValidator)(properties.targetAction)),errors.wrap('supplied properties not correct for "CfnScheduledActionProps"')}function cfnScheduledActionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledActionPropsValidator(properties).assertSuccess(),{ScheduledActionName:cdk.stringToCloudFormation(properties.scheduledActionName),Enable:cdk.booleanToCloudFormation(properties.enable),EndTime:cdk.stringToCloudFormation(properties.endTime),IamRole:cdk.stringToCloudFormation(properties.iamRole),Schedule:cdk.stringToCloudFormation(properties.schedule),ScheduledActionDescription:cdk.stringToCloudFormation(properties.scheduledActionDescription),StartTime:cdk.stringToCloudFormation(properties.startTime),TargetAction:cfnScheduledActionScheduledActionTypePropertyToCloudFormation(properties.targetAction)}):properties}function CfnScheduledActionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("scheduledActionName","ScheduledActionName",cfn_parse.FromCloudFormation.getString(properties.ScheduledActionName)),ret.addPropertyResult("enable","Enable",properties.Enable!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Enable):void 0),ret.addPropertyResult("endTime","EndTime",properties.EndTime!=null?cfn_parse.FromCloudFormation.getString(properties.EndTime):void 0),ret.addPropertyResult("iamRole","IamRole",properties.IamRole!=null?cfn_parse.FromCloudFormation.getString(properties.IamRole):void 0),ret.addPropertyResult("schedule","Schedule",properties.Schedule!=null?cfn_parse.FromCloudFormation.getString(properties.Schedule):void 0),ret.addPropertyResult("scheduledActionDescription","ScheduledActionDescription",properties.ScheduledActionDescription!=null?cfn_parse.FromCloudFormation.getString(properties.ScheduledActionDescription):void 0),ret.addPropertyResult("startTime","StartTime",properties.StartTime!=null?cfn_parse.FromCloudFormation.getString(properties.StartTime):void 0),ret.addPropertyResult("targetAction","TargetAction",properties.TargetAction!=null?CfnScheduledActionScheduledActionTypePropertyFromCloudFormation(properties.TargetAction):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnScheduledAction extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnScheduledAction.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnScheduledActionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnScheduledAction),error}cdk.requireProperty(props,"scheduledActionName",this),this.attrNextInvocations=cdk.Token.asList(this.getAtt("NextInvocations")),this.attrState=cdk.Token.asString(this.getAtt("State")),this.scheduledActionName=props.scheduledActionName,this.enable=props.enable,this.endTime=props.endTime,this.iamRole=props.iamRole,this.schedule=props.schedule,this.scheduledActionDescription=props.scheduledActionDescription,this.startTime=props.startTime,this.targetAction=props.targetAction}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnScheduledActionPropsFromCloudFormation(resourceProperties),ret=new CfnScheduledAction(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",CfnScheduledAction.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{scheduledActionName:this.scheduledActionName,enable:this.enable,endTime:this.endTime,iamRole:this.iamRole,schedule:this.schedule,scheduledActionDescription:this.scheduledActionDescription,startTime:this.startTime,targetAction:this.targetAction}}renderProperties(props){return cfnScheduledActionPropsToCloudFormation(props)}}exports.CfnScheduledAction=CfnScheduledAction,_j=JSII_RTTI_SYMBOL_1,CfnScheduledAction[_j]={fqn:"aws-cdk-lib.aws_redshift.CfnScheduledAction",version:"2.51.0"},CfnScheduledAction.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ScheduledAction";function CfnScheduledAction_PauseClusterMessagePropertyValidator(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("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.wrap('supplied properties not correct for "PauseClusterMessageProperty"')}function cfnScheduledActionPauseClusterMessagePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledAction_PauseClusterMessagePropertyValidator(properties).assertSuccess(),{ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier)}):properties}function CfnScheduledActionPauseClusterMessagePropertyFromCloudFormation(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("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledAction_ResizeClusterMessagePropertyValidator(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("classic",cdk.validateBoolean)(properties.classic)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterType",cdk.validateString)(properties.clusterType)),errors.collect(cdk.propertyValidator("nodeType",cdk.validateString)(properties.nodeType)),errors.collect(cdk.propertyValidator("numberOfNodes",cdk.validateNumber)(properties.numberOfNodes)),errors.wrap('supplied properties not correct for "ResizeClusterMessageProperty"')}function cfnScheduledActionResizeClusterMessagePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledAction_ResizeClusterMessagePropertyValidator(properties).assertSuccess(),{Classic:cdk.booleanToCloudFormation(properties.classic),ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier),ClusterType:cdk.stringToCloudFormation(properties.clusterType),NodeType:cdk.stringToCloudFormation(properties.nodeType),NumberOfNodes:cdk.numberToCloudFormation(properties.numberOfNodes)}):properties}function CfnScheduledActionResizeClusterMessagePropertyFromCloudFormation(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("classic","Classic",properties.Classic!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Classic):void 0),ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addPropertyResult("clusterType","ClusterType",properties.ClusterType!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterType):void 0),ret.addPropertyResult("nodeType","NodeType",properties.NodeType!=null?cfn_parse.FromCloudFormation.getString(properties.NodeType):void 0),ret.addPropertyResult("numberOfNodes","NumberOfNodes",properties.NumberOfNodes!=null?cfn_parse.FromCloudFormation.getNumber(properties.NumberOfNodes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledAction_ResumeClusterMessagePropertyValidator(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("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.wrap('supplied properties not correct for "ResumeClusterMessageProperty"')}function cfnScheduledActionResumeClusterMessagePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledAction_ResumeClusterMessagePropertyValidator(properties).assertSuccess(),{ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier)}):properties}function CfnScheduledActionResumeClusterMessagePropertyFromCloudFormation(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("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledAction_ScheduledActionTypePropertyValidator(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("pauseCluster",CfnScheduledAction_PauseClusterMessagePropertyValidator)(properties.pauseCluster)),errors.collect(cdk.propertyValidator("resizeCluster",CfnScheduledAction_ResizeClusterMessagePropertyValidator)(properties.resizeCluster)),errors.collect(cdk.propertyValidator("resumeCluster",CfnScheduledAction_ResumeClusterMessagePropertyValidator)(properties.resumeCluster)),errors.wrap('supplied properties not correct for "ScheduledActionTypeProperty"')}function cfnScheduledActionScheduledActionTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledAction_ScheduledActionTypePropertyValidator(properties).assertSuccess(),{PauseCluster:cfnScheduledActionPauseClusterMessagePropertyToCloudFormation(properties.pauseCluster),ResizeCluster:cfnScheduledActionResizeClusterMessagePropertyToCloudFormation(properties.resizeCluster),ResumeCluster:cfnScheduledActionResumeClusterMessagePropertyToCloudFormation(properties.resumeCluster)}):properties}function CfnScheduledActionScheduledActionTypePropertyFromCloudFormation(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("pauseCluster","PauseCluster",properties.PauseCluster!=null?CfnScheduledActionPauseClusterMessagePropertyFromCloudFormation(properties.PauseCluster):void 0),ret.addPropertyResult("resizeCluster","ResizeCluster",properties.ResizeCluster!=null?CfnScheduledActionResizeClusterMessagePropertyFromCloudFormation(properties.ResizeCluster):void 0),ret.addPropertyResult("resumeCluster","ResumeCluster",properties.ResumeCluster!=null?CfnScheduledActionResumeClusterMessagePropertyFromCloudFormation(properties.ResumeCluster):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}
1
+ "use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnScheduledAction=exports.CfnEventSubscription=exports.CfnEndpointAuthorization=exports.CfnEndpointAccess=exports.CfnClusterSubnetGroup=exports.CfnClusterSecurityGroupIngress=exports.CfnClusterSecurityGroup=exports.CfnClusterParameterGroup=exports.CfnCluster=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 CfnClusterPropsValidator(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("allowVersionUpgrade",cdk.validateBoolean)(properties.allowVersionUpgrade)),errors.collect(cdk.propertyValidator("aquaConfigurationStatus",cdk.validateString)(properties.aquaConfigurationStatus)),errors.collect(cdk.propertyValidator("automatedSnapshotRetentionPeriod",cdk.validateNumber)(properties.automatedSnapshotRetentionPeriod)),errors.collect(cdk.propertyValidator("availabilityZone",cdk.validateString)(properties.availabilityZone)),errors.collect(cdk.propertyValidator("availabilityZoneRelocation",cdk.validateBoolean)(properties.availabilityZoneRelocation)),errors.collect(cdk.propertyValidator("availabilityZoneRelocationStatus",cdk.validateString)(properties.availabilityZoneRelocationStatus)),errors.collect(cdk.propertyValidator("classic",cdk.validateBoolean)(properties.classic)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterParameterGroupName",cdk.validateString)(properties.clusterParameterGroupName)),errors.collect(cdk.propertyValidator("clusterSecurityGroups",cdk.listValidator(cdk.validateString))(properties.clusterSecurityGroups)),errors.collect(cdk.propertyValidator("clusterSubnetGroupName",cdk.validateString)(properties.clusterSubnetGroupName)),errors.collect(cdk.propertyValidator("clusterType",cdk.requiredValidator)(properties.clusterType)),errors.collect(cdk.propertyValidator("clusterType",cdk.validateString)(properties.clusterType)),errors.collect(cdk.propertyValidator("clusterVersion",cdk.validateString)(properties.clusterVersion)),errors.collect(cdk.propertyValidator("dbName",cdk.requiredValidator)(properties.dbName)),errors.collect(cdk.propertyValidator("dbName",cdk.validateString)(properties.dbName)),errors.collect(cdk.propertyValidator("deferMaintenance",cdk.validateBoolean)(properties.deferMaintenance)),errors.collect(cdk.propertyValidator("deferMaintenanceDuration",cdk.validateNumber)(properties.deferMaintenanceDuration)),errors.collect(cdk.propertyValidator("deferMaintenanceEndTime",cdk.validateString)(properties.deferMaintenanceEndTime)),errors.collect(cdk.propertyValidator("deferMaintenanceStartTime",cdk.validateString)(properties.deferMaintenanceStartTime)),errors.collect(cdk.propertyValidator("destinationRegion",cdk.validateString)(properties.destinationRegion)),errors.collect(cdk.propertyValidator("elasticIp",cdk.validateString)(properties.elasticIp)),errors.collect(cdk.propertyValidator("encrypted",cdk.validateBoolean)(properties.encrypted)),errors.collect(cdk.propertyValidator("enhancedVpcRouting",cdk.validateBoolean)(properties.enhancedVpcRouting)),errors.collect(cdk.propertyValidator("hsmClientCertificateIdentifier",cdk.validateString)(properties.hsmClientCertificateIdentifier)),errors.collect(cdk.propertyValidator("hsmConfigurationIdentifier",cdk.validateString)(properties.hsmConfigurationIdentifier)),errors.collect(cdk.propertyValidator("iamRoles",cdk.listValidator(cdk.validateString))(properties.iamRoles)),errors.collect(cdk.propertyValidator("kmsKeyId",cdk.validateString)(properties.kmsKeyId)),errors.collect(cdk.propertyValidator("loggingProperties",CfnCluster_LoggingPropertiesPropertyValidator)(properties.loggingProperties)),errors.collect(cdk.propertyValidator("maintenanceTrackName",cdk.validateString)(properties.maintenanceTrackName)),errors.collect(cdk.propertyValidator("manualSnapshotRetentionPeriod",cdk.validateNumber)(properties.manualSnapshotRetentionPeriod)),errors.collect(cdk.propertyValidator("masterUserPassword",cdk.requiredValidator)(properties.masterUserPassword)),errors.collect(cdk.propertyValidator("masterUserPassword",cdk.validateString)(properties.masterUserPassword)),errors.collect(cdk.propertyValidator("masterUsername",cdk.requiredValidator)(properties.masterUsername)),errors.collect(cdk.propertyValidator("masterUsername",cdk.validateString)(properties.masterUsername)),errors.collect(cdk.propertyValidator("nodeType",cdk.requiredValidator)(properties.nodeType)),errors.collect(cdk.propertyValidator("nodeType",cdk.validateString)(properties.nodeType)),errors.collect(cdk.propertyValidator("numberOfNodes",cdk.validateNumber)(properties.numberOfNodes)),errors.collect(cdk.propertyValidator("ownerAccount",cdk.validateString)(properties.ownerAccount)),errors.collect(cdk.propertyValidator("port",cdk.validateNumber)(properties.port)),errors.collect(cdk.propertyValidator("preferredMaintenanceWindow",cdk.validateString)(properties.preferredMaintenanceWindow)),errors.collect(cdk.propertyValidator("publiclyAccessible",cdk.validateBoolean)(properties.publiclyAccessible)),errors.collect(cdk.propertyValidator("resourceAction",cdk.validateString)(properties.resourceAction)),errors.collect(cdk.propertyValidator("revisionTarget",cdk.validateString)(properties.revisionTarget)),errors.collect(cdk.propertyValidator("rotateEncryptionKey",cdk.validateBoolean)(properties.rotateEncryptionKey)),errors.collect(cdk.propertyValidator("snapshotClusterIdentifier",cdk.validateString)(properties.snapshotClusterIdentifier)),errors.collect(cdk.propertyValidator("snapshotCopyGrantName",cdk.validateString)(properties.snapshotCopyGrantName)),errors.collect(cdk.propertyValidator("snapshotCopyManual",cdk.validateBoolean)(properties.snapshotCopyManual)),errors.collect(cdk.propertyValidator("snapshotCopyRetentionPeriod",cdk.validateNumber)(properties.snapshotCopyRetentionPeriod)),errors.collect(cdk.propertyValidator("snapshotIdentifier",cdk.validateString)(properties.snapshotIdentifier)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("vpcSecurityGroupIds",cdk.listValidator(cdk.validateString))(properties.vpcSecurityGroupIds)),errors.wrap('supplied properties not correct for "CfnClusterProps"')}function cfnClusterPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterPropsValidator(properties).assertSuccess(),{ClusterType:cdk.stringToCloudFormation(properties.clusterType),DBName:cdk.stringToCloudFormation(properties.dbName),MasterUsername:cdk.stringToCloudFormation(properties.masterUsername),MasterUserPassword:cdk.stringToCloudFormation(properties.masterUserPassword),NodeType:cdk.stringToCloudFormation(properties.nodeType),AllowVersionUpgrade:cdk.booleanToCloudFormation(properties.allowVersionUpgrade),AquaConfigurationStatus:cdk.stringToCloudFormation(properties.aquaConfigurationStatus),AutomatedSnapshotRetentionPeriod:cdk.numberToCloudFormation(properties.automatedSnapshotRetentionPeriod),AvailabilityZone:cdk.stringToCloudFormation(properties.availabilityZone),AvailabilityZoneRelocation:cdk.booleanToCloudFormation(properties.availabilityZoneRelocation),AvailabilityZoneRelocationStatus:cdk.stringToCloudFormation(properties.availabilityZoneRelocationStatus),Classic:cdk.booleanToCloudFormation(properties.classic),ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier),ClusterParameterGroupName:cdk.stringToCloudFormation(properties.clusterParameterGroupName),ClusterSecurityGroups:cdk.listMapper(cdk.stringToCloudFormation)(properties.clusterSecurityGroups),ClusterSubnetGroupName:cdk.stringToCloudFormation(properties.clusterSubnetGroupName),ClusterVersion:cdk.stringToCloudFormation(properties.clusterVersion),DeferMaintenance:cdk.booleanToCloudFormation(properties.deferMaintenance),DeferMaintenanceDuration:cdk.numberToCloudFormation(properties.deferMaintenanceDuration),DeferMaintenanceEndTime:cdk.stringToCloudFormation(properties.deferMaintenanceEndTime),DeferMaintenanceStartTime:cdk.stringToCloudFormation(properties.deferMaintenanceStartTime),DestinationRegion:cdk.stringToCloudFormation(properties.destinationRegion),ElasticIp:cdk.stringToCloudFormation(properties.elasticIp),Encrypted:cdk.booleanToCloudFormation(properties.encrypted),EnhancedVpcRouting:cdk.booleanToCloudFormation(properties.enhancedVpcRouting),HsmClientCertificateIdentifier:cdk.stringToCloudFormation(properties.hsmClientCertificateIdentifier),HsmConfigurationIdentifier:cdk.stringToCloudFormation(properties.hsmConfigurationIdentifier),IamRoles:cdk.listMapper(cdk.stringToCloudFormation)(properties.iamRoles),KmsKeyId:cdk.stringToCloudFormation(properties.kmsKeyId),LoggingProperties:cfnClusterLoggingPropertiesPropertyToCloudFormation(properties.loggingProperties),MaintenanceTrackName:cdk.stringToCloudFormation(properties.maintenanceTrackName),ManualSnapshotRetentionPeriod:cdk.numberToCloudFormation(properties.manualSnapshotRetentionPeriod),NumberOfNodes:cdk.numberToCloudFormation(properties.numberOfNodes),OwnerAccount:cdk.stringToCloudFormation(properties.ownerAccount),Port:cdk.numberToCloudFormation(properties.port),PreferredMaintenanceWindow:cdk.stringToCloudFormation(properties.preferredMaintenanceWindow),PubliclyAccessible:cdk.booleanToCloudFormation(properties.publiclyAccessible),ResourceAction:cdk.stringToCloudFormation(properties.resourceAction),RevisionTarget:cdk.stringToCloudFormation(properties.revisionTarget),RotateEncryptionKey:cdk.booleanToCloudFormation(properties.rotateEncryptionKey),SnapshotClusterIdentifier:cdk.stringToCloudFormation(properties.snapshotClusterIdentifier),SnapshotCopyGrantName:cdk.stringToCloudFormation(properties.snapshotCopyGrantName),SnapshotCopyManual:cdk.booleanToCloudFormation(properties.snapshotCopyManual),SnapshotCopyRetentionPeriod:cdk.numberToCloudFormation(properties.snapshotCopyRetentionPeriod),SnapshotIdentifier:cdk.stringToCloudFormation(properties.snapshotIdentifier),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags),VpcSecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.vpcSecurityGroupIds)}):properties}function CfnClusterPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("clusterType","ClusterType",cfn_parse.FromCloudFormation.getString(properties.ClusterType)),ret.addPropertyResult("dbName","DBName",cfn_parse.FromCloudFormation.getString(properties.DBName)),ret.addPropertyResult("masterUsername","MasterUsername",cfn_parse.FromCloudFormation.getString(properties.MasterUsername)),ret.addPropertyResult("masterUserPassword","MasterUserPassword",cfn_parse.FromCloudFormation.getString(properties.MasterUserPassword)),ret.addPropertyResult("nodeType","NodeType",cfn_parse.FromCloudFormation.getString(properties.NodeType)),ret.addPropertyResult("allowVersionUpgrade","AllowVersionUpgrade",properties.AllowVersionUpgrade!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AllowVersionUpgrade):void 0),ret.addPropertyResult("aquaConfigurationStatus","AquaConfigurationStatus",properties.AquaConfigurationStatus!=null?cfn_parse.FromCloudFormation.getString(properties.AquaConfigurationStatus):void 0),ret.addPropertyResult("automatedSnapshotRetentionPeriod","AutomatedSnapshotRetentionPeriod",properties.AutomatedSnapshotRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.AutomatedSnapshotRetentionPeriod):void 0),ret.addPropertyResult("availabilityZone","AvailabilityZone",properties.AvailabilityZone!=null?cfn_parse.FromCloudFormation.getString(properties.AvailabilityZone):void 0),ret.addPropertyResult("availabilityZoneRelocation","AvailabilityZoneRelocation",properties.AvailabilityZoneRelocation!=null?cfn_parse.FromCloudFormation.getBoolean(properties.AvailabilityZoneRelocation):void 0),ret.addPropertyResult("availabilityZoneRelocationStatus","AvailabilityZoneRelocationStatus",properties.AvailabilityZoneRelocationStatus!=null?cfn_parse.FromCloudFormation.getString(properties.AvailabilityZoneRelocationStatus):void 0),ret.addPropertyResult("classic","Classic",properties.Classic!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Classic):void 0),ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",properties.ClusterIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier):void 0),ret.addPropertyResult("clusterParameterGroupName","ClusterParameterGroupName",properties.ClusterParameterGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterParameterGroupName):void 0),ret.addPropertyResult("clusterSecurityGroups","ClusterSecurityGroups",properties.ClusterSecurityGroups!=null?cfn_parse.FromCloudFormation.getStringArray(properties.ClusterSecurityGroups):void 0),ret.addPropertyResult("clusterSubnetGroupName","ClusterSubnetGroupName",properties.ClusterSubnetGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterSubnetGroupName):void 0),ret.addPropertyResult("clusterVersion","ClusterVersion",properties.ClusterVersion!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterVersion):void 0),ret.addPropertyResult("deferMaintenance","DeferMaintenance",properties.DeferMaintenance!=null?cfn_parse.FromCloudFormation.getBoolean(properties.DeferMaintenance):void 0),ret.addPropertyResult("deferMaintenanceDuration","DeferMaintenanceDuration",properties.DeferMaintenanceDuration!=null?cfn_parse.FromCloudFormation.getNumber(properties.DeferMaintenanceDuration):void 0),ret.addPropertyResult("deferMaintenanceEndTime","DeferMaintenanceEndTime",properties.DeferMaintenanceEndTime!=null?cfn_parse.FromCloudFormation.getString(properties.DeferMaintenanceEndTime):void 0),ret.addPropertyResult("deferMaintenanceStartTime","DeferMaintenanceStartTime",properties.DeferMaintenanceStartTime!=null?cfn_parse.FromCloudFormation.getString(properties.DeferMaintenanceStartTime):void 0),ret.addPropertyResult("destinationRegion","DestinationRegion",properties.DestinationRegion!=null?cfn_parse.FromCloudFormation.getString(properties.DestinationRegion):void 0),ret.addPropertyResult("elasticIp","ElasticIp",properties.ElasticIp!=null?cfn_parse.FromCloudFormation.getString(properties.ElasticIp):void 0),ret.addPropertyResult("encrypted","Encrypted",properties.Encrypted!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Encrypted):void 0),ret.addPropertyResult("enhancedVpcRouting","EnhancedVpcRouting",properties.EnhancedVpcRouting!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EnhancedVpcRouting):void 0),ret.addPropertyResult("hsmClientCertificateIdentifier","HsmClientCertificateIdentifier",properties.HsmClientCertificateIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.HsmClientCertificateIdentifier):void 0),ret.addPropertyResult("hsmConfigurationIdentifier","HsmConfigurationIdentifier",properties.HsmConfigurationIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.HsmConfigurationIdentifier):void 0),ret.addPropertyResult("iamRoles","IamRoles",properties.IamRoles!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IamRoles):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse.FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("loggingProperties","LoggingProperties",properties.LoggingProperties!=null?CfnClusterLoggingPropertiesPropertyFromCloudFormation(properties.LoggingProperties):void 0),ret.addPropertyResult("maintenanceTrackName","MaintenanceTrackName",properties.MaintenanceTrackName!=null?cfn_parse.FromCloudFormation.getString(properties.MaintenanceTrackName):void 0),ret.addPropertyResult("manualSnapshotRetentionPeriod","ManualSnapshotRetentionPeriod",properties.ManualSnapshotRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.ManualSnapshotRetentionPeriod):void 0),ret.addPropertyResult("numberOfNodes","NumberOfNodes",properties.NumberOfNodes!=null?cfn_parse.FromCloudFormation.getNumber(properties.NumberOfNodes):void 0),ret.addPropertyResult("ownerAccount","OwnerAccount",properties.OwnerAccount!=null?cfn_parse.FromCloudFormation.getString(properties.OwnerAccount):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse.FromCloudFormation.getNumber(properties.Port):void 0),ret.addPropertyResult("preferredMaintenanceWindow","PreferredMaintenanceWindow",properties.PreferredMaintenanceWindow!=null?cfn_parse.FromCloudFormation.getString(properties.PreferredMaintenanceWindow):void 0),ret.addPropertyResult("publiclyAccessible","PubliclyAccessible",properties.PubliclyAccessible!=null?cfn_parse.FromCloudFormation.getBoolean(properties.PubliclyAccessible):void 0),ret.addPropertyResult("resourceAction","ResourceAction",properties.ResourceAction!=null?cfn_parse.FromCloudFormation.getString(properties.ResourceAction):void 0),ret.addPropertyResult("revisionTarget","RevisionTarget",properties.RevisionTarget!=null?cfn_parse.FromCloudFormation.getString(properties.RevisionTarget):void 0),ret.addPropertyResult("rotateEncryptionKey","RotateEncryptionKey",properties.RotateEncryptionKey!=null?cfn_parse.FromCloudFormation.getBoolean(properties.RotateEncryptionKey):void 0),ret.addPropertyResult("snapshotClusterIdentifier","SnapshotClusterIdentifier",properties.SnapshotClusterIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotClusterIdentifier):void 0),ret.addPropertyResult("snapshotCopyGrantName","SnapshotCopyGrantName",properties.SnapshotCopyGrantName!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotCopyGrantName):void 0),ret.addPropertyResult("snapshotCopyManual","SnapshotCopyManual",properties.SnapshotCopyManual!=null?cfn_parse.FromCloudFormation.getBoolean(properties.SnapshotCopyManual):void 0),ret.addPropertyResult("snapshotCopyRetentionPeriod","SnapshotCopyRetentionPeriod",properties.SnapshotCopyRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.SnapshotCopyRetentionPeriod):void 0),ret.addPropertyResult("snapshotIdentifier","SnapshotIdentifier",properties.SnapshotIdentifier!=null?cfn_parse.FromCloudFormation.getString(properties.SnapshotIdentifier):void 0),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addPropertyResult("vpcSecurityGroupIds","VpcSecurityGroupIds",properties.VpcSecurityGroupIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.VpcSecurityGroupIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnCluster extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnCluster.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnCluster),error}cdk.requireProperty(props,"clusterType",this),cdk.requireProperty(props,"dbName",this),cdk.requireProperty(props,"masterUserPassword",this),cdk.requireProperty(props,"masterUsername",this),cdk.requireProperty(props,"nodeType",this),this.attrDeferMaintenanceIdentifier=cdk.Token.asString(this.getAtt("DeferMaintenanceIdentifier")),this.attrEndpointAddress=cdk.Token.asString(this.getAtt("Endpoint.Address")),this.attrEndpointPort=cdk.Token.asString(this.getAtt("Endpoint.Port")),this.attrId=cdk.Token.asString(this.getAtt("Id")),this.clusterType=props.clusterType,this.dbName=props.dbName,this.masterUsername=props.masterUsername,this.masterUserPassword=props.masterUserPassword,this.nodeType=props.nodeType,this.allowVersionUpgrade=props.allowVersionUpgrade,this.aquaConfigurationStatus=props.aquaConfigurationStatus,this.automatedSnapshotRetentionPeriod=props.automatedSnapshotRetentionPeriod,this.availabilityZone=props.availabilityZone,this.availabilityZoneRelocation=props.availabilityZoneRelocation,this.availabilityZoneRelocationStatus=props.availabilityZoneRelocationStatus,this.classic=props.classic,this.clusterIdentifier=props.clusterIdentifier,this.clusterParameterGroupName=props.clusterParameterGroupName,this.clusterSecurityGroups=props.clusterSecurityGroups,this.clusterSubnetGroupName=props.clusterSubnetGroupName,this.clusterVersion=props.clusterVersion,this.deferMaintenance=props.deferMaintenance,this.deferMaintenanceDuration=props.deferMaintenanceDuration,this.deferMaintenanceEndTime=props.deferMaintenanceEndTime,this.deferMaintenanceStartTime=props.deferMaintenanceStartTime,this.destinationRegion=props.destinationRegion,this.elasticIp=props.elasticIp,this.encrypted=props.encrypted,this.enhancedVpcRouting=props.enhancedVpcRouting,this.hsmClientCertificateIdentifier=props.hsmClientCertificateIdentifier,this.hsmConfigurationIdentifier=props.hsmConfigurationIdentifier,this.iamRoles=props.iamRoles,this.kmsKeyId=props.kmsKeyId,this.loggingProperties=props.loggingProperties,this.maintenanceTrackName=props.maintenanceTrackName,this.manualSnapshotRetentionPeriod=props.manualSnapshotRetentionPeriod,this.numberOfNodes=props.numberOfNodes,this.ownerAccount=props.ownerAccount,this.port=props.port,this.preferredMaintenanceWindow=props.preferredMaintenanceWindow,this.publiclyAccessible=props.publiclyAccessible,this.resourceAction=props.resourceAction,this.revisionTarget=props.revisionTarget,this.rotateEncryptionKey=props.rotateEncryptionKey,this.snapshotClusterIdentifier=props.snapshotClusterIdentifier,this.snapshotCopyGrantName=props.snapshotCopyGrantName,this.snapshotCopyManual=props.snapshotCopyManual,this.snapshotCopyRetentionPeriod=props.snapshotCopyRetentionPeriod,this.snapshotIdentifier=props.snapshotIdentifier,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::Cluster",props.tags,{tagPropertyName:"tags"}),this.vpcSecurityGroupIds=props.vpcSecurityGroupIds,this.node.scope&&cdk.Resource.isResource(this.node.scope)&&this.node.addValidation({validate:()=>this.cfnOptions.deletionPolicy===void 0?["'AWS::Redshift::Cluster' is a stateful resource type, and you must specify a Removal Policy for it. Call 'resource.applyRemovalPolicy()'."]:[]})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterPropsFromCloudFormation(resourceProperties),ret=new CfnCluster(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",CfnCluster.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{clusterType:this.clusterType,dbName:this.dbName,masterUsername:this.masterUsername,masterUserPassword:this.masterUserPassword,nodeType:this.nodeType,allowVersionUpgrade:this.allowVersionUpgrade,aquaConfigurationStatus:this.aquaConfigurationStatus,automatedSnapshotRetentionPeriod:this.automatedSnapshotRetentionPeriod,availabilityZone:this.availabilityZone,availabilityZoneRelocation:this.availabilityZoneRelocation,availabilityZoneRelocationStatus:this.availabilityZoneRelocationStatus,classic:this.classic,clusterIdentifier:this.clusterIdentifier,clusterParameterGroupName:this.clusterParameterGroupName,clusterSecurityGroups:this.clusterSecurityGroups,clusterSubnetGroupName:this.clusterSubnetGroupName,clusterVersion:this.clusterVersion,deferMaintenance:this.deferMaintenance,deferMaintenanceDuration:this.deferMaintenanceDuration,deferMaintenanceEndTime:this.deferMaintenanceEndTime,deferMaintenanceStartTime:this.deferMaintenanceStartTime,destinationRegion:this.destinationRegion,elasticIp:this.elasticIp,encrypted:this.encrypted,enhancedVpcRouting:this.enhancedVpcRouting,hsmClientCertificateIdentifier:this.hsmClientCertificateIdentifier,hsmConfigurationIdentifier:this.hsmConfigurationIdentifier,iamRoles:this.iamRoles,kmsKeyId:this.kmsKeyId,loggingProperties:this.loggingProperties,maintenanceTrackName:this.maintenanceTrackName,manualSnapshotRetentionPeriod:this.manualSnapshotRetentionPeriod,numberOfNodes:this.numberOfNodes,ownerAccount:this.ownerAccount,port:this.port,preferredMaintenanceWindow:this.preferredMaintenanceWindow,publiclyAccessible:this.publiclyAccessible,resourceAction:this.resourceAction,revisionTarget:this.revisionTarget,rotateEncryptionKey:this.rotateEncryptionKey,snapshotClusterIdentifier:this.snapshotClusterIdentifier,snapshotCopyGrantName:this.snapshotCopyGrantName,snapshotCopyManual:this.snapshotCopyManual,snapshotCopyRetentionPeriod:this.snapshotCopyRetentionPeriod,snapshotIdentifier:this.snapshotIdentifier,tags:this.tags.renderTags(),vpcSecurityGroupIds:this.vpcSecurityGroupIds}}renderProperties(props){return cfnClusterPropsToCloudFormation(props)}}exports.CfnCluster=CfnCluster,_a=JSII_RTTI_SYMBOL_1,CfnCluster[_a]={fqn:"aws-cdk-lib.aws_redshift.CfnCluster",version:"2.51.1"},CfnCluster.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::Cluster";function CfnCluster_EndpointPropertyValidator(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("address",cdk.validateString)(properties.address)),errors.collect(cdk.propertyValidator("port",cdk.validateString)(properties.port)),errors.wrap('supplied properties not correct for "EndpointProperty"')}function cfnClusterEndpointPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_EndpointPropertyValidator(properties).assertSuccess(),{Address:cdk.stringToCloudFormation(properties.address),Port:cdk.stringToCloudFormation(properties.port)}):properties}function CfnClusterEndpointPropertyFromCloudFormation(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("address","Address",properties.Address!=null?cfn_parse.FromCloudFormation.getString(properties.Address):void 0),ret.addPropertyResult("port","Port",properties.Port!=null?cfn_parse.FromCloudFormation.getString(properties.Port):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnCluster_LoggingPropertiesPropertyValidator(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("bucketName",cdk.requiredValidator)(properties.bucketName)),errors.collect(cdk.propertyValidator("bucketName",cdk.validateString)(properties.bucketName)),errors.collect(cdk.propertyValidator("s3KeyPrefix",cdk.validateString)(properties.s3KeyPrefix)),errors.wrap('supplied properties not correct for "LoggingPropertiesProperty"')}function cfnClusterLoggingPropertiesPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnCluster_LoggingPropertiesPropertyValidator(properties).assertSuccess(),{BucketName:cdk.stringToCloudFormation(properties.bucketName),S3KeyPrefix:cdk.stringToCloudFormation(properties.s3KeyPrefix)}):properties}function CfnClusterLoggingPropertiesPropertyFromCloudFormation(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("bucketName","BucketName",cfn_parse.FromCloudFormation.getString(properties.BucketName)),ret.addPropertyResult("s3KeyPrefix","S3KeyPrefix",properties.S3KeyPrefix!=null?cfn_parse.FromCloudFormation.getString(properties.S3KeyPrefix):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterParameterGroupPropsValidator(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.requiredValidator)(properties.description)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("parameterGroupFamily",cdk.requiredValidator)(properties.parameterGroupFamily)),errors.collect(cdk.propertyValidator("parameterGroupFamily",cdk.validateString)(properties.parameterGroupFamily)),errors.collect(cdk.propertyValidator("parameters",cdk.listValidator(CfnClusterParameterGroup_ParameterPropertyValidator))(properties.parameters)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnClusterParameterGroupProps"')}function cfnClusterParameterGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterParameterGroupPropsValidator(properties).assertSuccess(),{Description:cdk.stringToCloudFormation(properties.description),ParameterGroupFamily:cdk.stringToCloudFormation(properties.parameterGroupFamily),Parameters:cdk.listMapper(cfnClusterParameterGroupParameterPropertyToCloudFormation)(properties.parameters),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnClusterParameterGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",cfn_parse.FromCloudFormation.getString(properties.Description)),ret.addPropertyResult("parameterGroupFamily","ParameterGroupFamily",cfn_parse.FromCloudFormation.getString(properties.ParameterGroupFamily)),ret.addPropertyResult("parameters","Parameters",properties.Parameters!=null?cfn_parse.FromCloudFormation.getArray(CfnClusterParameterGroupParameterPropertyFromCloudFormation)(properties.Parameters):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 CfnClusterParameterGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnClusterParameterGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterParameterGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnClusterParameterGroup),error}cdk.requireProperty(props,"description",this),cdk.requireProperty(props,"parameterGroupFamily",this),this.attrParameterGroupName=cdk.Token.asString(this.getAtt("ParameterGroupName")),this.description=props.description,this.parameterGroupFamily=props.parameterGroupFamily,this.parameters=props.parameters,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::ClusterParameterGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterParameterGroupPropsFromCloudFormation(resourceProperties),ret=new CfnClusterParameterGroup(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",CfnClusterParameterGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{description:this.description,parameterGroupFamily:this.parameterGroupFamily,parameters:this.parameters,tags:this.tags.renderTags()}}renderProperties(props){return cfnClusterParameterGroupPropsToCloudFormation(props)}}exports.CfnClusterParameterGroup=CfnClusterParameterGroup,_b=JSII_RTTI_SYMBOL_1,CfnClusterParameterGroup[_b]={fqn:"aws-cdk-lib.aws_redshift.CfnClusterParameterGroup",version:"2.51.1"},CfnClusterParameterGroup.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ClusterParameterGroup";function CfnClusterParameterGroup_ParameterPropertyValidator(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("parameterName",cdk.requiredValidator)(properties.parameterName)),errors.collect(cdk.propertyValidator("parameterName",cdk.validateString)(properties.parameterName)),errors.collect(cdk.propertyValidator("parameterValue",cdk.requiredValidator)(properties.parameterValue)),errors.collect(cdk.propertyValidator("parameterValue",cdk.validateString)(properties.parameterValue)),errors.wrap('supplied properties not correct for "ParameterProperty"')}function cfnClusterParameterGroupParameterPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterParameterGroup_ParameterPropertyValidator(properties).assertSuccess(),{ParameterName:cdk.stringToCloudFormation(properties.parameterName),ParameterValue:cdk.stringToCloudFormation(properties.parameterValue)}):properties}function CfnClusterParameterGroupParameterPropertyFromCloudFormation(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("parameterName","ParameterName",cfn_parse.FromCloudFormation.getString(properties.ParameterName)),ret.addPropertyResult("parameterValue","ParameterValue",cfn_parse.FromCloudFormation.getString(properties.ParameterValue)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnClusterSecurityGroupPropsValidator(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.requiredValidator)(properties.description)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnClusterSecurityGroupProps"')}function cfnClusterSecurityGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterSecurityGroupPropsValidator(properties).assertSuccess(),{Description:cdk.stringToCloudFormation(properties.description),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnClusterSecurityGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",cfn_parse.FromCloudFormation.getString(properties.Description)),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnClusterSecurityGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnClusterSecurityGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterSecurityGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnClusterSecurityGroup),error}cdk.requireProperty(props,"description",this),this.description=props.description,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::ClusterSecurityGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterSecurityGroupPropsFromCloudFormation(resourceProperties),ret=new CfnClusterSecurityGroup(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",CfnClusterSecurityGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{description:this.description,tags:this.tags.renderTags()}}renderProperties(props){return cfnClusterSecurityGroupPropsToCloudFormation(props)}}exports.CfnClusterSecurityGroup=CfnClusterSecurityGroup,_c=JSII_RTTI_SYMBOL_1,CfnClusterSecurityGroup[_c]={fqn:"aws-cdk-lib.aws_redshift.CfnClusterSecurityGroup",version:"2.51.1"},CfnClusterSecurityGroup.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ClusterSecurityGroup";function CfnClusterSecurityGroupIngressPropsValidator(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("cidrip",cdk.validateString)(properties.cidrip)),errors.collect(cdk.propertyValidator("clusterSecurityGroupName",cdk.requiredValidator)(properties.clusterSecurityGroupName)),errors.collect(cdk.propertyValidator("clusterSecurityGroupName",cdk.validateString)(properties.clusterSecurityGroupName)),errors.collect(cdk.propertyValidator("ec2SecurityGroupName",cdk.validateString)(properties.ec2SecurityGroupName)),errors.collect(cdk.propertyValidator("ec2SecurityGroupOwnerId",cdk.validateString)(properties.ec2SecurityGroupOwnerId)),errors.wrap('supplied properties not correct for "CfnClusterSecurityGroupIngressProps"')}function cfnClusterSecurityGroupIngressPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterSecurityGroupIngressPropsValidator(properties).assertSuccess(),{ClusterSecurityGroupName:cdk.stringToCloudFormation(properties.clusterSecurityGroupName),CIDRIP:cdk.stringToCloudFormation(properties.cidrip),EC2SecurityGroupName:cdk.stringToCloudFormation(properties.ec2SecurityGroupName),EC2SecurityGroupOwnerId:cdk.stringToCloudFormation(properties.ec2SecurityGroupOwnerId)}):properties}function CfnClusterSecurityGroupIngressPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("clusterSecurityGroupName","ClusterSecurityGroupName",cfn_parse.FromCloudFormation.getString(properties.ClusterSecurityGroupName)),ret.addPropertyResult("cidrip","CIDRIP",properties.CIDRIP!=null?cfn_parse.FromCloudFormation.getString(properties.CIDRIP):void 0),ret.addPropertyResult("ec2SecurityGroupName","EC2SecurityGroupName",properties.EC2SecurityGroupName!=null?cfn_parse.FromCloudFormation.getString(properties.EC2SecurityGroupName):void 0),ret.addPropertyResult("ec2SecurityGroupOwnerId","EC2SecurityGroupOwnerId",properties.EC2SecurityGroupOwnerId!=null?cfn_parse.FromCloudFormation.getString(properties.EC2SecurityGroupOwnerId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnClusterSecurityGroupIngress extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnClusterSecurityGroupIngress.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterSecurityGroupIngressProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnClusterSecurityGroupIngress),error}cdk.requireProperty(props,"clusterSecurityGroupName",this),this.clusterSecurityGroupName=props.clusterSecurityGroupName,this.cidrip=props.cidrip,this.ec2SecurityGroupName=props.ec2SecurityGroupName,this.ec2SecurityGroupOwnerId=props.ec2SecurityGroupOwnerId}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterSecurityGroupIngressPropsFromCloudFormation(resourceProperties),ret=new CfnClusterSecurityGroupIngress(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",CfnClusterSecurityGroupIngress.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{clusterSecurityGroupName:this.clusterSecurityGroupName,cidrip:this.cidrip,ec2SecurityGroupName:this.ec2SecurityGroupName,ec2SecurityGroupOwnerId:this.ec2SecurityGroupOwnerId}}renderProperties(props){return cfnClusterSecurityGroupIngressPropsToCloudFormation(props)}}exports.CfnClusterSecurityGroupIngress=CfnClusterSecurityGroupIngress,_d=JSII_RTTI_SYMBOL_1,CfnClusterSecurityGroupIngress[_d]={fqn:"aws-cdk-lib.aws_redshift.CfnClusterSecurityGroupIngress",version:"2.51.1"},CfnClusterSecurityGroupIngress.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ClusterSecurityGroupIngress";function CfnClusterSubnetGroupPropsValidator(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.requiredValidator)(properties.description)),errors.collect(cdk.propertyValidator("description",cdk.validateString)(properties.description)),errors.collect(cdk.propertyValidator("subnetIds",cdk.requiredValidator)(properties.subnetIds)),errors.collect(cdk.propertyValidator("subnetIds",cdk.listValidator(cdk.validateString))(properties.subnetIds)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnClusterSubnetGroupProps"')}function cfnClusterSubnetGroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnClusterSubnetGroupPropsValidator(properties).assertSuccess(),{Description:cdk.stringToCloudFormation(properties.description),SubnetIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.subnetIds),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnClusterSubnetGroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("description","Description",cfn_parse.FromCloudFormation.getString(properties.Description)),ret.addPropertyResult("subnetIds","SubnetIds",cfn_parse.FromCloudFormation.getStringArray(properties.SubnetIds)),ret.addPropertyResult("tags","Tags",properties.Tags!=null?cfn_parse.FromCloudFormation.getArray(cfn_parse.FromCloudFormation.getCfnTag)(properties.Tags):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnClusterSubnetGroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnClusterSubnetGroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnClusterSubnetGroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnClusterSubnetGroup),error}cdk.requireProperty(props,"description",this),cdk.requireProperty(props,"subnetIds",this),this.attrClusterSubnetGroupName=cdk.Token.asString(this.getAtt("ClusterSubnetGroupName")),this.description=props.description,this.subnetIds=props.subnetIds,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::ClusterSubnetGroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnClusterSubnetGroupPropsFromCloudFormation(resourceProperties),ret=new CfnClusterSubnetGroup(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",CfnClusterSubnetGroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{description:this.description,subnetIds:this.subnetIds,tags:this.tags.renderTags()}}renderProperties(props){return cfnClusterSubnetGroupPropsToCloudFormation(props)}}exports.CfnClusterSubnetGroup=CfnClusterSubnetGroup,_e=JSII_RTTI_SYMBOL_1,CfnClusterSubnetGroup[_e]={fqn:"aws-cdk-lib.aws_redshift.CfnClusterSubnetGroup",version:"2.51.1"},CfnClusterSubnetGroup.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ClusterSubnetGroup";function CfnEndpointAccessPropsValidator(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("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("endpointName",cdk.requiredValidator)(properties.endpointName)),errors.collect(cdk.propertyValidator("endpointName",cdk.validateString)(properties.endpointName)),errors.collect(cdk.propertyValidator("resourceOwner",cdk.validateString)(properties.resourceOwner)),errors.collect(cdk.propertyValidator("subnetGroupName",cdk.requiredValidator)(properties.subnetGroupName)),errors.collect(cdk.propertyValidator("subnetGroupName",cdk.validateString)(properties.subnetGroupName)),errors.collect(cdk.propertyValidator("vpcEndpoint",cdk.validateObject)(properties.vpcEndpoint)),errors.collect(cdk.propertyValidator("vpcSecurityGroupIds",cdk.requiredValidator)(properties.vpcSecurityGroupIds)),errors.collect(cdk.propertyValidator("vpcSecurityGroupIds",cdk.listValidator(cdk.validateString))(properties.vpcSecurityGroupIds)),errors.collect(cdk.propertyValidator("vpcSecurityGroups",cdk.listValidator(CfnEndpointAccess_VpcSecurityGroupPropertyValidator))(properties.vpcSecurityGroups)),errors.wrap('supplied properties not correct for "CfnEndpointAccessProps"')}function cfnEndpointAccessPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnEndpointAccessPropsValidator(properties).assertSuccess(),{ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier),EndpointName:cdk.stringToCloudFormation(properties.endpointName),SubnetGroupName:cdk.stringToCloudFormation(properties.subnetGroupName),VpcSecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.vpcSecurityGroupIds),ResourceOwner:cdk.stringToCloudFormation(properties.resourceOwner),VpcEndpoint:cdk.objectToCloudFormation(properties.vpcEndpoint),VpcSecurityGroups:cdk.listMapper(cfnEndpointAccessVpcSecurityGroupPropertyToCloudFormation)(properties.vpcSecurityGroups)}):properties}function CfnEndpointAccessPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addPropertyResult("endpointName","EndpointName",cfn_parse.FromCloudFormation.getString(properties.EndpointName)),ret.addPropertyResult("subnetGroupName","SubnetGroupName",cfn_parse.FromCloudFormation.getString(properties.SubnetGroupName)),ret.addPropertyResult("vpcSecurityGroupIds","VpcSecurityGroupIds",cfn_parse.FromCloudFormation.getStringArray(properties.VpcSecurityGroupIds)),ret.addPropertyResult("resourceOwner","ResourceOwner",properties.ResourceOwner!=null?cfn_parse.FromCloudFormation.getString(properties.ResourceOwner):void 0),ret.addPropertyResult("vpcEndpoint","VpcEndpoint",properties.VpcEndpoint!=null?cfn_parse.FromCloudFormation.getAny(properties.VpcEndpoint):void 0),ret.addPropertyResult("vpcSecurityGroups","VpcSecurityGroups",properties.VpcSecurityGroups!=null?cfn_parse.FromCloudFormation.getArray(CfnEndpointAccessVpcSecurityGroupPropertyFromCloudFormation)(properties.VpcSecurityGroups):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnEndpointAccess extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnEndpointAccess.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnEndpointAccessProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEndpointAccess),error}cdk.requireProperty(props,"clusterIdentifier",this),cdk.requireProperty(props,"endpointName",this),cdk.requireProperty(props,"subnetGroupName",this),cdk.requireProperty(props,"vpcSecurityGroupIds",this),this.attrAddress=cdk.Token.asString(this.getAtt("Address")),this.attrEndpointCreateTime=cdk.Token.asString(this.getAtt("EndpointCreateTime")),this.attrEndpointStatus=cdk.Token.asString(this.getAtt("EndpointStatus")),this.attrPort=cdk.Token.asNumber(this.getAtt("Port")),this.clusterIdentifier=props.clusterIdentifier,this.endpointName=props.endpointName,this.subnetGroupName=props.subnetGroupName,this.vpcSecurityGroupIds=props.vpcSecurityGroupIds,this.resourceOwner=props.resourceOwner,this.vpcEndpoint=props.vpcEndpoint,this.vpcSecurityGroups=props.vpcSecurityGroups}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEndpointAccessPropsFromCloudFormation(resourceProperties),ret=new CfnEndpointAccess(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",CfnEndpointAccess.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{clusterIdentifier:this.clusterIdentifier,endpointName:this.endpointName,subnetGroupName:this.subnetGroupName,vpcSecurityGroupIds:this.vpcSecurityGroupIds,resourceOwner:this.resourceOwner,vpcEndpoint:this.vpcEndpoint,vpcSecurityGroups:this.vpcSecurityGroups}}renderProperties(props){return cfnEndpointAccessPropsToCloudFormation(props)}}exports.CfnEndpointAccess=CfnEndpointAccess,_f=JSII_RTTI_SYMBOL_1,CfnEndpointAccess[_f]={fqn:"aws-cdk-lib.aws_redshift.CfnEndpointAccess",version:"2.51.1"},CfnEndpointAccess.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::EndpointAccess";function CfnEndpointAccess_VpcSecurityGroupPropertyValidator(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("status",cdk.validateString)(properties.status)),errors.collect(cdk.propertyValidator("vpcSecurityGroupId",cdk.validateString)(properties.vpcSecurityGroupId)),errors.wrap('supplied properties not correct for "VpcSecurityGroupProperty"')}function cfnEndpointAccessVpcSecurityGroupPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnEndpointAccess_VpcSecurityGroupPropertyValidator(properties).assertSuccess(),{Status:cdk.stringToCloudFormation(properties.status),VpcSecurityGroupId:cdk.stringToCloudFormation(properties.vpcSecurityGroupId)}):properties}function CfnEndpointAccessVpcSecurityGroupPropertyFromCloudFormation(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("status","Status",properties.Status!=null?cfn_parse.FromCloudFormation.getString(properties.Status):void 0),ret.addPropertyResult("vpcSecurityGroupId","VpcSecurityGroupId",properties.VpcSecurityGroupId!=null?cfn_parse.FromCloudFormation.getString(properties.VpcSecurityGroupId):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnEndpointAuthorizationPropsValidator(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("account",cdk.requiredValidator)(properties.account)),errors.collect(cdk.propertyValidator("account",cdk.validateString)(properties.account)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("force",cdk.validateBoolean)(properties.force)),errors.collect(cdk.propertyValidator("vpcIds",cdk.listValidator(cdk.validateString))(properties.vpcIds)),errors.wrap('supplied properties not correct for "CfnEndpointAuthorizationProps"')}function cfnEndpointAuthorizationPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnEndpointAuthorizationPropsValidator(properties).assertSuccess(),{Account:cdk.stringToCloudFormation(properties.account),ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier),Force:cdk.booleanToCloudFormation(properties.force),VpcIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.vpcIds)}):properties}function CfnEndpointAuthorizationPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("account","Account",cfn_parse.FromCloudFormation.getString(properties.Account)),ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addPropertyResult("force","Force",properties.Force!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Force):void 0),ret.addPropertyResult("vpcIds","VpcIds",properties.VpcIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.VpcIds):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnEndpointAuthorization extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnEndpointAuthorization.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnEndpointAuthorizationProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEndpointAuthorization),error}cdk.requireProperty(props,"account",this),cdk.requireProperty(props,"clusterIdentifier",this),this.attrAllowedAllVpCs=this.getAtt("AllowedAllVPCs"),this.attrAllowedVpCs=cdk.Token.asList(this.getAtt("AllowedVPCs")),this.attrAuthorizeTime=cdk.Token.asString(this.getAtt("AuthorizeTime")),this.attrClusterStatus=cdk.Token.asString(this.getAtt("ClusterStatus")),this.attrEndpointCount=cdk.Token.asNumber(this.getAtt("EndpointCount")),this.attrGrantee=cdk.Token.asString(this.getAtt("Grantee")),this.attrGrantor=cdk.Token.asString(this.getAtt("Grantor")),this.attrStatus=cdk.Token.asString(this.getAtt("Status")),this.account=props.account,this.clusterIdentifier=props.clusterIdentifier,this.force=props.force,this.vpcIds=props.vpcIds}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEndpointAuthorizationPropsFromCloudFormation(resourceProperties),ret=new CfnEndpointAuthorization(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",CfnEndpointAuthorization.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{account:this.account,clusterIdentifier:this.clusterIdentifier,force:this.force,vpcIds:this.vpcIds}}renderProperties(props){return cfnEndpointAuthorizationPropsToCloudFormation(props)}}exports.CfnEndpointAuthorization=CfnEndpointAuthorization,_g=JSII_RTTI_SYMBOL_1,CfnEndpointAuthorization[_g]={fqn:"aws-cdk-lib.aws_redshift.CfnEndpointAuthorization",version:"2.51.1"},CfnEndpointAuthorization.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::EndpointAuthorization";function CfnEventSubscriptionPropsValidator(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("enabled",cdk.validateBoolean)(properties.enabled)),errors.collect(cdk.propertyValidator("eventCategories",cdk.listValidator(cdk.validateString))(properties.eventCategories)),errors.collect(cdk.propertyValidator("severity",cdk.validateString)(properties.severity)),errors.collect(cdk.propertyValidator("snsTopicArn",cdk.validateString)(properties.snsTopicArn)),errors.collect(cdk.propertyValidator("sourceIds",cdk.listValidator(cdk.validateString))(properties.sourceIds)),errors.collect(cdk.propertyValidator("sourceType",cdk.validateString)(properties.sourceType)),errors.collect(cdk.propertyValidator("subscriptionName",cdk.requiredValidator)(properties.subscriptionName)),errors.collect(cdk.propertyValidator("subscriptionName",cdk.validateString)(properties.subscriptionName)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnEventSubscriptionProps"')}function cfnEventSubscriptionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnEventSubscriptionPropsValidator(properties).assertSuccess(),{SubscriptionName:cdk.stringToCloudFormation(properties.subscriptionName),Enabled:cdk.booleanToCloudFormation(properties.enabled),EventCategories:cdk.listMapper(cdk.stringToCloudFormation)(properties.eventCategories),Severity:cdk.stringToCloudFormation(properties.severity),SnsTopicArn:cdk.stringToCloudFormation(properties.snsTopicArn),SourceIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.sourceIds),SourceType:cdk.stringToCloudFormation(properties.sourceType),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnEventSubscriptionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("subscriptionName","SubscriptionName",cfn_parse.FromCloudFormation.getString(properties.SubscriptionName)),ret.addPropertyResult("enabled","Enabled",properties.Enabled!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Enabled):void 0),ret.addPropertyResult("eventCategories","EventCategories",properties.EventCategories!=null?cfn_parse.FromCloudFormation.getStringArray(properties.EventCategories):void 0),ret.addPropertyResult("severity","Severity",properties.Severity!=null?cfn_parse.FromCloudFormation.getString(properties.Severity):void 0),ret.addPropertyResult("snsTopicArn","SnsTopicArn",properties.SnsTopicArn!=null?cfn_parse.FromCloudFormation.getString(properties.SnsTopicArn):void 0),ret.addPropertyResult("sourceIds","SourceIds",properties.SourceIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SourceIds):void 0),ret.addPropertyResult("sourceType","SourceType",properties.SourceType!=null?cfn_parse.FromCloudFormation.getString(properties.SourceType):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 CfnEventSubscription extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnEventSubscription.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnEventSubscriptionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnEventSubscription),error}cdk.requireProperty(props,"subscriptionName",this),this.attrCustSubscriptionId=cdk.Token.asString(this.getAtt("CustSubscriptionId")),this.attrCustomerAwsId=cdk.Token.asString(this.getAtt("CustomerAwsId")),this.attrEventCategoriesList=cdk.Token.asList(this.getAtt("EventCategoriesList")),this.attrSourceIdsList=cdk.Token.asList(this.getAtt("SourceIdsList")),this.attrStatus=cdk.Token.asString(this.getAtt("Status")),this.attrSubscriptionCreationTime=cdk.Token.asString(this.getAtt("SubscriptionCreationTime")),this.subscriptionName=props.subscriptionName,this.enabled=props.enabled,this.eventCategories=props.eventCategories,this.severity=props.severity,this.snsTopicArn=props.snsTopicArn,this.sourceIds=props.sourceIds,this.sourceType=props.sourceType,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::Redshift::EventSubscription",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnEventSubscriptionPropsFromCloudFormation(resourceProperties),ret=new CfnEventSubscription(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",CfnEventSubscription.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{subscriptionName:this.subscriptionName,enabled:this.enabled,eventCategories:this.eventCategories,severity:this.severity,snsTopicArn:this.snsTopicArn,sourceIds:this.sourceIds,sourceType:this.sourceType,tags:this.tags.renderTags()}}renderProperties(props){return cfnEventSubscriptionPropsToCloudFormation(props)}}exports.CfnEventSubscription=CfnEventSubscription,_h=JSII_RTTI_SYMBOL_1,CfnEventSubscription[_h]={fqn:"aws-cdk-lib.aws_redshift.CfnEventSubscription",version:"2.51.1"},CfnEventSubscription.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::EventSubscription";function CfnScheduledActionPropsValidator(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("enable",cdk.validateBoolean)(properties.enable)),errors.collect(cdk.propertyValidator("endTime",cdk.validateString)(properties.endTime)),errors.collect(cdk.propertyValidator("iamRole",cdk.validateString)(properties.iamRole)),errors.collect(cdk.propertyValidator("schedule",cdk.validateString)(properties.schedule)),errors.collect(cdk.propertyValidator("scheduledActionDescription",cdk.validateString)(properties.scheduledActionDescription)),errors.collect(cdk.propertyValidator("scheduledActionName",cdk.requiredValidator)(properties.scheduledActionName)),errors.collect(cdk.propertyValidator("scheduledActionName",cdk.validateString)(properties.scheduledActionName)),errors.collect(cdk.propertyValidator("startTime",cdk.validateString)(properties.startTime)),errors.collect(cdk.propertyValidator("targetAction",CfnScheduledAction_ScheduledActionTypePropertyValidator)(properties.targetAction)),errors.wrap('supplied properties not correct for "CfnScheduledActionProps"')}function cfnScheduledActionPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledActionPropsValidator(properties).assertSuccess(),{ScheduledActionName:cdk.stringToCloudFormation(properties.scheduledActionName),Enable:cdk.booleanToCloudFormation(properties.enable),EndTime:cdk.stringToCloudFormation(properties.endTime),IamRole:cdk.stringToCloudFormation(properties.iamRole),Schedule:cdk.stringToCloudFormation(properties.schedule),ScheduledActionDescription:cdk.stringToCloudFormation(properties.scheduledActionDescription),StartTime:cdk.stringToCloudFormation(properties.startTime),TargetAction:cfnScheduledActionScheduledActionTypePropertyToCloudFormation(properties.targetAction)}):properties}function CfnScheduledActionPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("scheduledActionName","ScheduledActionName",cfn_parse.FromCloudFormation.getString(properties.ScheduledActionName)),ret.addPropertyResult("enable","Enable",properties.Enable!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Enable):void 0),ret.addPropertyResult("endTime","EndTime",properties.EndTime!=null?cfn_parse.FromCloudFormation.getString(properties.EndTime):void 0),ret.addPropertyResult("iamRole","IamRole",properties.IamRole!=null?cfn_parse.FromCloudFormation.getString(properties.IamRole):void 0),ret.addPropertyResult("schedule","Schedule",properties.Schedule!=null?cfn_parse.FromCloudFormation.getString(properties.Schedule):void 0),ret.addPropertyResult("scheduledActionDescription","ScheduledActionDescription",properties.ScheduledActionDescription!=null?cfn_parse.FromCloudFormation.getString(properties.ScheduledActionDescription):void 0),ret.addPropertyResult("startTime","StartTime",properties.StartTime!=null?cfn_parse.FromCloudFormation.getString(properties.StartTime):void 0),ret.addPropertyResult("targetAction","TargetAction",properties.TargetAction!=null?CfnScheduledActionScheduledActionTypePropertyFromCloudFormation(properties.TargetAction):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}class CfnScheduledAction extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnScheduledAction.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshift_CfnScheduledActionProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnScheduledAction),error}cdk.requireProperty(props,"scheduledActionName",this),this.attrNextInvocations=cdk.Token.asList(this.getAtt("NextInvocations")),this.attrState=cdk.Token.asString(this.getAtt("State")),this.scheduledActionName=props.scheduledActionName,this.enable=props.enable,this.endTime=props.endTime,this.iamRole=props.iamRole,this.schedule=props.schedule,this.scheduledActionDescription=props.scheduledActionDescription,this.startTime=props.startTime,this.targetAction=props.targetAction}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnScheduledActionPropsFromCloudFormation(resourceProperties),ret=new CfnScheduledAction(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",CfnScheduledAction.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{scheduledActionName:this.scheduledActionName,enable:this.enable,endTime:this.endTime,iamRole:this.iamRole,schedule:this.schedule,scheduledActionDescription:this.scheduledActionDescription,startTime:this.startTime,targetAction:this.targetAction}}renderProperties(props){return cfnScheduledActionPropsToCloudFormation(props)}}exports.CfnScheduledAction=CfnScheduledAction,_j=JSII_RTTI_SYMBOL_1,CfnScheduledAction[_j]={fqn:"aws-cdk-lib.aws_redshift.CfnScheduledAction",version:"2.51.1"},CfnScheduledAction.CFN_RESOURCE_TYPE_NAME="AWS::Redshift::ScheduledAction";function CfnScheduledAction_PauseClusterMessagePropertyValidator(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("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.wrap('supplied properties not correct for "PauseClusterMessageProperty"')}function cfnScheduledActionPauseClusterMessagePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledAction_PauseClusterMessagePropertyValidator(properties).assertSuccess(),{ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier)}):properties}function CfnScheduledActionPauseClusterMessagePropertyFromCloudFormation(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("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledAction_ResizeClusterMessagePropertyValidator(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("classic",cdk.validateBoolean)(properties.classic)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterType",cdk.validateString)(properties.clusterType)),errors.collect(cdk.propertyValidator("nodeType",cdk.validateString)(properties.nodeType)),errors.collect(cdk.propertyValidator("numberOfNodes",cdk.validateNumber)(properties.numberOfNodes)),errors.wrap('supplied properties not correct for "ResizeClusterMessageProperty"')}function cfnScheduledActionResizeClusterMessagePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledAction_ResizeClusterMessagePropertyValidator(properties).assertSuccess(),{Classic:cdk.booleanToCloudFormation(properties.classic),ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier),ClusterType:cdk.stringToCloudFormation(properties.clusterType),NodeType:cdk.stringToCloudFormation(properties.nodeType),NumberOfNodes:cdk.numberToCloudFormation(properties.numberOfNodes)}):properties}function CfnScheduledActionResizeClusterMessagePropertyFromCloudFormation(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("classic","Classic",properties.Classic!=null?cfn_parse.FromCloudFormation.getBoolean(properties.Classic):void 0),ret.addPropertyResult("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addPropertyResult("clusterType","ClusterType",properties.ClusterType!=null?cfn_parse.FromCloudFormation.getString(properties.ClusterType):void 0),ret.addPropertyResult("nodeType","NodeType",properties.NodeType!=null?cfn_parse.FromCloudFormation.getString(properties.NodeType):void 0),ret.addPropertyResult("numberOfNodes","NumberOfNodes",properties.NumberOfNodes!=null?cfn_parse.FromCloudFormation.getNumber(properties.NumberOfNodes):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledAction_ResumeClusterMessagePropertyValidator(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("clusterIdentifier",cdk.requiredValidator)(properties.clusterIdentifier)),errors.collect(cdk.propertyValidator("clusterIdentifier",cdk.validateString)(properties.clusterIdentifier)),errors.wrap('supplied properties not correct for "ResumeClusterMessageProperty"')}function cfnScheduledActionResumeClusterMessagePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledAction_ResumeClusterMessagePropertyValidator(properties).assertSuccess(),{ClusterIdentifier:cdk.stringToCloudFormation(properties.clusterIdentifier)}):properties}function CfnScheduledActionResumeClusterMessagePropertyFromCloudFormation(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("clusterIdentifier","ClusterIdentifier",cfn_parse.FromCloudFormation.getString(properties.ClusterIdentifier)),ret.addUnrecognizedPropertiesAsExtra(properties),ret}function CfnScheduledAction_ScheduledActionTypePropertyValidator(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("pauseCluster",CfnScheduledAction_PauseClusterMessagePropertyValidator)(properties.pauseCluster)),errors.collect(cdk.propertyValidator("resizeCluster",CfnScheduledAction_ResizeClusterMessagePropertyValidator)(properties.resizeCluster)),errors.collect(cdk.propertyValidator("resumeCluster",CfnScheduledAction_ResumeClusterMessagePropertyValidator)(properties.resumeCluster)),errors.wrap('supplied properties not correct for "ScheduledActionTypeProperty"')}function cfnScheduledActionScheduledActionTypePropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnScheduledAction_ScheduledActionTypePropertyValidator(properties).assertSuccess(),{PauseCluster:cfnScheduledActionPauseClusterMessagePropertyToCloudFormation(properties.pauseCluster),ResizeCluster:cfnScheduledActionResizeClusterMessagePropertyToCloudFormation(properties.resizeCluster),ResumeCluster:cfnScheduledActionResumeClusterMessagePropertyToCloudFormation(properties.resumeCluster)}):properties}function CfnScheduledActionScheduledActionTypePropertyFromCloudFormation(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("pauseCluster","PauseCluster",properties.PauseCluster!=null?CfnScheduledActionPauseClusterMessagePropertyFromCloudFormation(properties.PauseCluster):void 0),ret.addPropertyResult("resizeCluster","ResizeCluster",properties.ResizeCluster!=null?CfnScheduledActionResizeClusterMessagePropertyFromCloudFormation(properties.ResizeCluster):void 0),ret.addPropertyResult("resumeCluster","ResumeCluster",properties.ResumeCluster!=null?CfnScheduledActionResumeClusterMessagePropertyFromCloudFormation(properties.ResumeCluster):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}
2
2
  //# sourceMappingURL=redshift.generated.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnWorkgroup=exports.CfnNamespace=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 CfnNamespacePropsValidator(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("adminUserPassword",cdk.validateString)(properties.adminUserPassword)),errors.collect(cdk.propertyValidator("adminUsername",cdk.validateString)(properties.adminUsername)),errors.collect(cdk.propertyValidator("dbName",cdk.validateString)(properties.dbName)),errors.collect(cdk.propertyValidator("defaultIamRoleArn",cdk.validateString)(properties.defaultIamRoleArn)),errors.collect(cdk.propertyValidator("finalSnapshotName",cdk.validateString)(properties.finalSnapshotName)),errors.collect(cdk.propertyValidator("finalSnapshotRetentionPeriod",cdk.validateNumber)(properties.finalSnapshotRetentionPeriod)),errors.collect(cdk.propertyValidator("iamRoles",cdk.listValidator(cdk.validateString))(properties.iamRoles)),errors.collect(cdk.propertyValidator("kmsKeyId",cdk.validateString)(properties.kmsKeyId)),errors.collect(cdk.propertyValidator("logExports",cdk.listValidator(cdk.validateString))(properties.logExports)),errors.collect(cdk.propertyValidator("namespaceName",cdk.requiredValidator)(properties.namespaceName)),errors.collect(cdk.propertyValidator("namespaceName",cdk.validateString)(properties.namespaceName)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnNamespaceProps"')}function cfnNamespacePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnNamespacePropsValidator(properties).assertSuccess(),{NamespaceName:cdk.stringToCloudFormation(properties.namespaceName),AdminUsername:cdk.stringToCloudFormation(properties.adminUsername),AdminUserPassword:cdk.stringToCloudFormation(properties.adminUserPassword),DbName:cdk.stringToCloudFormation(properties.dbName),DefaultIamRoleArn:cdk.stringToCloudFormation(properties.defaultIamRoleArn),FinalSnapshotName:cdk.stringToCloudFormation(properties.finalSnapshotName),FinalSnapshotRetentionPeriod:cdk.numberToCloudFormation(properties.finalSnapshotRetentionPeriod),IamRoles:cdk.listMapper(cdk.stringToCloudFormation)(properties.iamRoles),KmsKeyId:cdk.stringToCloudFormation(properties.kmsKeyId),LogExports:cdk.listMapper(cdk.stringToCloudFormation)(properties.logExports),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnNamespacePropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("namespaceName","NamespaceName",cfn_parse.FromCloudFormation.getString(properties.NamespaceName)),ret.addPropertyResult("adminUsername","AdminUsername",properties.AdminUsername!=null?cfn_parse.FromCloudFormation.getString(properties.AdminUsername):void 0),ret.addPropertyResult("adminUserPassword","AdminUserPassword",properties.AdminUserPassword!=null?cfn_parse.FromCloudFormation.getString(properties.AdminUserPassword):void 0),ret.addPropertyResult("dbName","DbName",properties.DbName!=null?cfn_parse.FromCloudFormation.getString(properties.DbName):void 0),ret.addPropertyResult("defaultIamRoleArn","DefaultIamRoleArn",properties.DefaultIamRoleArn!=null?cfn_parse.FromCloudFormation.getString(properties.DefaultIamRoleArn):void 0),ret.addPropertyResult("finalSnapshotName","FinalSnapshotName",properties.FinalSnapshotName!=null?cfn_parse.FromCloudFormation.getString(properties.FinalSnapshotName):void 0),ret.addPropertyResult("finalSnapshotRetentionPeriod","FinalSnapshotRetentionPeriod",properties.FinalSnapshotRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.FinalSnapshotRetentionPeriod):void 0),ret.addPropertyResult("iamRoles","IamRoles",properties.IamRoles!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IamRoles):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse.FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("logExports","LogExports",properties.LogExports!=null?cfn_parse.FromCloudFormation.getStringArray(properties.LogExports):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 CfnNamespace extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnNamespace.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshiftserverless_CfnNamespaceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnNamespace),error}cdk.requireProperty(props,"namespaceName",this),this.namespaceName=props.namespaceName,this.adminUsername=props.adminUsername,this.adminUserPassword=props.adminUserPassword,this.dbName=props.dbName,this.defaultIamRoleArn=props.defaultIamRoleArn,this.finalSnapshotName=props.finalSnapshotName,this.finalSnapshotRetentionPeriod=props.finalSnapshotRetentionPeriod,this.iamRoles=props.iamRoles,this.kmsKeyId=props.kmsKeyId,this.logExports=props.logExports,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::RedshiftServerless::Namespace",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnNamespacePropsFromCloudFormation(resourceProperties),ret=new CfnNamespace(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",CfnNamespace.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{namespaceName:this.namespaceName,adminUsername:this.adminUsername,adminUserPassword:this.adminUserPassword,dbName:this.dbName,defaultIamRoleArn:this.defaultIamRoleArn,finalSnapshotName:this.finalSnapshotName,finalSnapshotRetentionPeriod:this.finalSnapshotRetentionPeriod,iamRoles:this.iamRoles,kmsKeyId:this.kmsKeyId,logExports:this.logExports,tags:this.tags.renderTags()}}renderProperties(props){return cfnNamespacePropsToCloudFormation(props)}}exports.CfnNamespace=CfnNamespace,_a=JSII_RTTI_SYMBOL_1,CfnNamespace[_a]={fqn:"aws-cdk-lib.aws_redshiftserverless.CfnNamespace",version:"2.51.0"},CfnNamespace.CFN_RESOURCE_TYPE_NAME="AWS::RedshiftServerless::Namespace";function CfnWorkgroupPropsValidator(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("baseCapacity",cdk.validateNumber)(properties.baseCapacity)),errors.collect(cdk.propertyValidator("configParameters",cdk.listValidator(CfnWorkgroup_ConfigParameterPropertyValidator))(properties.configParameters)),errors.collect(cdk.propertyValidator("enhancedVpcRouting",cdk.validateBoolean)(properties.enhancedVpcRouting)),errors.collect(cdk.propertyValidator("namespaceName",cdk.validateString)(properties.namespaceName)),errors.collect(cdk.propertyValidator("publiclyAccessible",cdk.validateBoolean)(properties.publiclyAccessible)),errors.collect(cdk.propertyValidator("securityGroupIds",cdk.listValidator(cdk.validateString))(properties.securityGroupIds)),errors.collect(cdk.propertyValidator("subnetIds",cdk.listValidator(cdk.validateString))(properties.subnetIds)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("workgroupName",cdk.requiredValidator)(properties.workgroupName)),errors.collect(cdk.propertyValidator("workgroupName",cdk.validateString)(properties.workgroupName)),errors.wrap('supplied properties not correct for "CfnWorkgroupProps"')}function cfnWorkgroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkgroupPropsValidator(properties).assertSuccess(),{WorkgroupName:cdk.stringToCloudFormation(properties.workgroupName),BaseCapacity:cdk.numberToCloudFormation(properties.baseCapacity),ConfigParameters:cdk.listMapper(cfnWorkgroupConfigParameterPropertyToCloudFormation)(properties.configParameters),EnhancedVpcRouting:cdk.booleanToCloudFormation(properties.enhancedVpcRouting),NamespaceName:cdk.stringToCloudFormation(properties.namespaceName),PubliclyAccessible:cdk.booleanToCloudFormation(properties.publiclyAccessible),SecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.securityGroupIds),SubnetIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.subnetIds),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnWorkgroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("workgroupName","WorkgroupName",cfn_parse.FromCloudFormation.getString(properties.WorkgroupName)),ret.addPropertyResult("baseCapacity","BaseCapacity",properties.BaseCapacity!=null?cfn_parse.FromCloudFormation.getNumber(properties.BaseCapacity):void 0),ret.addPropertyResult("configParameters","ConfigParameters",properties.ConfigParameters!=null?cfn_parse.FromCloudFormation.getArray(CfnWorkgroupConfigParameterPropertyFromCloudFormation)(properties.ConfigParameters):void 0),ret.addPropertyResult("enhancedVpcRouting","EnhancedVpcRouting",properties.EnhancedVpcRouting!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EnhancedVpcRouting):void 0),ret.addPropertyResult("namespaceName","NamespaceName",properties.NamespaceName!=null?cfn_parse.FromCloudFormation.getString(properties.NamespaceName):void 0),ret.addPropertyResult("publiclyAccessible","PubliclyAccessible",properties.PubliclyAccessible!=null?cfn_parse.FromCloudFormation.getBoolean(properties.PubliclyAccessible):void 0),ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnetIds","SubnetIds",properties.SubnetIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SubnetIds):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 CfnWorkgroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnWorkgroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshiftserverless_CfnWorkgroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWorkgroup),error}cdk.requireProperty(props,"workgroupName",this),this.workgroupName=props.workgroupName,this.baseCapacity=props.baseCapacity,this.configParameters=props.configParameters,this.enhancedVpcRouting=props.enhancedVpcRouting,this.namespaceName=props.namespaceName,this.publiclyAccessible=props.publiclyAccessible,this.securityGroupIds=props.securityGroupIds,this.subnetIds=props.subnetIds,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::RedshiftServerless::Workgroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWorkgroupPropsFromCloudFormation(resourceProperties),ret=new CfnWorkgroup(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",CfnWorkgroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{workgroupName:this.workgroupName,baseCapacity:this.baseCapacity,configParameters:this.configParameters,enhancedVpcRouting:this.enhancedVpcRouting,namespaceName:this.namespaceName,publiclyAccessible:this.publiclyAccessible,securityGroupIds:this.securityGroupIds,subnetIds:this.subnetIds,tags:this.tags.renderTags()}}renderProperties(props){return cfnWorkgroupPropsToCloudFormation(props)}}exports.CfnWorkgroup=CfnWorkgroup,_b=JSII_RTTI_SYMBOL_1,CfnWorkgroup[_b]={fqn:"aws-cdk-lib.aws_redshiftserverless.CfnWorkgroup",version:"2.51.0"},CfnWorkgroup.CFN_RESOURCE_TYPE_NAME="AWS::RedshiftServerless::Workgroup";function CfnWorkgroup_ConfigParameterPropertyValidator(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("parameterKey",cdk.validateString)(properties.parameterKey)),errors.collect(cdk.propertyValidator("parameterValue",cdk.validateString)(properties.parameterValue)),errors.wrap('supplied properties not correct for "ConfigParameterProperty"')}function cfnWorkgroupConfigParameterPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkgroup_ConfigParameterPropertyValidator(properties).assertSuccess(),{ParameterKey:cdk.stringToCloudFormation(properties.parameterKey),ParameterValue:cdk.stringToCloudFormation(properties.parameterValue)}):properties}function CfnWorkgroupConfigParameterPropertyFromCloudFormation(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("parameterKey","ParameterKey",properties.ParameterKey!=null?cfn_parse.FromCloudFormation.getString(properties.ParameterKey):void 0),ret.addPropertyResult("parameterValue","ParameterValue",properties.ParameterValue!=null?cfn_parse.FromCloudFormation.getString(properties.ParameterValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}
1
+ "use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.CfnWorkgroup=exports.CfnNamespace=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 CfnNamespacePropsValidator(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("adminUserPassword",cdk.validateString)(properties.adminUserPassword)),errors.collect(cdk.propertyValidator("adminUsername",cdk.validateString)(properties.adminUsername)),errors.collect(cdk.propertyValidator("dbName",cdk.validateString)(properties.dbName)),errors.collect(cdk.propertyValidator("defaultIamRoleArn",cdk.validateString)(properties.defaultIamRoleArn)),errors.collect(cdk.propertyValidator("finalSnapshotName",cdk.validateString)(properties.finalSnapshotName)),errors.collect(cdk.propertyValidator("finalSnapshotRetentionPeriod",cdk.validateNumber)(properties.finalSnapshotRetentionPeriod)),errors.collect(cdk.propertyValidator("iamRoles",cdk.listValidator(cdk.validateString))(properties.iamRoles)),errors.collect(cdk.propertyValidator("kmsKeyId",cdk.validateString)(properties.kmsKeyId)),errors.collect(cdk.propertyValidator("logExports",cdk.listValidator(cdk.validateString))(properties.logExports)),errors.collect(cdk.propertyValidator("namespaceName",cdk.requiredValidator)(properties.namespaceName)),errors.collect(cdk.propertyValidator("namespaceName",cdk.validateString)(properties.namespaceName)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.wrap('supplied properties not correct for "CfnNamespaceProps"')}function cfnNamespacePropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnNamespacePropsValidator(properties).assertSuccess(),{NamespaceName:cdk.stringToCloudFormation(properties.namespaceName),AdminUsername:cdk.stringToCloudFormation(properties.adminUsername),AdminUserPassword:cdk.stringToCloudFormation(properties.adminUserPassword),DbName:cdk.stringToCloudFormation(properties.dbName),DefaultIamRoleArn:cdk.stringToCloudFormation(properties.defaultIamRoleArn),FinalSnapshotName:cdk.stringToCloudFormation(properties.finalSnapshotName),FinalSnapshotRetentionPeriod:cdk.numberToCloudFormation(properties.finalSnapshotRetentionPeriod),IamRoles:cdk.listMapper(cdk.stringToCloudFormation)(properties.iamRoles),KmsKeyId:cdk.stringToCloudFormation(properties.kmsKeyId),LogExports:cdk.listMapper(cdk.stringToCloudFormation)(properties.logExports),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnNamespacePropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("namespaceName","NamespaceName",cfn_parse.FromCloudFormation.getString(properties.NamespaceName)),ret.addPropertyResult("adminUsername","AdminUsername",properties.AdminUsername!=null?cfn_parse.FromCloudFormation.getString(properties.AdminUsername):void 0),ret.addPropertyResult("adminUserPassword","AdminUserPassword",properties.AdminUserPassword!=null?cfn_parse.FromCloudFormation.getString(properties.AdminUserPassword):void 0),ret.addPropertyResult("dbName","DbName",properties.DbName!=null?cfn_parse.FromCloudFormation.getString(properties.DbName):void 0),ret.addPropertyResult("defaultIamRoleArn","DefaultIamRoleArn",properties.DefaultIamRoleArn!=null?cfn_parse.FromCloudFormation.getString(properties.DefaultIamRoleArn):void 0),ret.addPropertyResult("finalSnapshotName","FinalSnapshotName",properties.FinalSnapshotName!=null?cfn_parse.FromCloudFormation.getString(properties.FinalSnapshotName):void 0),ret.addPropertyResult("finalSnapshotRetentionPeriod","FinalSnapshotRetentionPeriod",properties.FinalSnapshotRetentionPeriod!=null?cfn_parse.FromCloudFormation.getNumber(properties.FinalSnapshotRetentionPeriod):void 0),ret.addPropertyResult("iamRoles","IamRoles",properties.IamRoles!=null?cfn_parse.FromCloudFormation.getStringArray(properties.IamRoles):void 0),ret.addPropertyResult("kmsKeyId","KmsKeyId",properties.KmsKeyId!=null?cfn_parse.FromCloudFormation.getString(properties.KmsKeyId):void 0),ret.addPropertyResult("logExports","LogExports",properties.LogExports!=null?cfn_parse.FromCloudFormation.getStringArray(properties.LogExports):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 CfnNamespace extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnNamespace.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshiftserverless_CfnNamespaceProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnNamespace),error}cdk.requireProperty(props,"namespaceName",this),this.namespaceName=props.namespaceName,this.adminUsername=props.adminUsername,this.adminUserPassword=props.adminUserPassword,this.dbName=props.dbName,this.defaultIamRoleArn=props.defaultIamRoleArn,this.finalSnapshotName=props.finalSnapshotName,this.finalSnapshotRetentionPeriod=props.finalSnapshotRetentionPeriod,this.iamRoles=props.iamRoles,this.kmsKeyId=props.kmsKeyId,this.logExports=props.logExports,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::RedshiftServerless::Namespace",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnNamespacePropsFromCloudFormation(resourceProperties),ret=new CfnNamespace(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",CfnNamespace.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{namespaceName:this.namespaceName,adminUsername:this.adminUsername,adminUserPassword:this.adminUserPassword,dbName:this.dbName,defaultIamRoleArn:this.defaultIamRoleArn,finalSnapshotName:this.finalSnapshotName,finalSnapshotRetentionPeriod:this.finalSnapshotRetentionPeriod,iamRoles:this.iamRoles,kmsKeyId:this.kmsKeyId,logExports:this.logExports,tags:this.tags.renderTags()}}renderProperties(props){return cfnNamespacePropsToCloudFormation(props)}}exports.CfnNamespace=CfnNamespace,_a=JSII_RTTI_SYMBOL_1,CfnNamespace[_a]={fqn:"aws-cdk-lib.aws_redshiftserverless.CfnNamespace",version:"2.51.1"},CfnNamespace.CFN_RESOURCE_TYPE_NAME="AWS::RedshiftServerless::Namespace";function CfnWorkgroupPropsValidator(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("baseCapacity",cdk.validateNumber)(properties.baseCapacity)),errors.collect(cdk.propertyValidator("configParameters",cdk.listValidator(CfnWorkgroup_ConfigParameterPropertyValidator))(properties.configParameters)),errors.collect(cdk.propertyValidator("enhancedVpcRouting",cdk.validateBoolean)(properties.enhancedVpcRouting)),errors.collect(cdk.propertyValidator("namespaceName",cdk.validateString)(properties.namespaceName)),errors.collect(cdk.propertyValidator("publiclyAccessible",cdk.validateBoolean)(properties.publiclyAccessible)),errors.collect(cdk.propertyValidator("securityGroupIds",cdk.listValidator(cdk.validateString))(properties.securityGroupIds)),errors.collect(cdk.propertyValidator("subnetIds",cdk.listValidator(cdk.validateString))(properties.subnetIds)),errors.collect(cdk.propertyValidator("tags",cdk.listValidator(cdk.validateCfnTag))(properties.tags)),errors.collect(cdk.propertyValidator("workgroupName",cdk.requiredValidator)(properties.workgroupName)),errors.collect(cdk.propertyValidator("workgroupName",cdk.validateString)(properties.workgroupName)),errors.wrap('supplied properties not correct for "CfnWorkgroupProps"')}function cfnWorkgroupPropsToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkgroupPropsValidator(properties).assertSuccess(),{WorkgroupName:cdk.stringToCloudFormation(properties.workgroupName),BaseCapacity:cdk.numberToCloudFormation(properties.baseCapacity),ConfigParameters:cdk.listMapper(cfnWorkgroupConfigParameterPropertyToCloudFormation)(properties.configParameters),EnhancedVpcRouting:cdk.booleanToCloudFormation(properties.enhancedVpcRouting),NamespaceName:cdk.stringToCloudFormation(properties.namespaceName),PubliclyAccessible:cdk.booleanToCloudFormation(properties.publiclyAccessible),SecurityGroupIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.securityGroupIds),SubnetIds:cdk.listMapper(cdk.stringToCloudFormation)(properties.subnetIds),Tags:cdk.listMapper(cdk.cfnTagToCloudFormation)(properties.tags)}):properties}function CfnWorkgroupPropsFromCloudFormation(properties){if(properties=properties??{},typeof properties!="object")return new cfn_parse.FromCloudFormationResult(properties);const ret=new cfn_parse.FromCloudFormationPropertyObject;return ret.addPropertyResult("workgroupName","WorkgroupName",cfn_parse.FromCloudFormation.getString(properties.WorkgroupName)),ret.addPropertyResult("baseCapacity","BaseCapacity",properties.BaseCapacity!=null?cfn_parse.FromCloudFormation.getNumber(properties.BaseCapacity):void 0),ret.addPropertyResult("configParameters","ConfigParameters",properties.ConfigParameters!=null?cfn_parse.FromCloudFormation.getArray(CfnWorkgroupConfigParameterPropertyFromCloudFormation)(properties.ConfigParameters):void 0),ret.addPropertyResult("enhancedVpcRouting","EnhancedVpcRouting",properties.EnhancedVpcRouting!=null?cfn_parse.FromCloudFormation.getBoolean(properties.EnhancedVpcRouting):void 0),ret.addPropertyResult("namespaceName","NamespaceName",properties.NamespaceName!=null?cfn_parse.FromCloudFormation.getString(properties.NamespaceName):void 0),ret.addPropertyResult("publiclyAccessible","PubliclyAccessible",properties.PubliclyAccessible!=null?cfn_parse.FromCloudFormation.getBoolean(properties.PubliclyAccessible):void 0),ret.addPropertyResult("securityGroupIds","SecurityGroupIds",properties.SecurityGroupIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SecurityGroupIds):void 0),ret.addPropertyResult("subnetIds","SubnetIds",properties.SubnetIds!=null?cfn_parse.FromCloudFormation.getStringArray(properties.SubnetIds):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 CfnWorkgroup extends cdk.CfnResource{constructor(scope,id,props){super(scope,id,{type:CfnWorkgroup.CFN_RESOURCE_TYPE_NAME,properties:props});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_redshiftserverless_CfnWorkgroupProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CfnWorkgroup),error}cdk.requireProperty(props,"workgroupName",this),this.workgroupName=props.workgroupName,this.baseCapacity=props.baseCapacity,this.configParameters=props.configParameters,this.enhancedVpcRouting=props.enhancedVpcRouting,this.namespaceName=props.namespaceName,this.publiclyAccessible=props.publiclyAccessible,this.securityGroupIds=props.securityGroupIds,this.subnetIds=props.subnetIds,this.tags=new cdk.TagManager(cdk.TagType.STANDARD,"AWS::RedshiftServerless::Workgroup",props.tags,{tagPropertyName:"tags"})}static _fromCloudFormation(scope,id,resourceAttributes,options){resourceAttributes=resourceAttributes||{};const resourceProperties=options.parser.parseValue(resourceAttributes.Properties),propsResult=CfnWorkgroupPropsFromCloudFormation(resourceProperties),ret=new CfnWorkgroup(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",CfnWorkgroup.CFN_RESOURCE_TYPE_NAME),inspector.addAttribute("aws:cdk:cloudformation:props",this.cfnProperties)}get cfnProperties(){return{workgroupName:this.workgroupName,baseCapacity:this.baseCapacity,configParameters:this.configParameters,enhancedVpcRouting:this.enhancedVpcRouting,namespaceName:this.namespaceName,publiclyAccessible:this.publiclyAccessible,securityGroupIds:this.securityGroupIds,subnetIds:this.subnetIds,tags:this.tags.renderTags()}}renderProperties(props){return cfnWorkgroupPropsToCloudFormation(props)}}exports.CfnWorkgroup=CfnWorkgroup,_b=JSII_RTTI_SYMBOL_1,CfnWorkgroup[_b]={fqn:"aws-cdk-lib.aws_redshiftserverless.CfnWorkgroup",version:"2.51.1"},CfnWorkgroup.CFN_RESOURCE_TYPE_NAME="AWS::RedshiftServerless::Workgroup";function CfnWorkgroup_ConfigParameterPropertyValidator(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("parameterKey",cdk.validateString)(properties.parameterKey)),errors.collect(cdk.propertyValidator("parameterValue",cdk.validateString)(properties.parameterValue)),errors.wrap('supplied properties not correct for "ConfigParameterProperty"')}function cfnWorkgroupConfigParameterPropertyToCloudFormation(properties){return cdk.canInspect(properties)?(CfnWorkgroup_ConfigParameterPropertyValidator(properties).assertSuccess(),{ParameterKey:cdk.stringToCloudFormation(properties.parameterKey),ParameterValue:cdk.stringToCloudFormation(properties.parameterValue)}):properties}function CfnWorkgroupConfigParameterPropertyFromCloudFormation(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("parameterKey","ParameterKey",properties.ParameterKey!=null?cfn_parse.FromCloudFormation.getString(properties.ParameterKey):void 0),ret.addPropertyResult("parameterValue","ParameterValue",properties.ParameterValue!=null?cfn_parse.FromCloudFormation.getString(properties.ParameterValue):void 0),ret.addUnrecognizedPropertiesAsExtra(properties),ret}
2
2
  //# sourceMappingURL=redshiftserverless.generated.js.map