aws-cdk-lib 2.195.0__py3-none-any.whl → 2.224.0__py3-none-any.whl

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.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (572) hide show
  1. aws_cdk/__init__.py +1806 -417
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.195.0.jsii.tgz → aws-cdk-lib@2.224.0.jsii.tgz} +0 -0
  4. aws_cdk/alexa_ask/__init__.py +12 -2
  5. aws_cdk/aws_accessanalyzer/__init__.py +323 -6
  6. aws_cdk/aws_acmpca/__init__.py +53 -10
  7. aws_cdk/aws_aiops/__init__.py +1019 -0
  8. aws_cdk/aws_amazonmq/__init__.py +357 -313
  9. aws_cdk/aws_amplify/__init__.py +173 -17
  10. aws_cdk/aws_amplifyuibuilder/__init__.py +35 -6
  11. aws_cdk/aws_apigateway/__init__.py +1245 -215
  12. aws_cdk/aws_apigatewayv2/__init__.py +3890 -476
  13. aws_cdk/aws_apigatewayv2_integrations/__init__.py +94 -16
  14. aws_cdk/aws_appconfig/__init__.py +618 -91
  15. aws_cdk/aws_appflow/__init__.py +151 -6
  16. aws_cdk/aws_appintegrations/__init__.py +546 -6
  17. aws_cdk/aws_applicationautoscaling/__init__.py +75 -10
  18. aws_cdk/aws_applicationinsights/__init__.py +13 -2
  19. aws_cdk/aws_applicationsignals/__init__.py +374 -6
  20. aws_cdk/aws_appmesh/__init__.py +136 -26
  21. aws_cdk/aws_apprunner/__init__.py +66 -18
  22. aws_cdk/aws_appstream/__init__.py +309 -55
  23. aws_cdk/aws_appsync/__init__.py +350 -94
  24. aws_cdk/aws_apptest/__init__.py +71 -2
  25. aws_cdk/aws_aps/__init__.py +2188 -94
  26. aws_cdk/aws_arcregionswitch/__init__.py +5095 -0
  27. aws_cdk/aws_arczonalshift/__init__.py +39 -12
  28. aws_cdk/aws_athena/__init__.py +365 -29
  29. aws_cdk/aws_auditmanager/__init__.py +71 -2
  30. aws_cdk/aws_autoscaling/__init__.py +165 -60
  31. aws_cdk/aws_autoscaling_common/__init__.py +3 -0
  32. aws_cdk/aws_autoscalingplans/__init__.py +13 -2
  33. aws_cdk/aws_b2bi/__init__.py +1819 -99
  34. aws_cdk/aws_backup/__init__.py +370 -42
  35. aws_cdk/aws_backupgateway/__init__.py +13 -2
  36. aws_cdk/aws_batch/__init__.py +1462 -163
  37. aws_cdk/aws_bcmdataexports/__init__.py +21 -2
  38. aws_cdk/aws_bedrock/__init__.py +7867 -727
  39. aws_cdk/aws_bedrockagentcore/__init__.py +10425 -0
  40. aws_cdk/aws_billingconductor/__init__.py +197 -11
  41. aws_cdk/aws_budgets/__init__.py +611 -4
  42. aws_cdk/aws_cassandra/__init__.py +247 -6
  43. aws_cdk/aws_ce/__init__.py +35 -6
  44. aws_cdk/aws_certificatemanager/__init__.py +258 -32
  45. aws_cdk/aws_chatbot/__init__.py +76 -6
  46. aws_cdk/aws_cleanrooms/__init__.py +709 -206
  47. aws_cdk/aws_cleanroomsml/__init__.py +13 -2
  48. aws_cdk/aws_cloud9/__init__.py +13 -2
  49. aws_cdk/aws_cloudformation/__init__.py +362 -189
  50. aws_cdk/aws_cloudfront/__init__.py +2188 -674
  51. aws_cdk/aws_cloudfront/experimental/__init__.py +114 -16
  52. aws_cdk/aws_cloudfront_origins/__init__.py +615 -74
  53. aws_cdk/aws_cloudtrail/__init__.py +311 -21
  54. aws_cdk/aws_cloudwatch/__init__.py +3093 -1038
  55. aws_cdk/aws_cloudwatch_actions/__init__.py +75 -1
  56. aws_cdk/aws_codeartifact/__init__.py +35 -6
  57. aws_cdk/aws_codebuild/__init__.py +1303 -135
  58. aws_cdk/aws_codecommit/__init__.py +29 -9
  59. aws_cdk/aws_codeconnections/__init__.py +13 -2
  60. aws_cdk/aws_codedeploy/__init__.py +130 -6
  61. aws_cdk/aws_codeguruprofiler/__init__.py +80 -2
  62. aws_cdk/aws_codegurureviewer/__init__.py +13 -2
  63. aws_cdk/aws_codepipeline/__init__.py +177 -71
  64. aws_cdk/aws_codepipeline_actions/__init__.py +753 -4
  65. aws_cdk/aws_codestar/__init__.py +13 -2
  66. aws_cdk/aws_codestarconnections/__init__.py +35 -6
  67. aws_cdk/aws_codestarnotifications/__init__.py +22 -2
  68. aws_cdk/aws_cognito/__init__.py +905 -92
  69. aws_cdk/aws_cognito_identitypool/__init__.py +23 -12
  70. aws_cdk/aws_comprehend/__init__.py +24 -4
  71. aws_cdk/aws_config/__init__.py +227 -30
  72. aws_cdk/aws_connect/__init__.py +2736 -191
  73. aws_cdk/aws_connectcampaigns/__init__.py +13 -2
  74. aws_cdk/aws_connectcampaignsv2/__init__.py +268 -6
  75. aws_cdk/aws_controltower/__init__.py +35 -6
  76. aws_cdk/aws_cur/__init__.py +100 -4
  77. aws_cdk/aws_customerprofiles/__init__.py +617 -27
  78. aws_cdk/aws_databrew/__init__.py +68 -12
  79. aws_cdk/aws_datapipeline/__init__.py +42 -2
  80. aws_cdk/aws_datasync/__init__.py +1514 -977
  81. aws_cdk/aws_datazone/__init__.py +7426 -1763
  82. aws_cdk/aws_dax/__init__.py +83 -6
  83. aws_cdk/aws_deadline/__init__.py +511 -36
  84. aws_cdk/aws_detective/__init__.py +35 -6
  85. aws_cdk/aws_devicefarm/__init__.py +68 -12
  86. aws_cdk/aws_devopsguru/__init__.py +37 -6
  87. aws_cdk/aws_directoryservice/__init__.py +53 -4
  88. aws_cdk/aws_dlm/__init__.py +13 -2
  89. aws_cdk/aws_dms/__init__.py +184 -27
  90. aws_cdk/aws_docdb/__init__.py +350 -49
  91. aws_cdk/aws_docdbelastic/__init__.py +13 -2
  92. aws_cdk/aws_dsql/__init__.py +386 -16
  93. aws_cdk/aws_dynamodb/__init__.py +1479 -170
  94. aws_cdk/aws_ec2/__init__.py +10465 -1335
  95. aws_cdk/aws_ecr/__init__.py +637 -43
  96. aws_cdk/aws_ecr_assets/__init__.py +10 -0
  97. aws_cdk/aws_ecs/__init__.py +6629 -490
  98. aws_cdk/aws_ecs_patterns/__init__.py +124 -12
  99. aws_cdk/aws_efs/__init__.py +276 -24
  100. aws_cdk/aws_eks/__init__.py +1132 -227
  101. aws_cdk/aws_elasticache/__init__.py +378 -25
  102. aws_cdk/aws_elasticbeanstalk/__init__.py +75 -8
  103. aws_cdk/aws_elasticloadbalancing/__init__.py +22 -2
  104. aws_cdk/aws_elasticloadbalancingv2/__init__.py +1796 -123
  105. aws_cdk/aws_elasticsearch/__init__.py +291 -9
  106. aws_cdk/aws_emr/__init__.py +219 -18
  107. aws_cdk/aws_emrcontainers/__init__.py +71 -2
  108. aws_cdk/aws_emrserverless/__init__.py +188 -3
  109. aws_cdk/aws_entityresolution/__init__.py +585 -58
  110. aws_cdk/aws_events/__init__.py +1007 -126
  111. aws_cdk/aws_events_targets/__init__.py +398 -65
  112. aws_cdk/aws_eventschemas/__init__.py +46 -8
  113. aws_cdk/aws_evidently/__init__.py +57 -10
  114. aws_cdk/aws_evs/__init__.py +2244 -0
  115. aws_cdk/aws_finspace/__init__.py +71 -2
  116. aws_cdk/aws_fis/__init__.py +26 -4
  117. aws_cdk/aws_fms/__init__.py +35 -6
  118. aws_cdk/aws_forecast/__init__.py +24 -4
  119. aws_cdk/aws_frauddetector/__init__.py +79 -14
  120. aws_cdk/aws_fsx/__init__.py +1349 -127
  121. aws_cdk/aws_gamelift/__init__.py +755 -94
  122. aws_cdk/aws_gameliftstreams/__init__.py +44 -22
  123. aws_cdk/aws_globalaccelerator/__init__.py +73 -14
  124. aws_cdk/aws_glue/__init__.py +1455 -378
  125. aws_cdk/aws_grafana/__init__.py +13 -2
  126. aws_cdk/aws_greengrass/__init__.py +654 -32
  127. aws_cdk/aws_greengrassv2/__init__.py +53 -4
  128. aws_cdk/aws_groundstation/__init__.py +122 -6
  129. aws_cdk/aws_guardduty/__init__.py +1613 -123
  130. aws_cdk/aws_healthimaging/__init__.py +71 -2
  131. aws_cdk/aws_healthlake/__init__.py +42 -2
  132. aws_cdk/aws_iam/__init__.py +921 -141
  133. aws_cdk/aws_identitystore/__init__.py +24 -4
  134. aws_cdk/aws_imagebuilder/__init__.py +1454 -199
  135. aws_cdk/aws_inspector/__init__.py +44 -6
  136. aws_cdk/aws_inspectorv2/__init__.py +2285 -243
  137. aws_cdk/aws_internetmonitor/__init__.py +71 -2
  138. aws_cdk/aws_invoicing/__init__.py +13 -2
  139. aws_cdk/aws_iot/__init__.py +1760 -64
  140. aws_cdk/aws_iotanalytics/__init__.py +162 -8
  141. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +106 -40
  142. aws_cdk/aws_iotevents/__init__.py +122 -6
  143. aws_cdk/aws_iotfleethub/__init__.py +71 -2
  144. aws_cdk/aws_iotfleetwise/__init__.py +195 -14
  145. aws_cdk/aws_iotsitewise/__init__.py +1837 -89
  146. aws_cdk/aws_iotthingsgraph/__init__.py +13 -2
  147. aws_cdk/aws_iottwinmaker/__init__.py +115 -10
  148. aws_cdk/aws_iotwireless/__init__.py +649 -22
  149. aws_cdk/aws_ivs/__init__.py +561 -57
  150. aws_cdk/aws_ivschat/__init__.py +24 -4
  151. aws_cdk/aws_kafkaconnect/__init__.py +35 -6
  152. aws_cdk/aws_kendra/__init__.py +120 -28
  153. aws_cdk/aws_kendraranking/__init__.py +13 -2
  154. aws_cdk/aws_kinesis/__init__.py +641 -23
  155. aws_cdk/aws_kinesisanalytics/__init__.py +467 -96
  156. aws_cdk/aws_kinesisanalyticsv2/__init__.py +207 -19
  157. aws_cdk/aws_kinesisfirehose/__init__.py +3087 -295
  158. aws_cdk/aws_kinesisvideo/__init__.py +24 -4
  159. aws_cdk/aws_kms/__init__.py +204 -45
  160. aws_cdk/aws_lakeformation/__init__.py +80 -15
  161. aws_cdk/aws_lambda/__init__.py +2236 -297
  162. aws_cdk/aws_lambda_event_sources/__init__.py +638 -1
  163. aws_cdk/aws_lambda_nodejs/__init__.py +63 -24
  164. aws_cdk/aws_launchwizard/__init__.py +13 -2
  165. aws_cdk/aws_lex/__init__.py +2162 -212
  166. aws_cdk/aws_licensemanager/__init__.py +24 -4
  167. aws_cdk/aws_lightsail/__init__.py +2958 -1322
  168. aws_cdk/aws_location/__init__.py +618 -14
  169. aws_cdk/aws_logs/__init__.py +6014 -923
  170. aws_cdk/aws_lookoutequipment/__init__.py +13 -2
  171. aws_cdk/aws_lookoutmetrics/__init__.py +38 -6
  172. aws_cdk/aws_lookoutvision/__init__.py +71 -2
  173. aws_cdk/aws_m2/__init__.py +94 -19
  174. aws_cdk/aws_macie/__init__.py +49 -11
  175. aws_cdk/aws_managedblockchain/__init__.py +180 -6
  176. aws_cdk/aws_mediaconnect/__init__.py +101 -18
  177. aws_cdk/aws_mediaconvert/__init__.py +35 -6
  178. aws_cdk/aws_medialive/__init__.py +1938 -532
  179. aws_cdk/aws_mediapackage/__init__.py +59 -12
  180. aws_cdk/aws_mediapackagev2/__init__.py +1616 -233
  181. aws_cdk/aws_mediastore/__init__.py +13 -2
  182. aws_cdk/aws_mediatailor/__init__.py +583 -12
  183. aws_cdk/aws_memorydb/__init__.py +271 -12
  184. aws_cdk/aws_mpa/__init__.py +1495 -0
  185. aws_cdk/aws_msk/__init__.py +108 -22
  186. aws_cdk/aws_mwaa/__init__.py +121 -9
  187. aws_cdk/aws_neptune/__init__.py +290 -78
  188. aws_cdk/aws_neptunegraph/__init__.py +24 -4
  189. aws_cdk/aws_networkfirewall/__init__.py +1184 -164
  190. aws_cdk/aws_networkmanager/__init__.py +349 -33
  191. aws_cdk/aws_nimblestudio/__init__.py +283 -408
  192. aws_cdk/aws_notifications/__init__.py +317 -12
  193. aws_cdk/aws_notificationscontacts/__init__.py +13 -2
  194. aws_cdk/aws_oam/__init__.py +24 -4
  195. aws_cdk/aws_observabilityadmin/__init__.py +2561 -0
  196. aws_cdk/aws_odb/__init__.py +5872 -0
  197. aws_cdk/aws_omics/__init__.py +2967 -162
  198. aws_cdk/aws_opensearchserverless/__init__.py +312 -37
  199. aws_cdk/aws_opensearchservice/__init__.py +501 -19
  200. aws_cdk/aws_opsworks/__init__.py +235 -139
  201. aws_cdk/aws_opsworkscm/__init__.py +16 -52
  202. aws_cdk/aws_organizations/__init__.py +70 -10
  203. aws_cdk/aws_osis/__init__.py +167 -2
  204. aws_cdk/aws_panorama/__init__.py +181 -9
  205. aws_cdk/aws_paymentcryptography/__init__.py +24 -4
  206. aws_cdk/aws_pcaconnectorad/__init__.py +59 -10
  207. aws_cdk/aws_pcaconnectorscep/__init__.py +24 -4
  208. aws_cdk/aws_pcs/__init__.py +516 -64
  209. aws_cdk/aws_personalize/__init__.py +46 -8
  210. aws_cdk/aws_pinpoint/__init__.py +329 -38
  211. aws_cdk/aws_pinpointemail/__init__.py +48 -8
  212. aws_cdk/aws_pipes/__init__.py +12 -2
  213. aws_cdk/aws_proton/__init__.py +37 -6
  214. aws_cdk/aws_qbusiness/__init__.py +635 -34
  215. aws_cdk/aws_qldb/__init__.py +24 -4
  216. aws_cdk/aws_quicksight/__init__.py +7900 -1160
  217. aws_cdk/aws_ram/__init__.py +24 -4
  218. aws_cdk/aws_rbin/__init__.py +12 -2
  219. aws_cdk/aws_rds/__init__.py +3721 -573
  220. aws_cdk/aws_redshift/__init__.py +143 -20
  221. aws_cdk/aws_redshiftserverless/__init__.py +699 -11
  222. aws_cdk/aws_refactorspaces/__init__.py +64 -14
  223. aws_cdk/aws_rekognition/__init__.py +93 -6
  224. aws_cdk/aws_resiliencehub/__init__.py +24 -4
  225. aws_cdk/aws_resourceexplorer2/__init__.py +35 -6
  226. aws_cdk/aws_resourcegroups/__init__.py +82 -4
  227. aws_cdk/aws_robomaker/__init__.py +72 -12
  228. aws_cdk/aws_rolesanywhere/__init__.py +194 -19
  229. aws_cdk/aws_route53/__init__.py +3965 -1436
  230. aws_cdk/aws_route53_targets/__init__.py +3 -0
  231. aws_cdk/aws_route53profiles/__init__.py +37 -6
  232. aws_cdk/aws_route53recoverycontrol/__init__.py +46 -8
  233. aws_cdk/aws_route53recoveryreadiness/__init__.py +104 -8
  234. aws_cdk/aws_route53resolver/__init__.py +189 -40
  235. aws_cdk/aws_rtbfabric/__init__.py +3498 -0
  236. aws_cdk/aws_rum/__init__.py +13 -2
  237. aws_cdk/aws_s3/__init__.py +1742 -221
  238. aws_cdk/aws_s3_assets/__init__.py +11 -11
  239. aws_cdk/aws_s3_deployment/__init__.py +153 -11
  240. aws_cdk/aws_s3_notifications/__init__.py +7 -7
  241. aws_cdk/aws_s3express/__init__.py +1053 -6
  242. aws_cdk/aws_s3objectlambda/__init__.py +68 -16
  243. aws_cdk/aws_s3outposts/__init__.py +46 -8
  244. aws_cdk/aws_s3tables/__init__.py +2000 -323
  245. aws_cdk/aws_s3vectors/__init__.py +1378 -0
  246. aws_cdk/aws_sagemaker/__init__.py +6848 -373
  247. aws_cdk/aws_sam/__init__.py +79 -14
  248. aws_cdk/aws_scheduler/__init__.py +249 -4
  249. aws_cdk/aws_sdb/__init__.py +12 -2
  250. aws_cdk/aws_secretsmanager/__init__.py +194 -14
  251. aws_cdk/aws_securityhub/__init__.py +3121 -176
  252. aws_cdk/aws_securitylake/__init__.py +46 -8
  253. aws_cdk/aws_servicecatalog/__init__.py +429 -246
  254. aws_cdk/aws_servicecatalogappregistry/__init__.py +164 -8
  255. aws_cdk/aws_servicediscovery/__init__.py +188 -47
  256. aws_cdk/aws_ses/__init__.py +2265 -369
  257. aws_cdk/aws_shield/__init__.py +46 -8
  258. aws_cdk/aws_signer/__init__.py +33 -4
  259. aws_cdk/aws_simspaceweaver/__init__.py +42 -2
  260. aws_cdk/aws_smsvoice/__init__.py +4716 -0
  261. aws_cdk/aws_sns/__init__.py +263 -29
  262. aws_cdk/aws_sns_subscriptions/__init__.py +265 -2
  263. aws_cdk/aws_sqs/__init__.py +223 -14
  264. aws_cdk/aws_ssm/__init__.py +413 -58
  265. aws_cdk/aws_ssmcontacts/__init__.py +98 -9
  266. aws_cdk/aws_ssmguiconnect/__init__.py +20 -9
  267. aws_cdk/aws_ssmincidents/__init__.py +24 -4
  268. aws_cdk/aws_ssmquicksetup/__init__.py +393 -8
  269. aws_cdk/aws_sso/__init__.py +70 -12
  270. aws_cdk/aws_stepfunctions/__init__.py +823 -94
  271. aws_cdk/aws_stepfunctions_tasks/__init__.py +2323 -150
  272. aws_cdk/aws_supportapp/__init__.py +39 -6
  273. aws_cdk/aws_synthetics/__init__.py +1088 -126
  274. aws_cdk/aws_systemsmanagersap/__init__.py +13 -2
  275. aws_cdk/aws_timestream/__init__.py +104 -8
  276. aws_cdk/aws_transfer/__init__.py +784 -87
  277. aws_cdk/aws_verifiedpermissions/__init__.py +306 -13
  278. aws_cdk/aws_voiceid/__init__.py +54 -5
  279. aws_cdk/aws_vpclattice/__init__.py +589 -231
  280. aws_cdk/aws_waf/__init__.py +79 -14
  281. aws_cdk/aws_wafregional/__init__.py +123 -22
  282. aws_cdk/aws_wafv2/__init__.py +1183 -64
  283. aws_cdk/aws_wisdom/__init__.py +1403 -90
  284. aws_cdk/aws_workspaces/__init__.py +134 -6
  285. aws_cdk/aws_workspacesinstances/__init__.py +3940 -0
  286. aws_cdk/aws_workspacesthinclient/__init__.py +79 -10
  287. aws_cdk/aws_workspacesweb/__init__.py +1057 -141
  288. aws_cdk/aws_xray/__init__.py +48 -8
  289. aws_cdk/cloud_assembly_schema/__init__.py +368 -48
  290. aws_cdk/custom_resources/__init__.py +58 -12
  291. aws_cdk/cx_api/__init__.py +125 -21
  292. aws_cdk/interfaces/__init__.py +739 -0
  293. aws_cdk/interfaces/alexa_ask/__init__.py +146 -0
  294. aws_cdk/interfaces/aws_accessanalyzer/__init__.py +146 -0
  295. aws_cdk/interfaces/aws_acmpca/__init__.py +501 -0
  296. aws_cdk/interfaces/aws_aiops/__init__.py +146 -0
  297. aws_cdk/interfaces/aws_amazonmq/__init__.py +386 -0
  298. aws_cdk/interfaces/aws_amplify/__init__.py +352 -0
  299. aws_cdk/interfaces/aws_amplifyuibuilder/__init__.py +454 -0
  300. aws_cdk/interfaces/aws_apigateway/__init__.py +2486 -0
  301. aws_cdk/interfaces/aws_apigatewayv2/__init__.py +1651 -0
  302. aws_cdk/interfaces/aws_appconfig/__init__.py +1020 -0
  303. aws_cdk/interfaces/aws_appflow/__init__.py +404 -0
  304. aws_cdk/interfaces/aws_appintegrations/__init__.py +396 -0
  305. aws_cdk/interfaces/aws_applicationautoscaling/__init__.py +307 -0
  306. aws_cdk/interfaces/aws_applicationinsights/__init__.py +148 -0
  307. aws_cdk/interfaces/aws_applicationsignals/__init__.py +358 -0
  308. aws_cdk/interfaces/aws_appmesh/__init__.py +888 -0
  309. aws_cdk/interfaces/aws_apprunner/__init__.py +564 -0
  310. aws_cdk/interfaces/aws_appstream/__init__.py +1482 -0
  311. aws_cdk/interfaces/aws_appsync/__init__.py +1326 -0
  312. aws_cdk/interfaces/aws_apptest/__init__.py +163 -0
  313. aws_cdk/interfaces/aws_aps/__init__.py +558 -0
  314. aws_cdk/interfaces/aws_arcregionswitch/__init__.py +146 -0
  315. aws_cdk/interfaces/aws_arczonalshift/__init__.py +273 -0
  316. aws_cdk/interfaces/aws_athena/__init__.py +575 -0
  317. aws_cdk/interfaces/aws_auditmanager/__init__.py +163 -0
  318. aws_cdk/interfaces/aws_autoscaling/__init__.py +705 -0
  319. aws_cdk/interfaces/aws_autoscalingplans/__init__.py +148 -0
  320. aws_cdk/interfaces/aws_b2bi/__init__.py +524 -0
  321. aws_cdk/interfaces/aws_backup/__init__.py +955 -0
  322. aws_cdk/interfaces/aws_backupgateway/__init__.py +146 -0
  323. aws_cdk/interfaces/aws_batch/__init__.py +681 -0
  324. aws_cdk/interfaces/aws_bcmdataexports/__init__.py +146 -0
  325. aws_cdk/interfaces/aws_bedrock/__init__.py +1942 -0
  326. aws_cdk/interfaces/aws_bedrockagentcore/__init__.py +934 -0
  327. aws_cdk/interfaces/aws_billing/__init__.py +146 -0
  328. aws_cdk/interfaces/aws_billingconductor/__init__.py +463 -0
  329. aws_cdk/interfaces/aws_budgets/__init__.py +261 -0
  330. aws_cdk/interfaces/aws_cassandra/__init__.py +381 -0
  331. aws_cdk/interfaces/aws_ce/__init__.py +352 -0
  332. aws_cdk/interfaces/aws_certificatemanager/__init__.py +251 -0
  333. aws_cdk/interfaces/aws_chatbot/__init__.py +366 -0
  334. aws_cdk/interfaces/aws_cleanrooms/__init__.py +1103 -0
  335. aws_cdk/interfaces/aws_cleanroomsml/__init__.py +148 -0
  336. aws_cdk/interfaces/aws_cloud9/__init__.py +166 -0
  337. aws_cdk/interfaces/aws_cloudformation/__init__.py +1919 -0
  338. aws_cdk/interfaces/aws_cloudfront/__init__.py +1998 -0
  339. aws_cdk/interfaces/aws_cloudtrail/__init__.py +570 -0
  340. aws_cdk/interfaces/aws_cloudwatch/__init__.py +733 -0
  341. aws_cdk/interfaces/aws_codeartifact/__init__.py +352 -0
  342. aws_cdk/interfaces/aws_codebuild/__init__.py +487 -0
  343. aws_cdk/interfaces/aws_codecommit/__init__.py +163 -0
  344. aws_cdk/interfaces/aws_codeconnections/__init__.py +146 -0
  345. aws_cdk/interfaces/aws_codedeploy/__init__.py +352 -0
  346. aws_cdk/interfaces/aws_codeguruprofiler/__init__.py +168 -0
  347. aws_cdk/interfaces/aws_codegurureviewer/__init__.py +148 -0
  348. aws_cdk/interfaces/aws_codepipeline/__init__.py +388 -0
  349. aws_cdk/interfaces/aws_codestar/__init__.py +146 -0
  350. aws_cdk/interfaces/aws_codestarconnections/__init__.py +370 -0
  351. aws_cdk/interfaces/aws_codestarnotifications/__init__.py +148 -0
  352. aws_cdk/interfaces/aws_cognito/__init__.py +1929 -0
  353. aws_cdk/interfaces/aws_comprehend/__init__.py +251 -0
  354. aws_cdk/interfaces/aws_config/__init__.py +1165 -0
  355. aws_cdk/interfaces/aws_connect/__init__.py +2949 -0
  356. aws_cdk/interfaces/aws_connectcampaigns/__init__.py +146 -0
  357. aws_cdk/interfaces/aws_connectcampaignsv2/__init__.py +146 -0
  358. aws_cdk/interfaces/aws_controltower/__init__.py +394 -0
  359. aws_cdk/interfaces/aws_cur/__init__.py +146 -0
  360. aws_cdk/interfaces/aws_customerprofiles/__init__.py +915 -0
  361. aws_cdk/interfaces/aws_databrew/__init__.py +661 -0
  362. aws_cdk/interfaces/aws_datapipeline/__init__.py +146 -0
  363. aws_cdk/interfaces/aws_datasync/__init__.py +1384 -0
  364. aws_cdk/interfaces/aws_datazone/__init__.py +2238 -0
  365. aws_cdk/interfaces/aws_dax/__init__.py +364 -0
  366. aws_cdk/interfaces/aws_deadline/__init__.py +1303 -0
  367. aws_cdk/interfaces/aws_detective/__init__.py +364 -0
  368. aws_cdk/interfaces/aws_devicefarm/__init__.py +663 -0
  369. aws_cdk/interfaces/aws_devopsguru/__init__.py +362 -0
  370. aws_cdk/interfaces/aws_directoryservice/__init__.py +251 -0
  371. aws_cdk/interfaces/aws_dlm/__init__.py +166 -0
  372. aws_cdk/interfaces/aws_dms/__init__.py +1176 -0
  373. aws_cdk/interfaces/aws_docdb/__init__.py +560 -0
  374. aws_cdk/interfaces/aws_docdbelastic/__init__.py +146 -0
  375. aws_cdk/interfaces/aws_dsql/__init__.py +146 -0
  376. aws_cdk/interfaces/aws_dynamodb/__init__.py +278 -0
  377. aws_cdk/interfaces/aws_ec2/__init__.py +11963 -0
  378. aws_cdk/interfaces/aws_ecr/__init__.py +814 -0
  379. aws_cdk/interfaces/aws_ecs/__init__.py +845 -0
  380. aws_cdk/interfaces/aws_efs/__init__.py +392 -0
  381. aws_cdk/interfaces/aws_eks/__init__.py +948 -0
  382. aws_cdk/interfaces/aws_elasticache/__init__.py +1108 -0
  383. aws_cdk/interfaces/aws_elasticbeanstalk/__init__.py +503 -0
  384. aws_cdk/interfaces/aws_elasticloadbalancing/__init__.py +148 -0
  385. aws_cdk/interfaces/aws_elasticloadbalancingv2/__init__.py +795 -0
  386. aws_cdk/interfaces/aws_elasticsearch/__init__.py +158 -0
  387. aws_cdk/interfaces/aws_emr/__init__.py +913 -0
  388. aws_cdk/interfaces/aws_emrcontainers/__init__.py +168 -0
  389. aws_cdk/interfaces/aws_emrserverless/__init__.py +166 -0
  390. aws_cdk/interfaces/aws_entityresolution/__init__.py +608 -0
  391. aws_cdk/interfaces/aws_events/__init__.py +872 -0
  392. aws_cdk/interfaces/aws_eventschemas/__init__.py +455 -0
  393. aws_cdk/interfaces/aws_evidently/__init__.py +558 -0
  394. aws_cdk/interfaces/aws_evs/__init__.py +166 -0
  395. aws_cdk/interfaces/aws_finspace/__init__.py +166 -0
  396. aws_cdk/interfaces/aws_fis/__init__.py +271 -0
  397. aws_cdk/interfaces/aws_fms/__init__.py +364 -0
  398. aws_cdk/interfaces/aws_forecast/__init__.py +249 -0
  399. aws_cdk/interfaces/aws_frauddetector/__init__.py +764 -0
  400. aws_cdk/interfaces/aws_fsx/__init__.py +663 -0
  401. aws_cdk/interfaces/aws_gamelift/__init__.py +1325 -0
  402. aws_cdk/interfaces/aws_gameliftstreams/__init__.py +249 -0
  403. aws_cdk/interfaces/aws_globalaccelerator/__init__.py +461 -0
  404. aws_cdk/interfaces/aws_glue/__init__.py +2377 -0
  405. aws_cdk/interfaces/aws_grafana/__init__.py +146 -0
  406. aws_cdk/interfaces/aws_greengrass/__init__.py +1871 -0
  407. aws_cdk/interfaces/aws_greengrassv2/__init__.py +251 -0
  408. aws_cdk/interfaces/aws_groundstation/__init__.py +396 -0
  409. aws_cdk/interfaces/aws_guardduty/__init__.py +1225 -0
  410. aws_cdk/interfaces/aws_healthimaging/__init__.py +163 -0
  411. aws_cdk/interfaces/aws_healthlake/__init__.py +146 -0
  412. aws_cdk/interfaces/aws_iam/__init__.py +1803 -0
  413. aws_cdk/interfaces/aws_identitystore/__init__.py +288 -0
  414. aws_cdk/interfaces/aws_imagebuilder/__init__.py +984 -0
  415. aws_cdk/interfaces/aws_inspector/__init__.py +354 -0
  416. aws_cdk/interfaces/aws_inspectorv2/__init__.py +467 -0
  417. aws_cdk/interfaces/aws_internetmonitor/__init__.py +163 -0
  418. aws_cdk/interfaces/aws_invoicing/__init__.py +146 -0
  419. aws_cdk/interfaces/aws_iot/__init__.py +3483 -0
  420. aws_cdk/interfaces/aws_iotanalytics/__init__.py +455 -0
  421. aws_cdk/interfaces/aws_iotcoredeviceadvisor/__init__.py +168 -0
  422. aws_cdk/interfaces/aws_iotevents/__init__.py +352 -0
  423. aws_cdk/interfaces/aws_iotfleethub/__init__.py +166 -0
  424. aws_cdk/interfaces/aws_iotfleetwise/__init__.py +892 -0
  425. aws_cdk/interfaces/aws_iotsitewise/__init__.py +1097 -0
  426. aws_cdk/interfaces/aws_iotthingsgraph/__init__.py +146 -0
  427. aws_cdk/interfaces/aws_iottwinmaker/__init__.py +711 -0
  428. aws_cdk/interfaces/aws_iotwireless/__init__.py +1401 -0
  429. aws_cdk/interfaces/aws_ivs/__init__.py +1075 -0
  430. aws_cdk/interfaces/aws_ivschat/__init__.py +251 -0
  431. aws_cdk/interfaces/aws_kafkaconnect/__init__.py +354 -0
  432. aws_cdk/interfaces/aws_kendra/__init__.py +428 -0
  433. aws_cdk/interfaces/aws_kendraranking/__init__.py +166 -0
  434. aws_cdk/interfaces/aws_kinesis/__init__.py +364 -0
  435. aws_cdk/interfaces/aws_kinesisanalytics/__init__.py +364 -0
  436. aws_cdk/interfaces/aws_kinesisanalyticsv2/__init__.py +479 -0
  437. aws_cdk/interfaces/aws_kinesisfirehose/__init__.py +168 -0
  438. aws_cdk/interfaces/aws_kinesisvideo/__init__.py +283 -0
  439. aws_cdk/interfaces/aws_kms/__init__.py +376 -0
  440. aws_cdk/interfaces/aws_lakeformation/__init__.py +860 -0
  441. aws_cdk/interfaces/aws_lambda/__init__.py +1141 -0
  442. aws_cdk/interfaces/aws_launchwizard/__init__.py +146 -0
  443. aws_cdk/interfaces/aws_lex/__init__.py +513 -0
  444. aws_cdk/interfaces/aws_licensemanager/__init__.py +249 -0
  445. aws_cdk/interfaces/aws_lightsail/__init__.py +1744 -0
  446. aws_cdk/interfaces/aws_location/__init__.py +879 -0
  447. aws_cdk/interfaces/aws_logs/__init__.py +1667 -0
  448. aws_cdk/interfaces/aws_lookoutequipment/__init__.py +168 -0
  449. aws_cdk/interfaces/aws_lookoutmetrics/__init__.py +251 -0
  450. aws_cdk/interfaces/aws_lookoutvision/__init__.py +163 -0
  451. aws_cdk/interfaces/aws_m2/__init__.py +352 -0
  452. aws_cdk/interfaces/aws_macie/__init__.py +512 -0
  453. aws_cdk/interfaces/aws_managedblockchain/__init__.py +381 -0
  454. aws_cdk/interfaces/aws_mediaconnect/__init__.py +1028 -0
  455. aws_cdk/interfaces/aws_mediaconvert/__init__.py +396 -0
  456. aws_cdk/interfaces/aws_medialive/__init__.py +1755 -0
  457. aws_cdk/interfaces/aws_mediapackage/__init__.py +644 -0
  458. aws_cdk/interfaces/aws_mediapackagev2/__init__.py +618 -0
  459. aws_cdk/interfaces/aws_mediastore/__init__.py +146 -0
  460. aws_cdk/interfaces/aws_mediatailor/__init__.py +788 -0
  461. aws_cdk/interfaces/aws_memorydb/__init__.py +685 -0
  462. aws_cdk/interfaces/aws_mpa/__init__.py +249 -0
  463. aws_cdk/interfaces/aws_msk/__init__.py +764 -0
  464. aws_cdk/interfaces/aws_mwaa/__init__.py +166 -0
  465. aws_cdk/interfaces/aws_neptune/__init__.py +663 -0
  466. aws_cdk/interfaces/aws_neptunegraph/__init__.py +265 -0
  467. aws_cdk/interfaces/aws_networkfirewall/__init__.py +669 -0
  468. aws_cdk/interfaces/aws_networkmanager/__init__.py +1832 -0
  469. aws_cdk/interfaces/aws_nimblestudio/__init__.py +388 -0
  470. aws_cdk/interfaces/aws_notifications/__init__.py +868 -0
  471. aws_cdk/interfaces/aws_notificationscontacts/__init__.py +148 -0
  472. aws_cdk/interfaces/aws_oam/__init__.py +249 -0
  473. aws_cdk/interfaces/aws_observabilityadmin/__init__.py +362 -0
  474. aws_cdk/interfaces/aws_odb/__init__.py +562 -0
  475. aws_cdk/interfaces/aws_omics/__init__.py +838 -0
  476. aws_cdk/interfaces/aws_opensearchserverless/__init__.py +859 -0
  477. aws_cdk/interfaces/aws_opensearchservice/__init__.py +283 -0
  478. aws_cdk/interfaces/aws_opsworks/__init__.py +772 -0
  479. aws_cdk/interfaces/aws_opsworkscm/__init__.py +146 -0
  480. aws_cdk/interfaces/aws_organizations/__init__.py +646 -0
  481. aws_cdk/interfaces/aws_osis/__init__.py +146 -0
  482. aws_cdk/interfaces/aws_panorama/__init__.py +420 -0
  483. aws_cdk/interfaces/aws_paymentcryptography/__init__.py +249 -0
  484. aws_cdk/interfaces/aws_pcaconnectorad/__init__.py +608 -0
  485. aws_cdk/interfaces/aws_pcaconnectorscep/__init__.py +249 -0
  486. aws_cdk/interfaces/aws_pcs/__init__.py +352 -0
  487. aws_cdk/interfaces/aws_personalize/__init__.py +455 -0
  488. aws_cdk/interfaces/aws_pinpoint/__init__.py +2125 -0
  489. aws_cdk/interfaces/aws_pinpointemail/__init__.py +467 -0
  490. aws_cdk/interfaces/aws_pipes/__init__.py +158 -0
  491. aws_cdk/interfaces/aws_proton/__init__.py +360 -0
  492. aws_cdk/interfaces/aws_qbusiness/__init__.py +1122 -0
  493. aws_cdk/interfaces/aws_qldb/__init__.py +283 -0
  494. aws_cdk/interfaces/aws_quicksight/__init__.py +1566 -0
  495. aws_cdk/interfaces/aws_ram/__init__.py +249 -0
  496. aws_cdk/interfaces/aws_rbin/__init__.py +146 -0
  497. aws_cdk/interfaces/aws_rds/__init__.py +1780 -0
  498. aws_cdk/interfaces/aws_redshift/__init__.py +1104 -0
  499. aws_cdk/interfaces/aws_redshiftserverless/__init__.py +356 -0
  500. aws_cdk/interfaces/aws_refactorspaces/__init__.py +605 -0
  501. aws_cdk/interfaces/aws_rekognition/__init__.py +406 -0
  502. aws_cdk/interfaces/aws_resiliencehub/__init__.py +251 -0
  503. aws_cdk/interfaces/aws_resourceexplorer2/__init__.py +354 -0
  504. aws_cdk/interfaces/aws_resourcegroups/__init__.py +261 -0
  505. aws_cdk/interfaces/aws_robomaker/__init__.py +673 -0
  506. aws_cdk/interfaces/aws_rolesanywhere/__init__.py +384 -0
  507. aws_cdk/interfaces/aws_route53/__init__.py +804 -0
  508. aws_cdk/interfaces/aws_route53profiles/__init__.py +368 -0
  509. aws_cdk/interfaces/aws_route53recoverycontrol/__init__.py +463 -0
  510. aws_cdk/interfaces/aws_route53recoveryreadiness/__init__.py +535 -0
  511. aws_cdk/interfaces/aws_route53resolver/__init__.py +1356 -0
  512. aws_cdk/interfaces/aws_rtbfabric/__init__.py +352 -0
  513. aws_cdk/interfaces/aws_rum/__init__.py +146 -0
  514. aws_cdk/interfaces/aws_s3/__init__.py +1171 -0
  515. aws_cdk/interfaces/aws_s3express/__init__.py +392 -0
  516. aws_cdk/interfaces/aws_s3objectlambda/__init__.py +271 -0
  517. aws_cdk/interfaces/aws_s3outposts/__init__.py +455 -0
  518. aws_cdk/interfaces/aws_s3tables/__init__.py +575 -0
  519. aws_cdk/interfaces/aws_s3vectors/__init__.py +354 -0
  520. aws_cdk/interfaces/aws_sagemaker/__init__.py +3797 -0
  521. aws_cdk/interfaces/aws_sam/__init__.py +603 -0
  522. aws_cdk/interfaces/aws_scheduler/__init__.py +286 -0
  523. aws_cdk/interfaces/aws_sdb/__init__.py +146 -0
  524. aws_cdk/interfaces/aws_secretsmanager/__init__.py +461 -0
  525. aws_cdk/interfaces/aws_securityhub/__init__.py +1499 -0
  526. aws_cdk/interfaces/aws_securitylake/__init__.py +474 -0
  527. aws_cdk/interfaces/aws_servicecatalog/__init__.py +1829 -0
  528. aws_cdk/interfaces/aws_servicecatalogappregistry/__init__.py +557 -0
  529. aws_cdk/interfaces/aws_servicediscovery/__init__.py +636 -0
  530. aws_cdk/interfaces/aws_ses/__init__.py +2018 -0
  531. aws_cdk/interfaces/aws_shield/__init__.py +455 -0
  532. aws_cdk/interfaces/aws_signer/__init__.py +266 -0
  533. aws_cdk/interfaces/aws_simspaceweaver/__init__.py +146 -0
  534. aws_cdk/interfaces/aws_smsvoice/__init__.py +892 -0
  535. aws_cdk/interfaces/aws_sns/__init__.py +455 -0
  536. aws_cdk/interfaces/aws_sqs/__init__.py +364 -0
  537. aws_cdk/interfaces/aws_ssm/__init__.py +982 -0
  538. aws_cdk/interfaces/aws_ssmcontacts/__init__.py +455 -0
  539. aws_cdk/interfaces/aws_ssmguiconnect/__init__.py +146 -0
  540. aws_cdk/interfaces/aws_ssmincidents/__init__.py +249 -0
  541. aws_cdk/interfaces/aws_ssmquicksetup/__init__.py +253 -0
  542. aws_cdk/interfaces/aws_sso/__init__.py +797 -0
  543. aws_cdk/interfaces/aws_stepfunctions/__init__.py +459 -0
  544. aws_cdk/interfaces/aws_supportapp/__init__.py +372 -0
  545. aws_cdk/interfaces/aws_synthetics/__init__.py +249 -0
  546. aws_cdk/interfaces/aws_systemsmanagersap/__init__.py +148 -0
  547. aws_cdk/interfaces/aws_timestream/__init__.py +526 -0
  548. aws_cdk/interfaces/aws_transfer/__init__.py +967 -0
  549. aws_cdk/interfaces/aws_verifiedpermissions/__init__.py +538 -0
  550. aws_cdk/interfaces/aws_voiceid/__init__.py +146 -0
  551. aws_cdk/interfaces/aws_vpclattice/__init__.py +1418 -0
  552. aws_cdk/interfaces/aws_waf/__init__.py +764 -0
  553. aws_cdk/interfaces/aws_wafregional/__init__.py +1182 -0
  554. aws_cdk/interfaces/aws_wafv2/__init__.py +870 -0
  555. aws_cdk/interfaces/aws_wisdom/__init__.py +1556 -0
  556. aws_cdk/interfaces/aws_workspaces/__init__.py +352 -0
  557. aws_cdk/interfaces/aws_workspacesinstances/__init__.py +390 -0
  558. aws_cdk/interfaces/aws_workspacesthinclient/__init__.py +168 -0
  559. aws_cdk/interfaces/aws_workspacesweb/__init__.py +1085 -0
  560. aws_cdk/interfaces/aws_xray/__init__.py +457 -0
  561. aws_cdk/lambda_layer_awscli/__init__.py +6 -0
  562. aws_cdk/lambda_layer_node_proxy_agent/__init__.py +6 -0
  563. aws_cdk/pipelines/__init__.py +202 -52
  564. aws_cdk/region_info/__init__.py +3 -0
  565. aws_cdk/triggers/__init__.py +66 -18
  566. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/METADATA +418 -18
  567. aws_cdk_lib-2.224.0.dist-info/RECORD +584 -0
  568. aws_cdk_lib-2.195.0.dist-info/RECORD +0 -304
  569. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/LICENSE +0 -0
  570. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/NOTICE +0 -0
  571. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/WHEEL +0 -0
  572. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,2244 @@
1
+ r'''
2
+ # AWS::EVS Construct Library
3
+
4
+ <!--BEGIN STABILITY BANNER-->---
5
+
6
+
7
+ ![cfn-resources: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)
8
+
9
+ > All classes with the `Cfn` prefix in this module ([CFN Resources](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) are always stable and safe to use.
10
+
11
+ ---
12
+ <!--END STABILITY BANNER-->
13
+
14
+ This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.
15
+
16
+ ```python
17
+ import aws_cdk.aws_evs as evs
18
+ ```
19
+
20
+ <!--BEGIN CFNONLY DISCLAIMER-->
21
+
22
+ There are no official hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet. Here are some suggestions on how to proceed:
23
+
24
+ * Search [Construct Hub for EVS construct libraries](https://constructs.dev/search?q=evs)
25
+ * Use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, in the same way you would use [the CloudFormation AWS::EVS resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_EVS.html) directly.
26
+
27
+ <!--BEGIN CFNONLY DISCLAIMER-->
28
+
29
+ There are no hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet.
30
+ However, you can still use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, and use this service exactly as you would using CloudFormation directly.
31
+
32
+ For more information on the resources and properties available for this service, see the [CloudFormation documentation for AWS::EVS](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_EVS.html).
33
+
34
+ (Read the [CDK Contributing Guide](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and submit an RFC if you are interested in contributing to this construct library.)
35
+
36
+ <!--END CFNONLY DISCLAIMER-->
37
+ '''
38
+ from pkgutil import extend_path
39
+ __path__ = extend_path(__path__, __name__)
40
+
41
+ import abc
42
+ import builtins
43
+ import datetime
44
+ import enum
45
+ import typing
46
+
47
+ import jsii
48
+ import publication
49
+ import typing_extensions
50
+
51
+ import typeguard
52
+ from importlib.metadata import version as _metadata_package_version
53
+ TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
54
+
55
+ def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
56
+ if TYPEGUARD_MAJOR_VERSION <= 2:
57
+ return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
58
+ else:
59
+ if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
60
+ pass
61
+ else:
62
+ if TYPEGUARD_MAJOR_VERSION == 3:
63
+ typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
64
+ typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
65
+ else:
66
+ typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
67
+
68
+ from .._jsii import *
69
+
70
+ import constructs as _constructs_77d1e7e8
71
+ from .. import (
72
+ CfnResource as _CfnResource_9df397a6,
73
+ CfnTag as _CfnTag_f6864754,
74
+ IInspectable as _IInspectable_c2943556,
75
+ IResolvable as _IResolvable_da3f097b,
76
+ ITaggableV2 as _ITaggableV2_4e6798f8,
77
+ TagManager as _TagManager_0a598cb3,
78
+ TreeInspector as _TreeInspector_488e0dd5,
79
+ )
80
+ from ..interfaces.aws_evs import (
81
+ EnvironmentReference as _EnvironmentReference_c5354bd6,
82
+ IEnvironmentRef as _IEnvironmentRef_fdb7318a,
83
+ )
84
+
85
+
86
+ @jsii.implements(_IInspectable_c2943556, _IEnvironmentRef_fdb7318a, _ITaggableV2_4e6798f8)
87
+ class CfnEnvironment(
88
+ _CfnResource_9df397a6,
89
+ metaclass=jsii.JSIIMeta,
90
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment",
91
+ ):
92
+ '''Creates an Amazon EVS environment that runs VCF software, such as SDDC Manager, NSX Manager, and vCenter Server.
93
+
94
+ During environment creation, Amazon EVS performs validations on DNS settings, provisions VLAN subnets and hosts, and deploys the supplied version of VCF.
95
+
96
+ It can take several hours to create an environment. After the deployment completes, you can configure VCF in the vSphere user interface according to your needs.
97
+ .. epigraph::
98
+
99
+ You cannot use the ``dedicatedHostId`` and ``placementGroupId`` parameters together in the same ``CreateEnvironment`` action. This results in a ``ValidationException`` response.
100
+
101
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html
102
+ :cloudformationResource: AWS::EVS::Environment
103
+ :exampleMetadata: fixture=_generated
104
+
105
+ Example::
106
+
107
+ # The code below shows an example of how to instantiate this type.
108
+ # The values are placeholders you should change.
109
+ from aws_cdk import aws_evs as evs
110
+
111
+ cfn_environment = evs.CfnEnvironment(self, "MyCfnEnvironment",
112
+ connectivity_info=evs.CfnEnvironment.ConnectivityInfoProperty(
113
+ private_route_server_peerings=["privateRouteServerPeerings"]
114
+ ),
115
+ license_info=evs.CfnEnvironment.LicenseInfoProperty(
116
+ solution_key="solutionKey",
117
+ vsan_key="vsanKey"
118
+ ),
119
+ service_access_subnet_id="serviceAccessSubnetId",
120
+ site_id="siteId",
121
+ terms_accepted=False,
122
+ vcf_hostnames=evs.CfnEnvironment.VcfHostnamesProperty(
123
+ cloud_builder="cloudBuilder",
124
+ nsx="nsx",
125
+ nsx_edge1="nsxEdge1",
126
+ nsx_edge2="nsxEdge2",
127
+ nsx_manager1="nsxManager1",
128
+ nsx_manager2="nsxManager2",
129
+ nsx_manager3="nsxManager3",
130
+ sddc_manager="sddcManager",
131
+ v_center="vCenter"
132
+ ),
133
+ vcf_version="vcfVersion",
134
+ vpc_id="vpcId",
135
+
136
+ # the properties below are optional
137
+ environment_name="environmentName",
138
+ hosts=[evs.CfnEnvironment.HostInfoForCreateProperty(
139
+ host_name="hostName",
140
+ instance_type="instanceType",
141
+ key_name="keyName",
142
+
143
+ # the properties below are optional
144
+ dedicated_host_id="dedicatedHostId",
145
+ placement_group_id="placementGroupId"
146
+ )],
147
+ initial_vlans=evs.CfnEnvironment.InitialVlansProperty(
148
+ edge_vTep=evs.CfnEnvironment.InitialVlanInfoProperty(
149
+ cidr="cidr"
150
+ ),
151
+ expansion_vlan1=evs.CfnEnvironment.InitialVlanInfoProperty(
152
+ cidr="cidr"
153
+ ),
154
+ expansion_vlan2=evs.CfnEnvironment.InitialVlanInfoProperty(
155
+ cidr="cidr"
156
+ ),
157
+ hcx=evs.CfnEnvironment.InitialVlanInfoProperty(
158
+ cidr="cidr"
159
+ ),
160
+ nsx_up_link=evs.CfnEnvironment.InitialVlanInfoProperty(
161
+ cidr="cidr"
162
+ ),
163
+ vmk_management=evs.CfnEnvironment.InitialVlanInfoProperty(
164
+ cidr="cidr"
165
+ ),
166
+ vm_management=evs.CfnEnvironment.InitialVlanInfoProperty(
167
+ cidr="cidr"
168
+ ),
169
+ v_motion=evs.CfnEnvironment.InitialVlanInfoProperty(
170
+ cidr="cidr"
171
+ ),
172
+ v_san=evs.CfnEnvironment.InitialVlanInfoProperty(
173
+ cidr="cidr"
174
+ ),
175
+ v_tep=evs.CfnEnvironment.InitialVlanInfoProperty(
176
+ cidr="cidr"
177
+ ),
178
+
179
+ # the properties below are optional
180
+ hcx_network_acl_id="hcxNetworkAclId",
181
+ is_hcx_public=False
182
+ ),
183
+ kms_key_id="kmsKeyId",
184
+ service_access_security_groups=evs.CfnEnvironment.ServiceAccessSecurityGroupsProperty(
185
+ security_groups=["securityGroups"]
186
+ ),
187
+ tags=[CfnTag(
188
+ key="key",
189
+ value="value"
190
+ )]
191
+ )
192
+ '''
193
+
194
+ def __init__(
195
+ self,
196
+ scope: _constructs_77d1e7e8.Construct,
197
+ id: builtins.str,
198
+ *,
199
+ connectivity_info: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.ConnectivityInfoProperty", typing.Dict[builtins.str, typing.Any]]],
200
+ license_info: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.LicenseInfoProperty", typing.Dict[builtins.str, typing.Any]]],
201
+ service_access_subnet_id: builtins.str,
202
+ site_id: builtins.str,
203
+ terms_accepted: typing.Union[builtins.bool, _IResolvable_da3f097b],
204
+ vcf_hostnames: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.VcfHostnamesProperty", typing.Dict[builtins.str, typing.Any]]],
205
+ vcf_version: builtins.str,
206
+ vpc_id: builtins.str,
207
+ environment_name: typing.Optional[builtins.str] = None,
208
+ hosts: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.HostInfoForCreateProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
209
+ initial_vlans: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlansProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
210
+ kms_key_id: typing.Optional[builtins.str] = None,
211
+ service_access_security_groups: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.ServiceAccessSecurityGroupsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
212
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
213
+ ) -> None:
214
+ '''Create a new ``AWS::EVS::Environment``.
215
+
216
+ :param scope: Scope in which this resource is defined.
217
+ :param id: Construct identifier for this resource (unique in its scope).
218
+ :param connectivity_info: The connectivity configuration for the environment. Amazon EVS requires that you specify two route server peer IDs. During environment creation, the route server endpoints peer with the NSX uplink VLAN for connectivity to the NSX overlay network.
219
+ :param license_info: The license information that Amazon EVS requires to create an environment. Amazon EVS requires two license keys: a VCF solution key and a vSAN license key. The VCF solution key must cover a minimum of 256 cores. The vSAN license key must provide at least 110 TiB of vSAN capacity.
220
+ :param service_access_subnet_id: The subnet that is used to establish connectivity between the Amazon EVS control plane and VPC. Amazon EVS uses this subnet to perform validations and create the environment.
221
+ :param site_id: The Broadcom Site ID that is associated with your Amazon EVS environment. Amazon EVS uses the Broadcom Site ID that you provide to meet Broadcom VCF license usage reporting requirements for Amazon EVS.
222
+ :param terms_accepted: Customer confirmation that the customer has purchased and will continue to maintain the required number of VCF software licenses to cover all physical processor cores in the Amazon EVS environment. Information about your VCF software in Amazon EVS will be shared with Broadcom to verify license compliance. Amazon EVS does not validate license keys. To validate license keys, visit the Broadcom support portal.
223
+ :param vcf_hostnames: The DNS hostnames to be used by the VCF management appliances in your environment. For environment creation to be successful, each hostname entry must resolve to a domain name that you've registered in your DNS service of choice and configured in the DHCP option set of your VPC. DNS hostnames cannot be changed after environment creation has started.
224
+ :param vcf_version: The VCF version of the environment.
225
+ :param vpc_id: The VPC associated with the environment.
226
+ :param environment_name: The name of the environment.
227
+ :param hosts: Required for environment resource creation.
228
+ :param initial_vlans: .. epigraph:: Amazon EVS is in public preview release and is subject to change. The initial VLAN subnets for the environment. Amazon EVS VLAN subnets have a minimum CIDR block size of /28 and a maximum size of /24. Amazon EVS VLAN subnet CIDR blocks must not overlap with other subnets in the VPC. Required for environment resource creation.
229
+ :param kms_key_id: The AWS KMS key ID that AWS Secrets Manager uses to encrypt secrets that are associated with the environment. These secrets contain the VCF credentials that are needed to install vCenter Server, NSX, and SDDC Manager. By default, Amazon EVS use the AWS Secrets Manager managed key ``aws/secretsmanager`` . You can also specify a customer managed key.
230
+ :param service_access_security_groups: The security groups that allow traffic between the Amazon EVS control plane and your VPC for service access. If a security group is not specified, Amazon EVS uses the default security group in your account for service access.
231
+ :param tags: Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or AWS resources.
232
+ '''
233
+ if __debug__:
234
+ type_hints = typing.get_type_hints(_typecheckingstub__0fd5abd7fe71e306d7b1cc2c3ef834eb9af874a0b9fed902c6923bbc07b00b63)
235
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
236
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
237
+ props = CfnEnvironmentProps(
238
+ connectivity_info=connectivity_info,
239
+ license_info=license_info,
240
+ service_access_subnet_id=service_access_subnet_id,
241
+ site_id=site_id,
242
+ terms_accepted=terms_accepted,
243
+ vcf_hostnames=vcf_hostnames,
244
+ vcf_version=vcf_version,
245
+ vpc_id=vpc_id,
246
+ environment_name=environment_name,
247
+ hosts=hosts,
248
+ initial_vlans=initial_vlans,
249
+ kms_key_id=kms_key_id,
250
+ service_access_security_groups=service_access_security_groups,
251
+ tags=tags,
252
+ )
253
+
254
+ jsii.create(self.__class__, self, [scope, id, props])
255
+
256
+ @jsii.member(jsii_name="inspect")
257
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
258
+ '''Examines the CloudFormation resource and discloses attributes.
259
+
260
+ :param inspector: tree inspector to collect and process attributes.
261
+ '''
262
+ if __debug__:
263
+ type_hints = typing.get_type_hints(_typecheckingstub__97c8e6ce05b681569d057e41cd3b8f77e1403e7a3da8aebf629d5b36513ac407)
264
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
265
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
266
+
267
+ @jsii.member(jsii_name="renderProperties")
268
+ def _render_properties(
269
+ self,
270
+ props: typing.Mapping[builtins.str, typing.Any],
271
+ ) -> typing.Mapping[builtins.str, typing.Any]:
272
+ '''
273
+ :param props: -
274
+ '''
275
+ if __debug__:
276
+ type_hints = typing.get_type_hints(_typecheckingstub__5933d5785ec1ac628e3fd45b05b1c5bc9e333cb80c6d102fb738934f3f5c15da)
277
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
278
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
279
+
280
+ @jsii.python.classproperty
281
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
282
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
283
+ '''The CloudFormation resource type name for this resource class.'''
284
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
285
+
286
+ @builtins.property
287
+ @jsii.member(jsii_name="attrChecks")
288
+ def attr_checks(self) -> _IResolvable_da3f097b:
289
+ '''A check on the environment to identify instance health and VMware VCF licensing issues. For example:.
290
+
291
+ ``{ "checks": [ { "type": "KEY_REUSE", "result": "PASSED" }, { "type": "KEY_COVERAGE", "result": "PASSED" }, { "type": "REACHABILITY", "result": "PASSED" }, { "type": "HOST_COUNT", "result": "PASSED" } ] }``
292
+
293
+ :cloudformationAttribute: Checks
294
+ '''
295
+ return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrChecks"))
296
+
297
+ @builtins.property
298
+ @jsii.member(jsii_name="attrCreatedAt")
299
+ def attr_created_at(self) -> builtins.str:
300
+ '''The date and time that the environment was created.
301
+
302
+ For example: ``1749081600.000`` .
303
+
304
+ :cloudformationAttribute: CreatedAt
305
+ '''
306
+ return typing.cast(builtins.str, jsii.get(self, "attrCreatedAt"))
307
+
308
+ @builtins.property
309
+ @jsii.member(jsii_name="attrCredentials")
310
+ def attr_credentials(self) -> _IResolvable_da3f097b:
311
+ '''The VCF credentials that are stored as Amazon EVS managed secrets in AWS Secrets Manager.
312
+
313
+ Amazon EVS stores credentials that are needed to install vCenter Server, NSX, and SDDC Manager. For example:
314
+
315
+ ``{ [ { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_vCenterAdmin-MnTMEi" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_vCenterRoot-87VyCF" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_NSXRoot-SR3k43" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_NSXAdmin-L5LUiD" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_NSXAudit-Q2oW46" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_SDDCManagerRoot-bFulOq" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_SDDCManagerVCF-Ec3gES" }, { "secretArn": "arn:aws:secretsmanager:us-east-1:000000000000:secret:evs!env-1234567890_SDDCManagerAdmin-JMTAAb" } ] }``
316
+
317
+ :cloudformationAttribute: Credentials
318
+ '''
319
+ return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrCredentials"))
320
+
321
+ @builtins.property
322
+ @jsii.member(jsii_name="attrEnvironmentArn")
323
+ def attr_environment_arn(self) -> builtins.str:
324
+ '''The Amazon Resource Name (ARN) that is associated with the environment.
325
+
326
+ For example: ``arn:aws:evs:us-east-1:000000000000:environment/env-1234567890`` .
327
+
328
+ :cloudformationAttribute: EnvironmentArn
329
+ '''
330
+ return typing.cast(builtins.str, jsii.get(self, "attrEnvironmentArn"))
331
+
332
+ @builtins.property
333
+ @jsii.member(jsii_name="attrEnvironmentId")
334
+ def attr_environment_id(self) -> builtins.str:
335
+ '''The unique ID for the environment.
336
+
337
+ For example: ``env-1234567890`` .
338
+
339
+ :cloudformationAttribute: EnvironmentId
340
+ '''
341
+ return typing.cast(builtins.str, jsii.get(self, "attrEnvironmentId"))
342
+
343
+ @builtins.property
344
+ @jsii.member(jsii_name="attrEnvironmentState")
345
+ def attr_environment_state(self) -> builtins.str:
346
+ '''The state of an environment.
347
+
348
+ For example: ``CREATED`` .
349
+
350
+ :cloudformationAttribute: EnvironmentState
351
+ '''
352
+ return typing.cast(builtins.str, jsii.get(self, "attrEnvironmentState"))
353
+
354
+ @builtins.property
355
+ @jsii.member(jsii_name="attrModifiedAt")
356
+ def attr_modified_at(self) -> builtins.str:
357
+ '''The date and time that the environment was modified.
358
+
359
+ For example: ``1749081600.000`` .
360
+
361
+ :cloudformationAttribute: ModifiedAt
362
+ '''
363
+ return typing.cast(builtins.str, jsii.get(self, "attrModifiedAt"))
364
+
365
+ @builtins.property
366
+ @jsii.member(jsii_name="attrStateDetails")
367
+ def attr_state_details(self) -> builtins.str:
368
+ '''A detailed description of the ``environmentState`` of an environment.
369
+
370
+ For example: ``Environment successfully created`` .
371
+
372
+ :cloudformationAttribute: StateDetails
373
+ '''
374
+ return typing.cast(builtins.str, jsii.get(self, "attrStateDetails"))
375
+
376
+ @builtins.property
377
+ @jsii.member(jsii_name="cdkTagManager")
378
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
379
+ '''Tag Manager which manages the tags for this resource.'''
380
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
381
+
382
+ @builtins.property
383
+ @jsii.member(jsii_name="cfnProperties")
384
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
385
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
386
+
387
+ @builtins.property
388
+ @jsii.member(jsii_name="environmentRef")
389
+ def environment_ref(self) -> _EnvironmentReference_c5354bd6:
390
+ '''A reference to a Environment resource.'''
391
+ return typing.cast(_EnvironmentReference_c5354bd6, jsii.get(self, "environmentRef"))
392
+
393
+ @builtins.property
394
+ @jsii.member(jsii_name="connectivityInfo")
395
+ def connectivity_info(
396
+ self,
397
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.ConnectivityInfoProperty"]:
398
+ '''The connectivity configuration for the environment.'''
399
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.ConnectivityInfoProperty"], jsii.get(self, "connectivityInfo"))
400
+
401
+ @connectivity_info.setter
402
+ def connectivity_info(
403
+ self,
404
+ value: typing.Union[_IResolvable_da3f097b, "CfnEnvironment.ConnectivityInfoProperty"],
405
+ ) -> None:
406
+ if __debug__:
407
+ type_hints = typing.get_type_hints(_typecheckingstub__bf81c76587f8aaaaa50fc18d1384cc1e8ff44f1cd0d764c0355340e0f0839c21)
408
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
409
+ jsii.set(self, "connectivityInfo", value) # pyright: ignore[reportArgumentType]
410
+
411
+ @builtins.property
412
+ @jsii.member(jsii_name="licenseInfo")
413
+ def license_info(
414
+ self,
415
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.LicenseInfoProperty"]:
416
+ '''The license information that Amazon EVS requires to create an environment.'''
417
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.LicenseInfoProperty"], jsii.get(self, "licenseInfo"))
418
+
419
+ @license_info.setter
420
+ def license_info(
421
+ self,
422
+ value: typing.Union[_IResolvable_da3f097b, "CfnEnvironment.LicenseInfoProperty"],
423
+ ) -> None:
424
+ if __debug__:
425
+ type_hints = typing.get_type_hints(_typecheckingstub__fb6e498dbb5d87feb34dfe26b3466fa6383016c37a4ea21caecc26f60b5ce901)
426
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
427
+ jsii.set(self, "licenseInfo", value) # pyright: ignore[reportArgumentType]
428
+
429
+ @builtins.property
430
+ @jsii.member(jsii_name="serviceAccessSubnetId")
431
+ def service_access_subnet_id(self) -> builtins.str:
432
+ '''The subnet that is used to establish connectivity between the Amazon EVS control plane and VPC.'''
433
+ return typing.cast(builtins.str, jsii.get(self, "serviceAccessSubnetId"))
434
+
435
+ @service_access_subnet_id.setter
436
+ def service_access_subnet_id(self, value: builtins.str) -> None:
437
+ if __debug__:
438
+ type_hints = typing.get_type_hints(_typecheckingstub__f01a5018beaa28fab7b0d068a7a6fe45dbeee0ab15ecdf25462887288ace66cb)
439
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
440
+ jsii.set(self, "serviceAccessSubnetId", value) # pyright: ignore[reportArgumentType]
441
+
442
+ @builtins.property
443
+ @jsii.member(jsii_name="siteId")
444
+ def site_id(self) -> builtins.str:
445
+ '''The Broadcom Site ID that is associated with your Amazon EVS environment.'''
446
+ return typing.cast(builtins.str, jsii.get(self, "siteId"))
447
+
448
+ @site_id.setter
449
+ def site_id(self, value: builtins.str) -> None:
450
+ if __debug__:
451
+ type_hints = typing.get_type_hints(_typecheckingstub__0dc69ff9904f782ce993fe0884901782c11a2214109cfd4cf83020946119b99f)
452
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
453
+ jsii.set(self, "siteId", value) # pyright: ignore[reportArgumentType]
454
+
455
+ @builtins.property
456
+ @jsii.member(jsii_name="termsAccepted")
457
+ def terms_accepted(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
458
+ '''Customer confirmation that the customer has purchased and will continue to maintain the required number of VCF software licenses to cover all physical processor cores in the Amazon EVS environment.'''
459
+ return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], jsii.get(self, "termsAccepted"))
460
+
461
+ @terms_accepted.setter
462
+ def terms_accepted(
463
+ self,
464
+ value: typing.Union[builtins.bool, _IResolvable_da3f097b],
465
+ ) -> None:
466
+ if __debug__:
467
+ type_hints = typing.get_type_hints(_typecheckingstub__93808d5eb28c6837a5047d6d1811bd832bd6250809b9c84a0b609bb88989d45e)
468
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
469
+ jsii.set(self, "termsAccepted", value) # pyright: ignore[reportArgumentType]
470
+
471
+ @builtins.property
472
+ @jsii.member(jsii_name="vcfHostnames")
473
+ def vcf_hostnames(
474
+ self,
475
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.VcfHostnamesProperty"]:
476
+ '''The DNS hostnames to be used by the VCF management appliances in your environment.'''
477
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.VcfHostnamesProperty"], jsii.get(self, "vcfHostnames"))
478
+
479
+ @vcf_hostnames.setter
480
+ def vcf_hostnames(
481
+ self,
482
+ value: typing.Union[_IResolvable_da3f097b, "CfnEnvironment.VcfHostnamesProperty"],
483
+ ) -> None:
484
+ if __debug__:
485
+ type_hints = typing.get_type_hints(_typecheckingstub__98651cf572ae807d1eccd57a45d3ecc81f79063879b068927b5130df235e0b0c)
486
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
487
+ jsii.set(self, "vcfHostnames", value) # pyright: ignore[reportArgumentType]
488
+
489
+ @builtins.property
490
+ @jsii.member(jsii_name="vcfVersion")
491
+ def vcf_version(self) -> builtins.str:
492
+ '''The VCF version of the environment.'''
493
+ return typing.cast(builtins.str, jsii.get(self, "vcfVersion"))
494
+
495
+ @vcf_version.setter
496
+ def vcf_version(self, value: builtins.str) -> None:
497
+ if __debug__:
498
+ type_hints = typing.get_type_hints(_typecheckingstub__77294c8299a96e3407af4323a38741fc1be8bdc06d14be597ecf158dcf011c14)
499
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
500
+ jsii.set(self, "vcfVersion", value) # pyright: ignore[reportArgumentType]
501
+
502
+ @builtins.property
503
+ @jsii.member(jsii_name="vpcId")
504
+ def vpc_id(self) -> builtins.str:
505
+ '''The VPC associated with the environment.'''
506
+ return typing.cast(builtins.str, jsii.get(self, "vpcId"))
507
+
508
+ @vpc_id.setter
509
+ def vpc_id(self, value: builtins.str) -> None:
510
+ if __debug__:
511
+ type_hints = typing.get_type_hints(_typecheckingstub__60ce2bd3161be4b835be56a05bdccfd9639c58eea7d09baeab4884c9a906852e)
512
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
513
+ jsii.set(self, "vpcId", value) # pyright: ignore[reportArgumentType]
514
+
515
+ @builtins.property
516
+ @jsii.member(jsii_name="environmentName")
517
+ def environment_name(self) -> typing.Optional[builtins.str]:
518
+ '''The name of the environment.'''
519
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "environmentName"))
520
+
521
+ @environment_name.setter
522
+ def environment_name(self, value: typing.Optional[builtins.str]) -> None:
523
+ if __debug__:
524
+ type_hints = typing.get_type_hints(_typecheckingstub__16c81b6578fa573cefa89abf7b2fbcfcf6b8db97f8f8b8e2a8c44d8009af03ed)
525
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
526
+ jsii.set(self, "environmentName", value) # pyright: ignore[reportArgumentType]
527
+
528
+ @builtins.property
529
+ @jsii.member(jsii_name="hosts")
530
+ def hosts(
531
+ self,
532
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.HostInfoForCreateProperty"]]]]:
533
+ '''Required for environment resource creation.'''
534
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.HostInfoForCreateProperty"]]]], jsii.get(self, "hosts"))
535
+
536
+ @hosts.setter
537
+ def hosts(
538
+ self,
539
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.HostInfoForCreateProperty"]]]],
540
+ ) -> None:
541
+ if __debug__:
542
+ type_hints = typing.get_type_hints(_typecheckingstub__18c17b2a1d9ccb9d1cd534e31c376d097f1d59794abd3093f8587758af40bc2e)
543
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
544
+ jsii.set(self, "hosts", value) # pyright: ignore[reportArgumentType]
545
+
546
+ @builtins.property
547
+ @jsii.member(jsii_name="initialVlans")
548
+ def initial_vlans(
549
+ self,
550
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlansProperty"]]:
551
+ '''.. epigraph::
552
+
553
+ Amazon EVS is in public preview release and is subject to change.'''
554
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlansProperty"]], jsii.get(self, "initialVlans"))
555
+
556
+ @initial_vlans.setter
557
+ def initial_vlans(
558
+ self,
559
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlansProperty"]],
560
+ ) -> None:
561
+ if __debug__:
562
+ type_hints = typing.get_type_hints(_typecheckingstub__15ccc5cc405553a6a5463668babc67ef1dc4049150ba7dddfc07bee61251bcfe)
563
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
564
+ jsii.set(self, "initialVlans", value) # pyright: ignore[reportArgumentType]
565
+
566
+ @builtins.property
567
+ @jsii.member(jsii_name="kmsKeyId")
568
+ def kms_key_id(self) -> typing.Optional[builtins.str]:
569
+ '''The AWS KMS key ID that AWS Secrets Manager uses to encrypt secrets that are associated with the environment.'''
570
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "kmsKeyId"))
571
+
572
+ @kms_key_id.setter
573
+ def kms_key_id(self, value: typing.Optional[builtins.str]) -> None:
574
+ if __debug__:
575
+ type_hints = typing.get_type_hints(_typecheckingstub__d5b585f35cde6963f33953b58455872fcf621844d2b3fa8f7f85b96542463156)
576
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
577
+ jsii.set(self, "kmsKeyId", value) # pyright: ignore[reportArgumentType]
578
+
579
+ @builtins.property
580
+ @jsii.member(jsii_name="serviceAccessSecurityGroups")
581
+ def service_access_security_groups(
582
+ self,
583
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.ServiceAccessSecurityGroupsProperty"]]:
584
+ '''The security groups that allow traffic between the Amazon EVS control plane and your VPC for service access.'''
585
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.ServiceAccessSecurityGroupsProperty"]], jsii.get(self, "serviceAccessSecurityGroups"))
586
+
587
+ @service_access_security_groups.setter
588
+ def service_access_security_groups(
589
+ self,
590
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnEnvironment.ServiceAccessSecurityGroupsProperty"]],
591
+ ) -> None:
592
+ if __debug__:
593
+ type_hints = typing.get_type_hints(_typecheckingstub__df95c894cd990c7a318fa3e3397c915f2a30df40bd79003673d83a2d1016e1b9)
594
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
595
+ jsii.set(self, "serviceAccessSecurityGroups", value) # pyright: ignore[reportArgumentType]
596
+
597
+ @builtins.property
598
+ @jsii.member(jsii_name="tags")
599
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
600
+ '''Metadata that assists with categorization and organization.'''
601
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
602
+
603
+ @tags.setter
604
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
605
+ if __debug__:
606
+ type_hints = typing.get_type_hints(_typecheckingstub__c420c54db733392f5b59d4f5a9ded1bfdc781dbe1df45ec2312e16a4c3655efd)
607
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
608
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
609
+
610
+ @jsii.data_type(
611
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.CheckProperty",
612
+ jsii_struct_bases=[],
613
+ name_mapping={
614
+ "result": "result",
615
+ "type": "type",
616
+ "impaired_since": "impairedSince",
617
+ },
618
+ )
619
+ class CheckProperty:
620
+ def __init__(
621
+ self,
622
+ *,
623
+ result: builtins.str,
624
+ type: builtins.str,
625
+ impaired_since: typing.Optional[builtins.str] = None,
626
+ ) -> None:
627
+ '''A check on the environment to identify environment health and validate VMware VCF licensing compliance.
628
+
629
+ :param result: The check result.
630
+ :param type: The check type. Amazon EVS performs the following checks. - ``KEY_REUSE`` : checks that the VCF license key is not used by another Amazon EVS environment. This check fails if a used license is added to the environment. - ``KEY_COVERAGE`` : checks that your VCF license key allocates sufficient vCPU cores for all deployed hosts. The check fails when any assigned hosts in the EVS environment are not covered by license keys, or when any unassigned hosts cannot be covered by available vCPU cores in keys. - ``REACHABILITY`` : checks that the Amazon EVS control plane has a persistent connection to SDDC Manager. If Amazon EVS cannot reach the environment, this check fails. - ``HOST_COUNT`` : Checks that your environment has a minimum of 4 hosts, which is a requirement for VCF 5.2.1. If this check fails, you will need to add hosts so that your environment meets this minimum requirement. Amazon EVS only supports environments with 4-16 hosts.
631
+ :param impaired_since: The time when environment health began to be impaired.
632
+
633
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-check.html
634
+ :exampleMetadata: fixture=_generated
635
+
636
+ Example::
637
+
638
+ # The code below shows an example of how to instantiate this type.
639
+ # The values are placeholders you should change.
640
+ from aws_cdk import aws_evs as evs
641
+
642
+ check_property = evs.CfnEnvironment.CheckProperty(
643
+ result="result",
644
+ type="type",
645
+
646
+ # the properties below are optional
647
+ impaired_since="impairedSince"
648
+ )
649
+ '''
650
+ if __debug__:
651
+ type_hints = typing.get_type_hints(_typecheckingstub__fab870dfa28349d9079dfaa9f8d7d27975ec4da1aec540075bef6f41926da444)
652
+ check_type(argname="argument result", value=result, expected_type=type_hints["result"])
653
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
654
+ check_type(argname="argument impaired_since", value=impaired_since, expected_type=type_hints["impaired_since"])
655
+ self._values: typing.Dict[builtins.str, typing.Any] = {
656
+ "result": result,
657
+ "type": type,
658
+ }
659
+ if impaired_since is not None:
660
+ self._values["impaired_since"] = impaired_since
661
+
662
+ @builtins.property
663
+ def result(self) -> builtins.str:
664
+ '''The check result.
665
+
666
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-check.html#cfn-evs-environment-check-result
667
+ '''
668
+ result = self._values.get("result")
669
+ assert result is not None, "Required property 'result' is missing"
670
+ return typing.cast(builtins.str, result)
671
+
672
+ @builtins.property
673
+ def type(self) -> builtins.str:
674
+ '''The check type. Amazon EVS performs the following checks.
675
+
676
+ - ``KEY_REUSE`` : checks that the VCF license key is not used by another Amazon EVS environment. This check fails if a used license is added to the environment.
677
+ - ``KEY_COVERAGE`` : checks that your VCF license key allocates sufficient vCPU cores for all deployed hosts. The check fails when any assigned hosts in the EVS environment are not covered by license keys, or when any unassigned hosts cannot be covered by available vCPU cores in keys.
678
+ - ``REACHABILITY`` : checks that the Amazon EVS control plane has a persistent connection to SDDC Manager. If Amazon EVS cannot reach the environment, this check fails.
679
+ - ``HOST_COUNT`` : Checks that your environment has a minimum of 4 hosts, which is a requirement for VCF 5.2.1.
680
+
681
+ If this check fails, you will need to add hosts so that your environment meets this minimum requirement. Amazon EVS only supports environments with 4-16 hosts.
682
+
683
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-check.html#cfn-evs-environment-check-type
684
+ '''
685
+ result = self._values.get("type")
686
+ assert result is not None, "Required property 'type' is missing"
687
+ return typing.cast(builtins.str, result)
688
+
689
+ @builtins.property
690
+ def impaired_since(self) -> typing.Optional[builtins.str]:
691
+ '''The time when environment health began to be impaired.
692
+
693
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-check.html#cfn-evs-environment-check-impairedsince
694
+ '''
695
+ result = self._values.get("impaired_since")
696
+ return typing.cast(typing.Optional[builtins.str], result)
697
+
698
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
699
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
700
+
701
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
702
+ return not (rhs == self)
703
+
704
+ def __repr__(self) -> str:
705
+ return "CheckProperty(%s)" % ", ".join(
706
+ k + "=" + repr(v) for k, v in self._values.items()
707
+ )
708
+
709
+ @jsii.data_type(
710
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.ConnectivityInfoProperty",
711
+ jsii_struct_bases=[],
712
+ name_mapping={"private_route_server_peerings": "privateRouteServerPeerings"},
713
+ )
714
+ class ConnectivityInfoProperty:
715
+ def __init__(
716
+ self,
717
+ *,
718
+ private_route_server_peerings: typing.Sequence[builtins.str],
719
+ ) -> None:
720
+ '''The connectivity configuration for the environment.
721
+
722
+ Amazon EVS requires that you specify two route server peer IDs. During environment creation, the route server endpoints peer with the NSX uplink VLAN for connectivity to the NSX overlay network.
723
+
724
+ :param private_route_server_peerings: The unique IDs for private route server peers.
725
+
726
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-connectivityinfo.html
727
+ :exampleMetadata: fixture=_generated
728
+
729
+ Example::
730
+
731
+ # The code below shows an example of how to instantiate this type.
732
+ # The values are placeholders you should change.
733
+ from aws_cdk import aws_evs as evs
734
+
735
+ connectivity_info_property = evs.CfnEnvironment.ConnectivityInfoProperty(
736
+ private_route_server_peerings=["privateRouteServerPeerings"]
737
+ )
738
+ '''
739
+ if __debug__:
740
+ type_hints = typing.get_type_hints(_typecheckingstub__2cb3d22ab966fb57bf85a281b91db18f25f2e9b843fa76b2414f9c1ca1285629)
741
+ check_type(argname="argument private_route_server_peerings", value=private_route_server_peerings, expected_type=type_hints["private_route_server_peerings"])
742
+ self._values: typing.Dict[builtins.str, typing.Any] = {
743
+ "private_route_server_peerings": private_route_server_peerings,
744
+ }
745
+
746
+ @builtins.property
747
+ def private_route_server_peerings(self) -> typing.List[builtins.str]:
748
+ '''The unique IDs for private route server peers.
749
+
750
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-connectivityinfo.html#cfn-evs-environment-connectivityinfo-privaterouteserverpeerings
751
+ '''
752
+ result = self._values.get("private_route_server_peerings")
753
+ assert result is not None, "Required property 'private_route_server_peerings' is missing"
754
+ return typing.cast(typing.List[builtins.str], result)
755
+
756
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
757
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
758
+
759
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
760
+ return not (rhs == self)
761
+
762
+ def __repr__(self) -> str:
763
+ return "ConnectivityInfoProperty(%s)" % ", ".join(
764
+ k + "=" + repr(v) for k, v in self._values.items()
765
+ )
766
+
767
+ @jsii.data_type(
768
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.HostInfoForCreateProperty",
769
+ jsii_struct_bases=[],
770
+ name_mapping={
771
+ "host_name": "hostName",
772
+ "instance_type": "instanceType",
773
+ "key_name": "keyName",
774
+ "dedicated_host_id": "dedicatedHostId",
775
+ "placement_group_id": "placementGroupId",
776
+ },
777
+ )
778
+ class HostInfoForCreateProperty:
779
+ def __init__(
780
+ self,
781
+ *,
782
+ host_name: builtins.str,
783
+ instance_type: builtins.str,
784
+ key_name: builtins.str,
785
+ dedicated_host_id: typing.Optional[builtins.str] = None,
786
+ placement_group_id: typing.Optional[builtins.str] = None,
787
+ ) -> None:
788
+ '''An object that represents a host.
789
+
790
+ .. epigraph::
791
+
792
+ You cannot use ``dedicatedHostId`` and ``placementGroupId`` together in the same ``HostInfoForCreate`` object. This results in a ``ValidationException`` response.
793
+
794
+ :param host_name: The DNS hostname of the host. DNS hostnames for hosts must be unique across Amazon EVS environments and within VCF.
795
+ :param instance_type: The EC2 instance type that represents the host.
796
+ :param key_name: The name of the SSH key that is used to access the host.
797
+ :param dedicated_host_id: The unique ID of the Amazon EC2 Dedicated Host.
798
+ :param placement_group_id: The unique ID of the placement group where the host is placed.
799
+
800
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-hostinfoforcreate.html
801
+ :exampleMetadata: fixture=_generated
802
+
803
+ Example::
804
+
805
+ # The code below shows an example of how to instantiate this type.
806
+ # The values are placeholders you should change.
807
+ from aws_cdk import aws_evs as evs
808
+
809
+ host_info_for_create_property = evs.CfnEnvironment.HostInfoForCreateProperty(
810
+ host_name="hostName",
811
+ instance_type="instanceType",
812
+ key_name="keyName",
813
+
814
+ # the properties below are optional
815
+ dedicated_host_id="dedicatedHostId",
816
+ placement_group_id="placementGroupId"
817
+ )
818
+ '''
819
+ if __debug__:
820
+ type_hints = typing.get_type_hints(_typecheckingstub__3b92e04ba9146f120cc657bac8562ffe8ba1683c2cda51e8edf7837916efbff4)
821
+ check_type(argname="argument host_name", value=host_name, expected_type=type_hints["host_name"])
822
+ check_type(argname="argument instance_type", value=instance_type, expected_type=type_hints["instance_type"])
823
+ check_type(argname="argument key_name", value=key_name, expected_type=type_hints["key_name"])
824
+ check_type(argname="argument dedicated_host_id", value=dedicated_host_id, expected_type=type_hints["dedicated_host_id"])
825
+ check_type(argname="argument placement_group_id", value=placement_group_id, expected_type=type_hints["placement_group_id"])
826
+ self._values: typing.Dict[builtins.str, typing.Any] = {
827
+ "host_name": host_name,
828
+ "instance_type": instance_type,
829
+ "key_name": key_name,
830
+ }
831
+ if dedicated_host_id is not None:
832
+ self._values["dedicated_host_id"] = dedicated_host_id
833
+ if placement_group_id is not None:
834
+ self._values["placement_group_id"] = placement_group_id
835
+
836
+ @builtins.property
837
+ def host_name(self) -> builtins.str:
838
+ '''The DNS hostname of the host.
839
+
840
+ DNS hostnames for hosts must be unique across Amazon EVS environments and within VCF.
841
+
842
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-hostinfoforcreate.html#cfn-evs-environment-hostinfoforcreate-hostname
843
+ '''
844
+ result = self._values.get("host_name")
845
+ assert result is not None, "Required property 'host_name' is missing"
846
+ return typing.cast(builtins.str, result)
847
+
848
+ @builtins.property
849
+ def instance_type(self) -> builtins.str:
850
+ '''The EC2 instance type that represents the host.
851
+
852
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-hostinfoforcreate.html#cfn-evs-environment-hostinfoforcreate-instancetype
853
+ '''
854
+ result = self._values.get("instance_type")
855
+ assert result is not None, "Required property 'instance_type' is missing"
856
+ return typing.cast(builtins.str, result)
857
+
858
+ @builtins.property
859
+ def key_name(self) -> builtins.str:
860
+ '''The name of the SSH key that is used to access the host.
861
+
862
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-hostinfoforcreate.html#cfn-evs-environment-hostinfoforcreate-keyname
863
+ '''
864
+ result = self._values.get("key_name")
865
+ assert result is not None, "Required property 'key_name' is missing"
866
+ return typing.cast(builtins.str, result)
867
+
868
+ @builtins.property
869
+ def dedicated_host_id(self) -> typing.Optional[builtins.str]:
870
+ '''The unique ID of the Amazon EC2 Dedicated Host.
871
+
872
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-hostinfoforcreate.html#cfn-evs-environment-hostinfoforcreate-dedicatedhostid
873
+ '''
874
+ result = self._values.get("dedicated_host_id")
875
+ return typing.cast(typing.Optional[builtins.str], result)
876
+
877
+ @builtins.property
878
+ def placement_group_id(self) -> typing.Optional[builtins.str]:
879
+ '''The unique ID of the placement group where the host is placed.
880
+
881
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-hostinfoforcreate.html#cfn-evs-environment-hostinfoforcreate-placementgroupid
882
+ '''
883
+ result = self._values.get("placement_group_id")
884
+ return typing.cast(typing.Optional[builtins.str], result)
885
+
886
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
887
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
888
+
889
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
890
+ return not (rhs == self)
891
+
892
+ def __repr__(self) -> str:
893
+ return "HostInfoForCreateProperty(%s)" % ", ".join(
894
+ k + "=" + repr(v) for k, v in self._values.items()
895
+ )
896
+
897
+ @jsii.data_type(
898
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.InitialVlanInfoProperty",
899
+ jsii_struct_bases=[],
900
+ name_mapping={"cidr": "cidr"},
901
+ )
902
+ class InitialVlanInfoProperty:
903
+ def __init__(self, *, cidr: builtins.str) -> None:
904
+ '''An object that represents an initial VLAN subnet for the Amazon EVS environment.
905
+
906
+ Amazon EVS creates initial VLAN subnets when you first create the environment. Amazon EVS creates the following 10 VLAN subnets: host management VLAN, vMotion VLAN, vSAN VLAN, VTEP VLAN, Edge VTEP VLAN, Management VM VLAN, HCX uplink VLAN, NSX uplink VLAN, expansion VLAN 1, expansion VLAN 2.
907
+ .. epigraph::
908
+
909
+ For each Amazon EVS VLAN subnet, you must specify a non-overlapping CIDR block. Amazon EVS VLAN subnets have a minimum CIDR block size of /28 and a maximum size of /24.
910
+
911
+ :param cidr: The CIDR block that you provide to create an Amazon EVS VLAN subnet. Amazon EVS VLAN subnets have a minimum CIDR block size of /28 and a maximum size of /24. Amazon EVS VLAN subnet CIDR blocks must not overlap with other subnets in the VPC.
912
+
913
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlaninfo.html
914
+ :exampleMetadata: fixture=_generated
915
+
916
+ Example::
917
+
918
+ # The code below shows an example of how to instantiate this type.
919
+ # The values are placeholders you should change.
920
+ from aws_cdk import aws_evs as evs
921
+
922
+ initial_vlan_info_property = evs.CfnEnvironment.InitialVlanInfoProperty(
923
+ cidr="cidr"
924
+ )
925
+ '''
926
+ if __debug__:
927
+ type_hints = typing.get_type_hints(_typecheckingstub__620167df6fd78af7ecffe1762889e66c6a24ac02786c4e7ca2d324fab050513a)
928
+ check_type(argname="argument cidr", value=cidr, expected_type=type_hints["cidr"])
929
+ self._values: typing.Dict[builtins.str, typing.Any] = {
930
+ "cidr": cidr,
931
+ }
932
+
933
+ @builtins.property
934
+ def cidr(self) -> builtins.str:
935
+ '''The CIDR block that you provide to create an Amazon EVS VLAN subnet.
936
+
937
+ Amazon EVS VLAN subnets have a minimum CIDR block size of /28 and a maximum size of /24. Amazon EVS VLAN subnet CIDR blocks must not overlap with other subnets in the VPC.
938
+
939
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlaninfo.html#cfn-evs-environment-initialvlaninfo-cidr
940
+ '''
941
+ result = self._values.get("cidr")
942
+ assert result is not None, "Required property 'cidr' is missing"
943
+ return typing.cast(builtins.str, result)
944
+
945
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
946
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
947
+
948
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
949
+ return not (rhs == self)
950
+
951
+ def __repr__(self) -> str:
952
+ return "InitialVlanInfoProperty(%s)" % ", ".join(
953
+ k + "=" + repr(v) for k, v in self._values.items()
954
+ )
955
+
956
+ @jsii.data_type(
957
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.InitialVlansProperty",
958
+ jsii_struct_bases=[],
959
+ name_mapping={
960
+ "edge_v_tep": "edgeVTep",
961
+ "expansion_vlan1": "expansionVlan1",
962
+ "expansion_vlan2": "expansionVlan2",
963
+ "hcx": "hcx",
964
+ "nsx_up_link": "nsxUpLink",
965
+ "vmk_management": "vmkManagement",
966
+ "vm_management": "vmManagement",
967
+ "v_motion": "vMotion",
968
+ "v_san": "vSan",
969
+ "v_tep": "vTep",
970
+ "hcx_network_acl_id": "hcxNetworkAclId",
971
+ "is_hcx_public": "isHcxPublic",
972
+ },
973
+ )
974
+ class InitialVlansProperty:
975
+ def __init__(
976
+ self,
977
+ *,
978
+ edge_v_tep: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
979
+ expansion_vlan1: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
980
+ expansion_vlan2: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
981
+ hcx: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
982
+ nsx_up_link: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
983
+ vmk_management: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
984
+ vm_management: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
985
+ v_motion: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
986
+ v_san: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
987
+ v_tep: typing.Union[_IResolvable_da3f097b, typing.Union["CfnEnvironment.InitialVlanInfoProperty", typing.Dict[builtins.str, typing.Any]]],
988
+ hcx_network_acl_id: typing.Optional[builtins.str] = None,
989
+ is_hcx_public: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
990
+ ) -> None:
991
+ '''The initial VLAN subnets for the environment.
992
+
993
+ Amazon EVS VLAN subnets have a minimum CIDR block size of /28 and a maximum size of /24. Amazon EVS VLAN subnet CIDR blocks must not overlap with other subnets in the VPC.
994
+
995
+ :param edge_v_tep: The edge VTEP VLAN subnet. This VLAN subnet manages traffic flowing between the internal network and external networks, including internet access and other site connections.
996
+ :param expansion_vlan1: An additional VLAN subnet that can be used to extend VCF capabilities once configured. For example, you can configure an expansion VLAN subnet to use NSX Federation for centralized management and synchronization of multiple NSX deployments across different locations.
997
+ :param expansion_vlan2: An additional VLAN subnet that can be used to extend VCF capabilities once configured. For example, you can configure an expansion VLAN subnet to use NSX Federation for centralized management and synchronization of multiple NSX deployments across different locations.
998
+ :param hcx: The HCX VLAN subnet. This VLAN subnet allows the HCX Interconnnect (IX) and HCX Network Extension (NE) to reach their peers and enable HCX Service Mesh creation. If you plan to use a public HCX VLAN subnet, the following requirements must be met: - Must have a /28 netmask and be allocated from the IPAM public pool. Required for HCX internet access configuration. - The HCX public VLAN CIDR block must be added to the VPC as a secondary CIDR block. - Must have at least two Elastic IP addresses to be allocated from the public IPAM pool for HCX components.
999
+ :param nsx_up_link: The NSX uplink VLAN subnet. This VLAN subnet allows connectivity to the NSX overlay network.
1000
+ :param vmk_management: The host VMkernel management VLAN subnet. This VLAN subnet carries traffic for managing ESXi hosts and communicating with VMware vCenter Server.
1001
+ :param vm_management: The VM management VLAN subnet. This VLAN subnet carries traffic for vSphere virtual machines.
1002
+ :param v_motion: The vMotion VLAN subnet. This VLAN subnet carries traffic for vSphere vMotion.
1003
+ :param v_san: The vSAN VLAN subnet. This VLAN subnet carries the communication between ESXi hosts to implement a vSAN shared storage pool.
1004
+ :param v_tep: The VTEP VLAN subnet. This VLAN subnet handles internal network traffic between virtual machines within a VCF instance.
1005
+ :param hcx_network_acl_id: A unique ID for a network access control list that the HCX VLAN uses. Required when ``isHcxPublic`` is set to ``true`` .
1006
+ :param is_hcx_public: Determines if the HCX VLAN that Amazon EVS provisions is public or private.
1007
+
1008
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html
1009
+ :exampleMetadata: fixture=_generated
1010
+
1011
+ Example::
1012
+
1013
+ # The code below shows an example of how to instantiate this type.
1014
+ # The values are placeholders you should change.
1015
+ from aws_cdk import aws_evs as evs
1016
+
1017
+ initial_vlans_property = evs.CfnEnvironment.InitialVlansProperty(
1018
+ edge_vTep=evs.CfnEnvironment.InitialVlanInfoProperty(
1019
+ cidr="cidr"
1020
+ ),
1021
+ expansion_vlan1=evs.CfnEnvironment.InitialVlanInfoProperty(
1022
+ cidr="cidr"
1023
+ ),
1024
+ expansion_vlan2=evs.CfnEnvironment.InitialVlanInfoProperty(
1025
+ cidr="cidr"
1026
+ ),
1027
+ hcx=evs.CfnEnvironment.InitialVlanInfoProperty(
1028
+ cidr="cidr"
1029
+ ),
1030
+ nsx_up_link=evs.CfnEnvironment.InitialVlanInfoProperty(
1031
+ cidr="cidr"
1032
+ ),
1033
+ vmk_management=evs.CfnEnvironment.InitialVlanInfoProperty(
1034
+ cidr="cidr"
1035
+ ),
1036
+ vm_management=evs.CfnEnvironment.InitialVlanInfoProperty(
1037
+ cidr="cidr"
1038
+ ),
1039
+ v_motion=evs.CfnEnvironment.InitialVlanInfoProperty(
1040
+ cidr="cidr"
1041
+ ),
1042
+ v_san=evs.CfnEnvironment.InitialVlanInfoProperty(
1043
+ cidr="cidr"
1044
+ ),
1045
+ v_tep=evs.CfnEnvironment.InitialVlanInfoProperty(
1046
+ cidr="cidr"
1047
+ ),
1048
+
1049
+ # the properties below are optional
1050
+ hcx_network_acl_id="hcxNetworkAclId",
1051
+ is_hcx_public=False
1052
+ )
1053
+ '''
1054
+ if __debug__:
1055
+ type_hints = typing.get_type_hints(_typecheckingstub__a70b9547ba64740f8b44168dbcdcd80e75a75a1dc2ed733c834ad336fe27001d)
1056
+ check_type(argname="argument edge_v_tep", value=edge_v_tep, expected_type=type_hints["edge_v_tep"])
1057
+ check_type(argname="argument expansion_vlan1", value=expansion_vlan1, expected_type=type_hints["expansion_vlan1"])
1058
+ check_type(argname="argument expansion_vlan2", value=expansion_vlan2, expected_type=type_hints["expansion_vlan2"])
1059
+ check_type(argname="argument hcx", value=hcx, expected_type=type_hints["hcx"])
1060
+ check_type(argname="argument nsx_up_link", value=nsx_up_link, expected_type=type_hints["nsx_up_link"])
1061
+ check_type(argname="argument vmk_management", value=vmk_management, expected_type=type_hints["vmk_management"])
1062
+ check_type(argname="argument vm_management", value=vm_management, expected_type=type_hints["vm_management"])
1063
+ check_type(argname="argument v_motion", value=v_motion, expected_type=type_hints["v_motion"])
1064
+ check_type(argname="argument v_san", value=v_san, expected_type=type_hints["v_san"])
1065
+ check_type(argname="argument v_tep", value=v_tep, expected_type=type_hints["v_tep"])
1066
+ check_type(argname="argument hcx_network_acl_id", value=hcx_network_acl_id, expected_type=type_hints["hcx_network_acl_id"])
1067
+ check_type(argname="argument is_hcx_public", value=is_hcx_public, expected_type=type_hints["is_hcx_public"])
1068
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1069
+ "edge_v_tep": edge_v_tep,
1070
+ "expansion_vlan1": expansion_vlan1,
1071
+ "expansion_vlan2": expansion_vlan2,
1072
+ "hcx": hcx,
1073
+ "nsx_up_link": nsx_up_link,
1074
+ "vmk_management": vmk_management,
1075
+ "vm_management": vm_management,
1076
+ "v_motion": v_motion,
1077
+ "v_san": v_san,
1078
+ "v_tep": v_tep,
1079
+ }
1080
+ if hcx_network_acl_id is not None:
1081
+ self._values["hcx_network_acl_id"] = hcx_network_acl_id
1082
+ if is_hcx_public is not None:
1083
+ self._values["is_hcx_public"] = is_hcx_public
1084
+
1085
+ @builtins.property
1086
+ def edge_v_tep(
1087
+ self,
1088
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1089
+ '''The edge VTEP VLAN subnet.
1090
+
1091
+ This VLAN subnet manages traffic flowing between the internal network and external networks, including internet access and other site connections.
1092
+
1093
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-edgevtep
1094
+ '''
1095
+ result = self._values.get("edge_v_tep")
1096
+ assert result is not None, "Required property 'edge_v_tep' is missing"
1097
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1098
+
1099
+ @builtins.property
1100
+ def expansion_vlan1(
1101
+ self,
1102
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1103
+ '''An additional VLAN subnet that can be used to extend VCF capabilities once configured.
1104
+
1105
+ For example, you can configure an expansion VLAN subnet to use NSX Federation for centralized management and synchronization of multiple NSX deployments across different locations.
1106
+
1107
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-expansionvlan1
1108
+ '''
1109
+ result = self._values.get("expansion_vlan1")
1110
+ assert result is not None, "Required property 'expansion_vlan1' is missing"
1111
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1112
+
1113
+ @builtins.property
1114
+ def expansion_vlan2(
1115
+ self,
1116
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1117
+ '''An additional VLAN subnet that can be used to extend VCF capabilities once configured.
1118
+
1119
+ For example, you can configure an expansion VLAN subnet to use NSX Federation for centralized management and synchronization of multiple NSX deployments across different locations.
1120
+
1121
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-expansionvlan2
1122
+ '''
1123
+ result = self._values.get("expansion_vlan2")
1124
+ assert result is not None, "Required property 'expansion_vlan2' is missing"
1125
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1126
+
1127
+ @builtins.property
1128
+ def hcx(
1129
+ self,
1130
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1131
+ '''The HCX VLAN subnet.
1132
+
1133
+ This VLAN subnet allows the HCX Interconnnect (IX) and HCX Network Extension (NE) to reach their peers and enable HCX Service Mesh creation.
1134
+
1135
+ If you plan to use a public HCX VLAN subnet, the following requirements must be met:
1136
+
1137
+ - Must have a /28 netmask and be allocated from the IPAM public pool. Required for HCX internet access configuration.
1138
+ - The HCX public VLAN CIDR block must be added to the VPC as a secondary CIDR block.
1139
+ - Must have at least two Elastic IP addresses to be allocated from the public IPAM pool for HCX components.
1140
+
1141
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-hcx
1142
+ '''
1143
+ result = self._values.get("hcx")
1144
+ assert result is not None, "Required property 'hcx' is missing"
1145
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1146
+
1147
+ @builtins.property
1148
+ def nsx_up_link(
1149
+ self,
1150
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1151
+ '''The NSX uplink VLAN subnet.
1152
+
1153
+ This VLAN subnet allows connectivity to the NSX overlay network.
1154
+
1155
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-nsxuplink
1156
+ '''
1157
+ result = self._values.get("nsx_up_link")
1158
+ assert result is not None, "Required property 'nsx_up_link' is missing"
1159
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1160
+
1161
+ @builtins.property
1162
+ def vmk_management(
1163
+ self,
1164
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1165
+ '''The host VMkernel management VLAN subnet.
1166
+
1167
+ This VLAN subnet carries traffic for managing ESXi hosts and communicating with VMware vCenter Server.
1168
+
1169
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-vmkmanagement
1170
+ '''
1171
+ result = self._values.get("vmk_management")
1172
+ assert result is not None, "Required property 'vmk_management' is missing"
1173
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1174
+
1175
+ @builtins.property
1176
+ def vm_management(
1177
+ self,
1178
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1179
+ '''The VM management VLAN subnet.
1180
+
1181
+ This VLAN subnet carries traffic for vSphere virtual machines.
1182
+
1183
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-vmmanagement
1184
+ '''
1185
+ result = self._values.get("vm_management")
1186
+ assert result is not None, "Required property 'vm_management' is missing"
1187
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1188
+
1189
+ @builtins.property
1190
+ def v_motion(
1191
+ self,
1192
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1193
+ '''The vMotion VLAN subnet.
1194
+
1195
+ This VLAN subnet carries traffic for vSphere vMotion.
1196
+
1197
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-vmotion
1198
+ '''
1199
+ result = self._values.get("v_motion")
1200
+ assert result is not None, "Required property 'v_motion' is missing"
1201
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1202
+
1203
+ @builtins.property
1204
+ def v_san(
1205
+ self,
1206
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1207
+ '''The vSAN VLAN subnet.
1208
+
1209
+ This VLAN subnet carries the communication between ESXi hosts to implement a vSAN shared storage pool.
1210
+
1211
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-vsan
1212
+ '''
1213
+ result = self._values.get("v_san")
1214
+ assert result is not None, "Required property 'v_san' is missing"
1215
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1216
+
1217
+ @builtins.property
1218
+ def v_tep(
1219
+ self,
1220
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"]:
1221
+ '''The VTEP VLAN subnet.
1222
+
1223
+ This VLAN subnet handles internal network traffic between virtual machines within a VCF instance.
1224
+
1225
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-vtep
1226
+ '''
1227
+ result = self._values.get("v_tep")
1228
+ assert result is not None, "Required property 'v_tep' is missing"
1229
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnEnvironment.InitialVlanInfoProperty"], result)
1230
+
1231
+ @builtins.property
1232
+ def hcx_network_acl_id(self) -> typing.Optional[builtins.str]:
1233
+ '''A unique ID for a network access control list that the HCX VLAN uses.
1234
+
1235
+ Required when ``isHcxPublic`` is set to ``true`` .
1236
+
1237
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-hcxnetworkaclid
1238
+ '''
1239
+ result = self._values.get("hcx_network_acl_id")
1240
+ return typing.cast(typing.Optional[builtins.str], result)
1241
+
1242
+ @builtins.property
1243
+ def is_hcx_public(
1244
+ self,
1245
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
1246
+ '''Determines if the HCX VLAN that Amazon EVS provisions is public or private.
1247
+
1248
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-initialvlans.html#cfn-evs-environment-initialvlans-ishcxpublic
1249
+ '''
1250
+ result = self._values.get("is_hcx_public")
1251
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
1252
+
1253
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1254
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1255
+
1256
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1257
+ return not (rhs == self)
1258
+
1259
+ def __repr__(self) -> str:
1260
+ return "InitialVlansProperty(%s)" % ", ".join(
1261
+ k + "=" + repr(v) for k, v in self._values.items()
1262
+ )
1263
+
1264
+ @jsii.data_type(
1265
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.LicenseInfoProperty",
1266
+ jsii_struct_bases=[],
1267
+ name_mapping={"solution_key": "solutionKey", "vsan_key": "vsanKey"},
1268
+ )
1269
+ class LicenseInfoProperty:
1270
+ def __init__(
1271
+ self,
1272
+ *,
1273
+ solution_key: builtins.str,
1274
+ vsan_key: builtins.str,
1275
+ ) -> None:
1276
+ '''The license information that Amazon EVS requires to create an environment.
1277
+
1278
+ Amazon EVS requires two license keys: a VCF solution key and a vSAN license key.
1279
+
1280
+ :param solution_key: The VCF solution key. This license unlocks VMware VCF product features, including vSphere, NSX, SDDC Manager, and vCenter Server. The VCF solution key must cover a minimum of 256 cores.
1281
+ :param vsan_key: The VSAN license key. This license unlocks vSAN features. The vSAN license key must provide at least 110 TiB of vSAN capacity.
1282
+
1283
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-licenseinfo.html
1284
+ :exampleMetadata: fixture=_generated
1285
+
1286
+ Example::
1287
+
1288
+ # The code below shows an example of how to instantiate this type.
1289
+ # The values are placeholders you should change.
1290
+ from aws_cdk import aws_evs as evs
1291
+
1292
+ license_info_property = evs.CfnEnvironment.LicenseInfoProperty(
1293
+ solution_key="solutionKey",
1294
+ vsan_key="vsanKey"
1295
+ )
1296
+ '''
1297
+ if __debug__:
1298
+ type_hints = typing.get_type_hints(_typecheckingstub__6bb631c066ce7fa55edfeac94e8c8a5337b818eed4292c5b3aced9cad6d1cad3)
1299
+ check_type(argname="argument solution_key", value=solution_key, expected_type=type_hints["solution_key"])
1300
+ check_type(argname="argument vsan_key", value=vsan_key, expected_type=type_hints["vsan_key"])
1301
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1302
+ "solution_key": solution_key,
1303
+ "vsan_key": vsan_key,
1304
+ }
1305
+
1306
+ @builtins.property
1307
+ def solution_key(self) -> builtins.str:
1308
+ '''The VCF solution key.
1309
+
1310
+ This license unlocks VMware VCF product features, including vSphere, NSX, SDDC Manager, and vCenter Server. The VCF solution key must cover a minimum of 256 cores.
1311
+
1312
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-licenseinfo.html#cfn-evs-environment-licenseinfo-solutionkey
1313
+ '''
1314
+ result = self._values.get("solution_key")
1315
+ assert result is not None, "Required property 'solution_key' is missing"
1316
+ return typing.cast(builtins.str, result)
1317
+
1318
+ @builtins.property
1319
+ def vsan_key(self) -> builtins.str:
1320
+ '''The VSAN license key.
1321
+
1322
+ This license unlocks vSAN features. The vSAN license key must provide at least 110 TiB of vSAN capacity.
1323
+
1324
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-licenseinfo.html#cfn-evs-environment-licenseinfo-vsankey
1325
+ '''
1326
+ result = self._values.get("vsan_key")
1327
+ assert result is not None, "Required property 'vsan_key' is missing"
1328
+ return typing.cast(builtins.str, result)
1329
+
1330
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1331
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1332
+
1333
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1334
+ return not (rhs == self)
1335
+
1336
+ def __repr__(self) -> str:
1337
+ return "LicenseInfoProperty(%s)" % ", ".join(
1338
+ k + "=" + repr(v) for k, v in self._values.items()
1339
+ )
1340
+
1341
+ @jsii.data_type(
1342
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.SecretProperty",
1343
+ jsii_struct_bases=[],
1344
+ name_mapping={"secret_arn": "secretArn"},
1345
+ )
1346
+ class SecretProperty:
1347
+ def __init__(self, *, secret_arn: typing.Optional[builtins.str] = None) -> None:
1348
+ '''A managed secret that contains the credentials for installing vCenter Server, NSX, and SDDC Manager.
1349
+
1350
+ During environment creation, the Amazon EVS control plane uses AWS Secrets Manager to create, encrypt, validate, and store secrets. If you choose to delete your environment, Amazon EVS also deletes the secrets that are associated with your environment. Amazon EVS does not provide managed rotation of secrets. We recommend that you rotate secrets regularly to ensure that secrets are not long-lived.
1351
+
1352
+ :param secret_arn: The Amazon Resource Name (ARN) of the secret.
1353
+
1354
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-secret.html
1355
+ :exampleMetadata: fixture=_generated
1356
+
1357
+ Example::
1358
+
1359
+ # The code below shows an example of how to instantiate this type.
1360
+ # The values are placeholders you should change.
1361
+ from aws_cdk import aws_evs as evs
1362
+
1363
+ secret_property = evs.CfnEnvironment.SecretProperty(
1364
+ secret_arn="secretArn"
1365
+ )
1366
+ '''
1367
+ if __debug__:
1368
+ type_hints = typing.get_type_hints(_typecheckingstub__33967b6ef3400afc32ce0af5c9e428f01559afa67ae04decfe8e700e94b87a50)
1369
+ check_type(argname="argument secret_arn", value=secret_arn, expected_type=type_hints["secret_arn"])
1370
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1371
+ if secret_arn is not None:
1372
+ self._values["secret_arn"] = secret_arn
1373
+
1374
+ @builtins.property
1375
+ def secret_arn(self) -> typing.Optional[builtins.str]:
1376
+ '''The Amazon Resource Name (ARN) of the secret.
1377
+
1378
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-secret.html#cfn-evs-environment-secret-secretarn
1379
+ '''
1380
+ result = self._values.get("secret_arn")
1381
+ return typing.cast(typing.Optional[builtins.str], result)
1382
+
1383
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1384
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1385
+
1386
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1387
+ return not (rhs == self)
1388
+
1389
+ def __repr__(self) -> str:
1390
+ return "SecretProperty(%s)" % ", ".join(
1391
+ k + "=" + repr(v) for k, v in self._values.items()
1392
+ )
1393
+
1394
+ @jsii.data_type(
1395
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.ServiceAccessSecurityGroupsProperty",
1396
+ jsii_struct_bases=[],
1397
+ name_mapping={"security_groups": "securityGroups"},
1398
+ )
1399
+ class ServiceAccessSecurityGroupsProperty:
1400
+ def __init__(
1401
+ self,
1402
+ *,
1403
+ security_groups: typing.Optional[typing.Sequence[builtins.str]] = None,
1404
+ ) -> None:
1405
+ '''The security groups that allow traffic between the Amazon EVS control plane and your VPC for Amazon EVS service access.
1406
+
1407
+ If a security group is not specified, Amazon EVS uses the default security group in your account for service access.
1408
+
1409
+ :param security_groups: The security groups that allow service access.
1410
+
1411
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-serviceaccesssecuritygroups.html
1412
+ :exampleMetadata: fixture=_generated
1413
+
1414
+ Example::
1415
+
1416
+ # The code below shows an example of how to instantiate this type.
1417
+ # The values are placeholders you should change.
1418
+ from aws_cdk import aws_evs as evs
1419
+
1420
+ service_access_security_groups_property = evs.CfnEnvironment.ServiceAccessSecurityGroupsProperty(
1421
+ security_groups=["securityGroups"]
1422
+ )
1423
+ '''
1424
+ if __debug__:
1425
+ type_hints = typing.get_type_hints(_typecheckingstub__35c3da17a2fce469ae79744d181a61b0265e29008e2b55604fbe06fb54b01d0d)
1426
+ check_type(argname="argument security_groups", value=security_groups, expected_type=type_hints["security_groups"])
1427
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1428
+ if security_groups is not None:
1429
+ self._values["security_groups"] = security_groups
1430
+
1431
+ @builtins.property
1432
+ def security_groups(self) -> typing.Optional[typing.List[builtins.str]]:
1433
+ '''The security groups that allow service access.
1434
+
1435
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-serviceaccesssecuritygroups.html#cfn-evs-environment-serviceaccesssecuritygroups-securitygroups
1436
+ '''
1437
+ result = self._values.get("security_groups")
1438
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
1439
+
1440
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1441
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1442
+
1443
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1444
+ return not (rhs == self)
1445
+
1446
+ def __repr__(self) -> str:
1447
+ return "ServiceAccessSecurityGroupsProperty(%s)" % ", ".join(
1448
+ k + "=" + repr(v) for k, v in self._values.items()
1449
+ )
1450
+
1451
+ @jsii.data_type(
1452
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironment.VcfHostnamesProperty",
1453
+ jsii_struct_bases=[],
1454
+ name_mapping={
1455
+ "cloud_builder": "cloudBuilder",
1456
+ "nsx": "nsx",
1457
+ "nsx_edge1": "nsxEdge1",
1458
+ "nsx_edge2": "nsxEdge2",
1459
+ "nsx_manager1": "nsxManager1",
1460
+ "nsx_manager2": "nsxManager2",
1461
+ "nsx_manager3": "nsxManager3",
1462
+ "sddc_manager": "sddcManager",
1463
+ "v_center": "vCenter",
1464
+ },
1465
+ )
1466
+ class VcfHostnamesProperty:
1467
+ def __init__(
1468
+ self,
1469
+ *,
1470
+ cloud_builder: builtins.str,
1471
+ nsx: builtins.str,
1472
+ nsx_edge1: builtins.str,
1473
+ nsx_edge2: builtins.str,
1474
+ nsx_manager1: builtins.str,
1475
+ nsx_manager2: builtins.str,
1476
+ nsx_manager3: builtins.str,
1477
+ sddc_manager: builtins.str,
1478
+ v_center: builtins.str,
1479
+ ) -> None:
1480
+ '''The DNS hostnames that Amazon EVS uses to install VMware vCenter Server, NSX, SDDC Manager, and Cloud Builder.
1481
+
1482
+ Each hostname must be unique, and resolve to a domain name that you've registered in your DNS service of choice. Hostnames cannot be changed.
1483
+
1484
+ VMware VCF requires the deployment of two NSX Edge nodes, and three NSX Manager virtual machines.
1485
+
1486
+ :param cloud_builder: The hostname for VMware Cloud Builder.
1487
+ :param nsx: The VMware NSX hostname.
1488
+ :param nsx_edge1: The hostname for the first NSX Edge node.
1489
+ :param nsx_edge2: The hostname for the second NSX Edge node.
1490
+ :param nsx_manager1: The hostname for the first VMware NSX Manager virtual machine (VM).
1491
+ :param nsx_manager2: The hostname for the second VMware NSX Manager virtual machine (VM).
1492
+ :param nsx_manager3: The hostname for the third VMware NSX Manager virtual machine (VM).
1493
+ :param sddc_manager: The hostname for SDDC Manager.
1494
+ :param v_center: The VMware vCenter hostname.
1495
+
1496
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html
1497
+ :exampleMetadata: fixture=_generated
1498
+
1499
+ Example::
1500
+
1501
+ # The code below shows an example of how to instantiate this type.
1502
+ # The values are placeholders you should change.
1503
+ from aws_cdk import aws_evs as evs
1504
+
1505
+ vcf_hostnames_property = evs.CfnEnvironment.VcfHostnamesProperty(
1506
+ cloud_builder="cloudBuilder",
1507
+ nsx="nsx",
1508
+ nsx_edge1="nsxEdge1",
1509
+ nsx_edge2="nsxEdge2",
1510
+ nsx_manager1="nsxManager1",
1511
+ nsx_manager2="nsxManager2",
1512
+ nsx_manager3="nsxManager3",
1513
+ sddc_manager="sddcManager",
1514
+ v_center="vCenter"
1515
+ )
1516
+ '''
1517
+ if __debug__:
1518
+ type_hints = typing.get_type_hints(_typecheckingstub__1ba5fd1a9e5e7dc84687933a99fd65aef3da8840e139b66bfd40a66914e4a834)
1519
+ check_type(argname="argument cloud_builder", value=cloud_builder, expected_type=type_hints["cloud_builder"])
1520
+ check_type(argname="argument nsx", value=nsx, expected_type=type_hints["nsx"])
1521
+ check_type(argname="argument nsx_edge1", value=nsx_edge1, expected_type=type_hints["nsx_edge1"])
1522
+ check_type(argname="argument nsx_edge2", value=nsx_edge2, expected_type=type_hints["nsx_edge2"])
1523
+ check_type(argname="argument nsx_manager1", value=nsx_manager1, expected_type=type_hints["nsx_manager1"])
1524
+ check_type(argname="argument nsx_manager2", value=nsx_manager2, expected_type=type_hints["nsx_manager2"])
1525
+ check_type(argname="argument nsx_manager3", value=nsx_manager3, expected_type=type_hints["nsx_manager3"])
1526
+ check_type(argname="argument sddc_manager", value=sddc_manager, expected_type=type_hints["sddc_manager"])
1527
+ check_type(argname="argument v_center", value=v_center, expected_type=type_hints["v_center"])
1528
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1529
+ "cloud_builder": cloud_builder,
1530
+ "nsx": nsx,
1531
+ "nsx_edge1": nsx_edge1,
1532
+ "nsx_edge2": nsx_edge2,
1533
+ "nsx_manager1": nsx_manager1,
1534
+ "nsx_manager2": nsx_manager2,
1535
+ "nsx_manager3": nsx_manager3,
1536
+ "sddc_manager": sddc_manager,
1537
+ "v_center": v_center,
1538
+ }
1539
+
1540
+ @builtins.property
1541
+ def cloud_builder(self) -> builtins.str:
1542
+ '''The hostname for VMware Cloud Builder.
1543
+
1544
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-cloudbuilder
1545
+ '''
1546
+ result = self._values.get("cloud_builder")
1547
+ assert result is not None, "Required property 'cloud_builder' is missing"
1548
+ return typing.cast(builtins.str, result)
1549
+
1550
+ @builtins.property
1551
+ def nsx(self) -> builtins.str:
1552
+ '''The VMware NSX hostname.
1553
+
1554
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-nsx
1555
+ '''
1556
+ result = self._values.get("nsx")
1557
+ assert result is not None, "Required property 'nsx' is missing"
1558
+ return typing.cast(builtins.str, result)
1559
+
1560
+ @builtins.property
1561
+ def nsx_edge1(self) -> builtins.str:
1562
+ '''The hostname for the first NSX Edge node.
1563
+
1564
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-nsxedge1
1565
+ '''
1566
+ result = self._values.get("nsx_edge1")
1567
+ assert result is not None, "Required property 'nsx_edge1' is missing"
1568
+ return typing.cast(builtins.str, result)
1569
+
1570
+ @builtins.property
1571
+ def nsx_edge2(self) -> builtins.str:
1572
+ '''The hostname for the second NSX Edge node.
1573
+
1574
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-nsxedge2
1575
+ '''
1576
+ result = self._values.get("nsx_edge2")
1577
+ assert result is not None, "Required property 'nsx_edge2' is missing"
1578
+ return typing.cast(builtins.str, result)
1579
+
1580
+ @builtins.property
1581
+ def nsx_manager1(self) -> builtins.str:
1582
+ '''The hostname for the first VMware NSX Manager virtual machine (VM).
1583
+
1584
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-nsxmanager1
1585
+ '''
1586
+ result = self._values.get("nsx_manager1")
1587
+ assert result is not None, "Required property 'nsx_manager1' is missing"
1588
+ return typing.cast(builtins.str, result)
1589
+
1590
+ @builtins.property
1591
+ def nsx_manager2(self) -> builtins.str:
1592
+ '''The hostname for the second VMware NSX Manager virtual machine (VM).
1593
+
1594
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-nsxmanager2
1595
+ '''
1596
+ result = self._values.get("nsx_manager2")
1597
+ assert result is not None, "Required property 'nsx_manager2' is missing"
1598
+ return typing.cast(builtins.str, result)
1599
+
1600
+ @builtins.property
1601
+ def nsx_manager3(self) -> builtins.str:
1602
+ '''The hostname for the third VMware NSX Manager virtual machine (VM).
1603
+
1604
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-nsxmanager3
1605
+ '''
1606
+ result = self._values.get("nsx_manager3")
1607
+ assert result is not None, "Required property 'nsx_manager3' is missing"
1608
+ return typing.cast(builtins.str, result)
1609
+
1610
+ @builtins.property
1611
+ def sddc_manager(self) -> builtins.str:
1612
+ '''The hostname for SDDC Manager.
1613
+
1614
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-sddcmanager
1615
+ '''
1616
+ result = self._values.get("sddc_manager")
1617
+ assert result is not None, "Required property 'sddc_manager' is missing"
1618
+ return typing.cast(builtins.str, result)
1619
+
1620
+ @builtins.property
1621
+ def v_center(self) -> builtins.str:
1622
+ '''The VMware vCenter hostname.
1623
+
1624
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-evs-environment-vcfhostnames.html#cfn-evs-environment-vcfhostnames-vcenter
1625
+ '''
1626
+ result = self._values.get("v_center")
1627
+ assert result is not None, "Required property 'v_center' is missing"
1628
+ return typing.cast(builtins.str, result)
1629
+
1630
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1631
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1632
+
1633
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1634
+ return not (rhs == self)
1635
+
1636
+ def __repr__(self) -> str:
1637
+ return "VcfHostnamesProperty(%s)" % ", ".join(
1638
+ k + "=" + repr(v) for k, v in self._values.items()
1639
+ )
1640
+
1641
+
1642
+ @jsii.data_type(
1643
+ jsii_type="aws-cdk-lib.aws_evs.CfnEnvironmentProps",
1644
+ jsii_struct_bases=[],
1645
+ name_mapping={
1646
+ "connectivity_info": "connectivityInfo",
1647
+ "license_info": "licenseInfo",
1648
+ "service_access_subnet_id": "serviceAccessSubnetId",
1649
+ "site_id": "siteId",
1650
+ "terms_accepted": "termsAccepted",
1651
+ "vcf_hostnames": "vcfHostnames",
1652
+ "vcf_version": "vcfVersion",
1653
+ "vpc_id": "vpcId",
1654
+ "environment_name": "environmentName",
1655
+ "hosts": "hosts",
1656
+ "initial_vlans": "initialVlans",
1657
+ "kms_key_id": "kmsKeyId",
1658
+ "service_access_security_groups": "serviceAccessSecurityGroups",
1659
+ "tags": "tags",
1660
+ },
1661
+ )
1662
+ class CfnEnvironmentProps:
1663
+ def __init__(
1664
+ self,
1665
+ *,
1666
+ connectivity_info: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.ConnectivityInfoProperty, typing.Dict[builtins.str, typing.Any]]],
1667
+ license_info: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.LicenseInfoProperty, typing.Dict[builtins.str, typing.Any]]],
1668
+ service_access_subnet_id: builtins.str,
1669
+ site_id: builtins.str,
1670
+ terms_accepted: typing.Union[builtins.bool, _IResolvable_da3f097b],
1671
+ vcf_hostnames: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.VcfHostnamesProperty, typing.Dict[builtins.str, typing.Any]]],
1672
+ vcf_version: builtins.str,
1673
+ vpc_id: builtins.str,
1674
+ environment_name: typing.Optional[builtins.str] = None,
1675
+ hosts: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.HostInfoForCreateProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
1676
+ initial_vlans: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlansProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1677
+ kms_key_id: typing.Optional[builtins.str] = None,
1678
+ service_access_security_groups: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.ServiceAccessSecurityGroupsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1679
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1680
+ ) -> None:
1681
+ '''Properties for defining a ``CfnEnvironment``.
1682
+
1683
+ :param connectivity_info: The connectivity configuration for the environment. Amazon EVS requires that you specify two route server peer IDs. During environment creation, the route server endpoints peer with the NSX uplink VLAN for connectivity to the NSX overlay network.
1684
+ :param license_info: The license information that Amazon EVS requires to create an environment. Amazon EVS requires two license keys: a VCF solution key and a vSAN license key. The VCF solution key must cover a minimum of 256 cores. The vSAN license key must provide at least 110 TiB of vSAN capacity.
1685
+ :param service_access_subnet_id: The subnet that is used to establish connectivity between the Amazon EVS control plane and VPC. Amazon EVS uses this subnet to perform validations and create the environment.
1686
+ :param site_id: The Broadcom Site ID that is associated with your Amazon EVS environment. Amazon EVS uses the Broadcom Site ID that you provide to meet Broadcom VCF license usage reporting requirements for Amazon EVS.
1687
+ :param terms_accepted: Customer confirmation that the customer has purchased and will continue to maintain the required number of VCF software licenses to cover all physical processor cores in the Amazon EVS environment. Information about your VCF software in Amazon EVS will be shared with Broadcom to verify license compliance. Amazon EVS does not validate license keys. To validate license keys, visit the Broadcom support portal.
1688
+ :param vcf_hostnames: The DNS hostnames to be used by the VCF management appliances in your environment. For environment creation to be successful, each hostname entry must resolve to a domain name that you've registered in your DNS service of choice and configured in the DHCP option set of your VPC. DNS hostnames cannot be changed after environment creation has started.
1689
+ :param vcf_version: The VCF version of the environment.
1690
+ :param vpc_id: The VPC associated with the environment.
1691
+ :param environment_name: The name of the environment.
1692
+ :param hosts: Required for environment resource creation.
1693
+ :param initial_vlans: .. epigraph:: Amazon EVS is in public preview release and is subject to change. The initial VLAN subnets for the environment. Amazon EVS VLAN subnets have a minimum CIDR block size of /28 and a maximum size of /24. Amazon EVS VLAN subnet CIDR blocks must not overlap with other subnets in the VPC. Required for environment resource creation.
1694
+ :param kms_key_id: The AWS KMS key ID that AWS Secrets Manager uses to encrypt secrets that are associated with the environment. These secrets contain the VCF credentials that are needed to install vCenter Server, NSX, and SDDC Manager. By default, Amazon EVS use the AWS Secrets Manager managed key ``aws/secretsmanager`` . You can also specify a customer managed key.
1695
+ :param service_access_security_groups: The security groups that allow traffic between the Amazon EVS control plane and your VPC for service access. If a security group is not specified, Amazon EVS uses the default security group in your account for service access.
1696
+ :param tags: Metadata that assists with categorization and organization. Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or AWS resources.
1697
+
1698
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html
1699
+ :exampleMetadata: fixture=_generated
1700
+
1701
+ Example::
1702
+
1703
+ # The code below shows an example of how to instantiate this type.
1704
+ # The values are placeholders you should change.
1705
+ from aws_cdk import aws_evs as evs
1706
+
1707
+ cfn_environment_props = evs.CfnEnvironmentProps(
1708
+ connectivity_info=evs.CfnEnvironment.ConnectivityInfoProperty(
1709
+ private_route_server_peerings=["privateRouteServerPeerings"]
1710
+ ),
1711
+ license_info=evs.CfnEnvironment.LicenseInfoProperty(
1712
+ solution_key="solutionKey",
1713
+ vsan_key="vsanKey"
1714
+ ),
1715
+ service_access_subnet_id="serviceAccessSubnetId",
1716
+ site_id="siteId",
1717
+ terms_accepted=False,
1718
+ vcf_hostnames=evs.CfnEnvironment.VcfHostnamesProperty(
1719
+ cloud_builder="cloudBuilder",
1720
+ nsx="nsx",
1721
+ nsx_edge1="nsxEdge1",
1722
+ nsx_edge2="nsxEdge2",
1723
+ nsx_manager1="nsxManager1",
1724
+ nsx_manager2="nsxManager2",
1725
+ nsx_manager3="nsxManager3",
1726
+ sddc_manager="sddcManager",
1727
+ v_center="vCenter"
1728
+ ),
1729
+ vcf_version="vcfVersion",
1730
+ vpc_id="vpcId",
1731
+
1732
+ # the properties below are optional
1733
+ environment_name="environmentName",
1734
+ hosts=[evs.CfnEnvironment.HostInfoForCreateProperty(
1735
+ host_name="hostName",
1736
+ instance_type="instanceType",
1737
+ key_name="keyName",
1738
+
1739
+ # the properties below are optional
1740
+ dedicated_host_id="dedicatedHostId",
1741
+ placement_group_id="placementGroupId"
1742
+ )],
1743
+ initial_vlans=evs.CfnEnvironment.InitialVlansProperty(
1744
+ edge_vTep=evs.CfnEnvironment.InitialVlanInfoProperty(
1745
+ cidr="cidr"
1746
+ ),
1747
+ expansion_vlan1=evs.CfnEnvironment.InitialVlanInfoProperty(
1748
+ cidr="cidr"
1749
+ ),
1750
+ expansion_vlan2=evs.CfnEnvironment.InitialVlanInfoProperty(
1751
+ cidr="cidr"
1752
+ ),
1753
+ hcx=evs.CfnEnvironment.InitialVlanInfoProperty(
1754
+ cidr="cidr"
1755
+ ),
1756
+ nsx_up_link=evs.CfnEnvironment.InitialVlanInfoProperty(
1757
+ cidr="cidr"
1758
+ ),
1759
+ vmk_management=evs.CfnEnvironment.InitialVlanInfoProperty(
1760
+ cidr="cidr"
1761
+ ),
1762
+ vm_management=evs.CfnEnvironment.InitialVlanInfoProperty(
1763
+ cidr="cidr"
1764
+ ),
1765
+ v_motion=evs.CfnEnvironment.InitialVlanInfoProperty(
1766
+ cidr="cidr"
1767
+ ),
1768
+ v_san=evs.CfnEnvironment.InitialVlanInfoProperty(
1769
+ cidr="cidr"
1770
+ ),
1771
+ v_tep=evs.CfnEnvironment.InitialVlanInfoProperty(
1772
+ cidr="cidr"
1773
+ ),
1774
+
1775
+ # the properties below are optional
1776
+ hcx_network_acl_id="hcxNetworkAclId",
1777
+ is_hcx_public=False
1778
+ ),
1779
+ kms_key_id="kmsKeyId",
1780
+ service_access_security_groups=evs.CfnEnvironment.ServiceAccessSecurityGroupsProperty(
1781
+ security_groups=["securityGroups"]
1782
+ ),
1783
+ tags=[CfnTag(
1784
+ key="key",
1785
+ value="value"
1786
+ )]
1787
+ )
1788
+ '''
1789
+ if __debug__:
1790
+ type_hints = typing.get_type_hints(_typecheckingstub__13a1fb4e59a516dd42610d3a93252ed2060e4948f1e22e6ac66a5c31e9d3fb06)
1791
+ check_type(argname="argument connectivity_info", value=connectivity_info, expected_type=type_hints["connectivity_info"])
1792
+ check_type(argname="argument license_info", value=license_info, expected_type=type_hints["license_info"])
1793
+ check_type(argname="argument service_access_subnet_id", value=service_access_subnet_id, expected_type=type_hints["service_access_subnet_id"])
1794
+ check_type(argname="argument site_id", value=site_id, expected_type=type_hints["site_id"])
1795
+ check_type(argname="argument terms_accepted", value=terms_accepted, expected_type=type_hints["terms_accepted"])
1796
+ check_type(argname="argument vcf_hostnames", value=vcf_hostnames, expected_type=type_hints["vcf_hostnames"])
1797
+ check_type(argname="argument vcf_version", value=vcf_version, expected_type=type_hints["vcf_version"])
1798
+ check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
1799
+ check_type(argname="argument environment_name", value=environment_name, expected_type=type_hints["environment_name"])
1800
+ check_type(argname="argument hosts", value=hosts, expected_type=type_hints["hosts"])
1801
+ check_type(argname="argument initial_vlans", value=initial_vlans, expected_type=type_hints["initial_vlans"])
1802
+ check_type(argname="argument kms_key_id", value=kms_key_id, expected_type=type_hints["kms_key_id"])
1803
+ check_type(argname="argument service_access_security_groups", value=service_access_security_groups, expected_type=type_hints["service_access_security_groups"])
1804
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
1805
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1806
+ "connectivity_info": connectivity_info,
1807
+ "license_info": license_info,
1808
+ "service_access_subnet_id": service_access_subnet_id,
1809
+ "site_id": site_id,
1810
+ "terms_accepted": terms_accepted,
1811
+ "vcf_hostnames": vcf_hostnames,
1812
+ "vcf_version": vcf_version,
1813
+ "vpc_id": vpc_id,
1814
+ }
1815
+ if environment_name is not None:
1816
+ self._values["environment_name"] = environment_name
1817
+ if hosts is not None:
1818
+ self._values["hosts"] = hosts
1819
+ if initial_vlans is not None:
1820
+ self._values["initial_vlans"] = initial_vlans
1821
+ if kms_key_id is not None:
1822
+ self._values["kms_key_id"] = kms_key_id
1823
+ if service_access_security_groups is not None:
1824
+ self._values["service_access_security_groups"] = service_access_security_groups
1825
+ if tags is not None:
1826
+ self._values["tags"] = tags
1827
+
1828
+ @builtins.property
1829
+ def connectivity_info(
1830
+ self,
1831
+ ) -> typing.Union[_IResolvable_da3f097b, CfnEnvironment.ConnectivityInfoProperty]:
1832
+ '''The connectivity configuration for the environment.
1833
+
1834
+ Amazon EVS requires that you specify two route server peer IDs. During environment creation, the route server endpoints peer with the NSX uplink VLAN for connectivity to the NSX overlay network.
1835
+
1836
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-connectivityinfo
1837
+ '''
1838
+ result = self._values.get("connectivity_info")
1839
+ assert result is not None, "Required property 'connectivity_info' is missing"
1840
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnEnvironment.ConnectivityInfoProperty], result)
1841
+
1842
+ @builtins.property
1843
+ def license_info(
1844
+ self,
1845
+ ) -> typing.Union[_IResolvable_da3f097b, CfnEnvironment.LicenseInfoProperty]:
1846
+ '''The license information that Amazon EVS requires to create an environment.
1847
+
1848
+ Amazon EVS requires two license keys: a VCF solution key and a vSAN license key. The VCF solution key must cover a minimum of 256 cores. The vSAN license key must provide at least 110 TiB of vSAN capacity.
1849
+
1850
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-licenseinfo
1851
+ '''
1852
+ result = self._values.get("license_info")
1853
+ assert result is not None, "Required property 'license_info' is missing"
1854
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnEnvironment.LicenseInfoProperty], result)
1855
+
1856
+ @builtins.property
1857
+ def service_access_subnet_id(self) -> builtins.str:
1858
+ '''The subnet that is used to establish connectivity between the Amazon EVS control plane and VPC.
1859
+
1860
+ Amazon EVS uses this subnet to perform validations and create the environment.
1861
+
1862
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-serviceaccesssubnetid
1863
+ '''
1864
+ result = self._values.get("service_access_subnet_id")
1865
+ assert result is not None, "Required property 'service_access_subnet_id' is missing"
1866
+ return typing.cast(builtins.str, result)
1867
+
1868
+ @builtins.property
1869
+ def site_id(self) -> builtins.str:
1870
+ '''The Broadcom Site ID that is associated with your Amazon EVS environment.
1871
+
1872
+ Amazon EVS uses the Broadcom Site ID that you provide to meet Broadcom VCF license usage reporting requirements for Amazon EVS.
1873
+
1874
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-siteid
1875
+ '''
1876
+ result = self._values.get("site_id")
1877
+ assert result is not None, "Required property 'site_id' is missing"
1878
+ return typing.cast(builtins.str, result)
1879
+
1880
+ @builtins.property
1881
+ def terms_accepted(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
1882
+ '''Customer confirmation that the customer has purchased and will continue to maintain the required number of VCF software licenses to cover all physical processor cores in the Amazon EVS environment.
1883
+
1884
+ Information about your VCF software in Amazon EVS will be shared with Broadcom to verify license compliance. Amazon EVS does not validate license keys. To validate license keys, visit the Broadcom support portal.
1885
+
1886
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-termsaccepted
1887
+ '''
1888
+ result = self._values.get("terms_accepted")
1889
+ assert result is not None, "Required property 'terms_accepted' is missing"
1890
+ return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
1891
+
1892
+ @builtins.property
1893
+ def vcf_hostnames(
1894
+ self,
1895
+ ) -> typing.Union[_IResolvable_da3f097b, CfnEnvironment.VcfHostnamesProperty]:
1896
+ '''The DNS hostnames to be used by the VCF management appliances in your environment.
1897
+
1898
+ For environment creation to be successful, each hostname entry must resolve to a domain name that you've registered in your DNS service of choice and configured in the DHCP option set of your VPC. DNS hostnames cannot be changed after environment creation has started.
1899
+
1900
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-vcfhostnames
1901
+ '''
1902
+ result = self._values.get("vcf_hostnames")
1903
+ assert result is not None, "Required property 'vcf_hostnames' is missing"
1904
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnEnvironment.VcfHostnamesProperty], result)
1905
+
1906
+ @builtins.property
1907
+ def vcf_version(self) -> builtins.str:
1908
+ '''The VCF version of the environment.
1909
+
1910
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-vcfversion
1911
+ '''
1912
+ result = self._values.get("vcf_version")
1913
+ assert result is not None, "Required property 'vcf_version' is missing"
1914
+ return typing.cast(builtins.str, result)
1915
+
1916
+ @builtins.property
1917
+ def vpc_id(self) -> builtins.str:
1918
+ '''The VPC associated with the environment.
1919
+
1920
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-vpcid
1921
+ '''
1922
+ result = self._values.get("vpc_id")
1923
+ assert result is not None, "Required property 'vpc_id' is missing"
1924
+ return typing.cast(builtins.str, result)
1925
+
1926
+ @builtins.property
1927
+ def environment_name(self) -> typing.Optional[builtins.str]:
1928
+ '''The name of the environment.
1929
+
1930
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-environmentname
1931
+ '''
1932
+ result = self._values.get("environment_name")
1933
+ return typing.cast(typing.Optional[builtins.str], result)
1934
+
1935
+ @builtins.property
1936
+ def hosts(
1937
+ self,
1938
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnEnvironment.HostInfoForCreateProperty]]]]:
1939
+ '''Required for environment resource creation.
1940
+
1941
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-hosts
1942
+ '''
1943
+ result = self._values.get("hosts")
1944
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnEnvironment.HostInfoForCreateProperty]]]], result)
1945
+
1946
+ @builtins.property
1947
+ def initial_vlans(
1948
+ self,
1949
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnEnvironment.InitialVlansProperty]]:
1950
+ '''.. epigraph::
1951
+
1952
+ Amazon EVS is in public preview release and is subject to change.
1953
+
1954
+ The initial VLAN subnets for the environment. Amazon EVS VLAN subnets have a minimum CIDR block size of /28 and a maximum size of /24. Amazon EVS VLAN subnet CIDR blocks must not overlap with other subnets in the VPC.
1955
+
1956
+ Required for environment resource creation.
1957
+
1958
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-initialvlans
1959
+ '''
1960
+ result = self._values.get("initial_vlans")
1961
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnEnvironment.InitialVlansProperty]], result)
1962
+
1963
+ @builtins.property
1964
+ def kms_key_id(self) -> typing.Optional[builtins.str]:
1965
+ '''The AWS KMS key ID that AWS Secrets Manager uses to encrypt secrets that are associated with the environment.
1966
+
1967
+ These secrets contain the VCF credentials that are needed to install vCenter Server, NSX, and SDDC Manager.
1968
+
1969
+ By default, Amazon EVS use the AWS Secrets Manager managed key ``aws/secretsmanager`` . You can also specify a customer managed key.
1970
+
1971
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-kmskeyid
1972
+ '''
1973
+ result = self._values.get("kms_key_id")
1974
+ return typing.cast(typing.Optional[builtins.str], result)
1975
+
1976
+ @builtins.property
1977
+ def service_access_security_groups(
1978
+ self,
1979
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnEnvironment.ServiceAccessSecurityGroupsProperty]]:
1980
+ '''The security groups that allow traffic between the Amazon EVS control plane and your VPC for service access.
1981
+
1982
+ If a security group is not specified, Amazon EVS uses the default security group in your account for service access.
1983
+
1984
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-serviceaccesssecuritygroups
1985
+ '''
1986
+ result = self._values.get("service_access_security_groups")
1987
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnEnvironment.ServiceAccessSecurityGroupsProperty]], result)
1988
+
1989
+ @builtins.property
1990
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1991
+ '''Metadata that assists with categorization and organization.
1992
+
1993
+ Each tag consists of a key and an optional value. You define both. Tags don't propagate to any other cluster or AWS resources.
1994
+
1995
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-evs-environment.html#cfn-evs-environment-tags
1996
+ '''
1997
+ result = self._values.get("tags")
1998
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
1999
+
2000
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2001
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2002
+
2003
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2004
+ return not (rhs == self)
2005
+
2006
+ def __repr__(self) -> str:
2007
+ return "CfnEnvironmentProps(%s)" % ", ".join(
2008
+ k + "=" + repr(v) for k, v in self._values.items()
2009
+ )
2010
+
2011
+
2012
+ __all__ = [
2013
+ "CfnEnvironment",
2014
+ "CfnEnvironmentProps",
2015
+ ]
2016
+
2017
+ publication.publish()
2018
+
2019
+ def _typecheckingstub__0fd5abd7fe71e306d7b1cc2c3ef834eb9af874a0b9fed902c6923bbc07b00b63(
2020
+ scope: _constructs_77d1e7e8.Construct,
2021
+ id: builtins.str,
2022
+ *,
2023
+ connectivity_info: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.ConnectivityInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2024
+ license_info: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.LicenseInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2025
+ service_access_subnet_id: builtins.str,
2026
+ site_id: builtins.str,
2027
+ terms_accepted: typing.Union[builtins.bool, _IResolvable_da3f097b],
2028
+ vcf_hostnames: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.VcfHostnamesProperty, typing.Dict[builtins.str, typing.Any]]],
2029
+ vcf_version: builtins.str,
2030
+ vpc_id: builtins.str,
2031
+ environment_name: typing.Optional[builtins.str] = None,
2032
+ hosts: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.HostInfoForCreateProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
2033
+ initial_vlans: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlansProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2034
+ kms_key_id: typing.Optional[builtins.str] = None,
2035
+ service_access_security_groups: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.ServiceAccessSecurityGroupsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2036
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2037
+ ) -> None:
2038
+ """Type checking stubs"""
2039
+ pass
2040
+
2041
+ def _typecheckingstub__97c8e6ce05b681569d057e41cd3b8f77e1403e7a3da8aebf629d5b36513ac407(
2042
+ inspector: _TreeInspector_488e0dd5,
2043
+ ) -> None:
2044
+ """Type checking stubs"""
2045
+ pass
2046
+
2047
+ def _typecheckingstub__5933d5785ec1ac628e3fd45b05b1c5bc9e333cb80c6d102fb738934f3f5c15da(
2048
+ props: typing.Mapping[builtins.str, typing.Any],
2049
+ ) -> None:
2050
+ """Type checking stubs"""
2051
+ pass
2052
+
2053
+ def _typecheckingstub__bf81c76587f8aaaaa50fc18d1384cc1e8ff44f1cd0d764c0355340e0f0839c21(
2054
+ value: typing.Union[_IResolvable_da3f097b, CfnEnvironment.ConnectivityInfoProperty],
2055
+ ) -> None:
2056
+ """Type checking stubs"""
2057
+ pass
2058
+
2059
+ def _typecheckingstub__fb6e498dbb5d87feb34dfe26b3466fa6383016c37a4ea21caecc26f60b5ce901(
2060
+ value: typing.Union[_IResolvable_da3f097b, CfnEnvironment.LicenseInfoProperty],
2061
+ ) -> None:
2062
+ """Type checking stubs"""
2063
+ pass
2064
+
2065
+ def _typecheckingstub__f01a5018beaa28fab7b0d068a7a6fe45dbeee0ab15ecdf25462887288ace66cb(
2066
+ value: builtins.str,
2067
+ ) -> None:
2068
+ """Type checking stubs"""
2069
+ pass
2070
+
2071
+ def _typecheckingstub__0dc69ff9904f782ce993fe0884901782c11a2214109cfd4cf83020946119b99f(
2072
+ value: builtins.str,
2073
+ ) -> None:
2074
+ """Type checking stubs"""
2075
+ pass
2076
+
2077
+ def _typecheckingstub__93808d5eb28c6837a5047d6d1811bd832bd6250809b9c84a0b609bb88989d45e(
2078
+ value: typing.Union[builtins.bool, _IResolvable_da3f097b],
2079
+ ) -> None:
2080
+ """Type checking stubs"""
2081
+ pass
2082
+
2083
+ def _typecheckingstub__98651cf572ae807d1eccd57a45d3ecc81f79063879b068927b5130df235e0b0c(
2084
+ value: typing.Union[_IResolvable_da3f097b, CfnEnvironment.VcfHostnamesProperty],
2085
+ ) -> None:
2086
+ """Type checking stubs"""
2087
+ pass
2088
+
2089
+ def _typecheckingstub__77294c8299a96e3407af4323a38741fc1be8bdc06d14be597ecf158dcf011c14(
2090
+ value: builtins.str,
2091
+ ) -> None:
2092
+ """Type checking stubs"""
2093
+ pass
2094
+
2095
+ def _typecheckingstub__60ce2bd3161be4b835be56a05bdccfd9639c58eea7d09baeab4884c9a906852e(
2096
+ value: builtins.str,
2097
+ ) -> None:
2098
+ """Type checking stubs"""
2099
+ pass
2100
+
2101
+ def _typecheckingstub__16c81b6578fa573cefa89abf7b2fbcfcf6b8db97f8f8b8e2a8c44d8009af03ed(
2102
+ value: typing.Optional[builtins.str],
2103
+ ) -> None:
2104
+ """Type checking stubs"""
2105
+ pass
2106
+
2107
+ def _typecheckingstub__18c17b2a1d9ccb9d1cd534e31c376d097f1d59794abd3093f8587758af40bc2e(
2108
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnEnvironment.HostInfoForCreateProperty]]]],
2109
+ ) -> None:
2110
+ """Type checking stubs"""
2111
+ pass
2112
+
2113
+ def _typecheckingstub__15ccc5cc405553a6a5463668babc67ef1dc4049150ba7dddfc07bee61251bcfe(
2114
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnEnvironment.InitialVlansProperty]],
2115
+ ) -> None:
2116
+ """Type checking stubs"""
2117
+ pass
2118
+
2119
+ def _typecheckingstub__d5b585f35cde6963f33953b58455872fcf621844d2b3fa8f7f85b96542463156(
2120
+ value: typing.Optional[builtins.str],
2121
+ ) -> None:
2122
+ """Type checking stubs"""
2123
+ pass
2124
+
2125
+ def _typecheckingstub__df95c894cd990c7a318fa3e3397c915f2a30df40bd79003673d83a2d1016e1b9(
2126
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnEnvironment.ServiceAccessSecurityGroupsProperty]],
2127
+ ) -> None:
2128
+ """Type checking stubs"""
2129
+ pass
2130
+
2131
+ def _typecheckingstub__c420c54db733392f5b59d4f5a9ded1bfdc781dbe1df45ec2312e16a4c3655efd(
2132
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
2133
+ ) -> None:
2134
+ """Type checking stubs"""
2135
+ pass
2136
+
2137
+ def _typecheckingstub__fab870dfa28349d9079dfaa9f8d7d27975ec4da1aec540075bef6f41926da444(
2138
+ *,
2139
+ result: builtins.str,
2140
+ type: builtins.str,
2141
+ impaired_since: typing.Optional[builtins.str] = None,
2142
+ ) -> None:
2143
+ """Type checking stubs"""
2144
+ pass
2145
+
2146
+ def _typecheckingstub__2cb3d22ab966fb57bf85a281b91db18f25f2e9b843fa76b2414f9c1ca1285629(
2147
+ *,
2148
+ private_route_server_peerings: typing.Sequence[builtins.str],
2149
+ ) -> None:
2150
+ """Type checking stubs"""
2151
+ pass
2152
+
2153
+ def _typecheckingstub__3b92e04ba9146f120cc657bac8562ffe8ba1683c2cda51e8edf7837916efbff4(
2154
+ *,
2155
+ host_name: builtins.str,
2156
+ instance_type: builtins.str,
2157
+ key_name: builtins.str,
2158
+ dedicated_host_id: typing.Optional[builtins.str] = None,
2159
+ placement_group_id: typing.Optional[builtins.str] = None,
2160
+ ) -> None:
2161
+ """Type checking stubs"""
2162
+ pass
2163
+
2164
+ def _typecheckingstub__620167df6fd78af7ecffe1762889e66c6a24ac02786c4e7ca2d324fab050513a(
2165
+ *,
2166
+ cidr: builtins.str,
2167
+ ) -> None:
2168
+ """Type checking stubs"""
2169
+ pass
2170
+
2171
+ def _typecheckingstub__a70b9547ba64740f8b44168dbcdcd80e75a75a1dc2ed733c834ad336fe27001d(
2172
+ *,
2173
+ edge_v_tep: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2174
+ expansion_vlan1: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2175
+ expansion_vlan2: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2176
+ hcx: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2177
+ nsx_up_link: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2178
+ vmk_management: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2179
+ vm_management: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2180
+ v_motion: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2181
+ v_san: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2182
+ v_tep: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlanInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2183
+ hcx_network_acl_id: typing.Optional[builtins.str] = None,
2184
+ is_hcx_public: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2185
+ ) -> None:
2186
+ """Type checking stubs"""
2187
+ pass
2188
+
2189
+ def _typecheckingstub__6bb631c066ce7fa55edfeac94e8c8a5337b818eed4292c5b3aced9cad6d1cad3(
2190
+ *,
2191
+ solution_key: builtins.str,
2192
+ vsan_key: builtins.str,
2193
+ ) -> None:
2194
+ """Type checking stubs"""
2195
+ pass
2196
+
2197
+ def _typecheckingstub__33967b6ef3400afc32ce0af5c9e428f01559afa67ae04decfe8e700e94b87a50(
2198
+ *,
2199
+ secret_arn: typing.Optional[builtins.str] = None,
2200
+ ) -> None:
2201
+ """Type checking stubs"""
2202
+ pass
2203
+
2204
+ def _typecheckingstub__35c3da17a2fce469ae79744d181a61b0265e29008e2b55604fbe06fb54b01d0d(
2205
+ *,
2206
+ security_groups: typing.Optional[typing.Sequence[builtins.str]] = None,
2207
+ ) -> None:
2208
+ """Type checking stubs"""
2209
+ pass
2210
+
2211
+ def _typecheckingstub__1ba5fd1a9e5e7dc84687933a99fd65aef3da8840e139b66bfd40a66914e4a834(
2212
+ *,
2213
+ cloud_builder: builtins.str,
2214
+ nsx: builtins.str,
2215
+ nsx_edge1: builtins.str,
2216
+ nsx_edge2: builtins.str,
2217
+ nsx_manager1: builtins.str,
2218
+ nsx_manager2: builtins.str,
2219
+ nsx_manager3: builtins.str,
2220
+ sddc_manager: builtins.str,
2221
+ v_center: builtins.str,
2222
+ ) -> None:
2223
+ """Type checking stubs"""
2224
+ pass
2225
+
2226
+ def _typecheckingstub__13a1fb4e59a516dd42610d3a93252ed2060e4948f1e22e6ac66a5c31e9d3fb06(
2227
+ *,
2228
+ connectivity_info: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.ConnectivityInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2229
+ license_info: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.LicenseInfoProperty, typing.Dict[builtins.str, typing.Any]]],
2230
+ service_access_subnet_id: builtins.str,
2231
+ site_id: builtins.str,
2232
+ terms_accepted: typing.Union[builtins.bool, _IResolvable_da3f097b],
2233
+ vcf_hostnames: typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.VcfHostnamesProperty, typing.Dict[builtins.str, typing.Any]]],
2234
+ vcf_version: builtins.str,
2235
+ vpc_id: builtins.str,
2236
+ environment_name: typing.Optional[builtins.str] = None,
2237
+ hosts: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.HostInfoForCreateProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
2238
+ initial_vlans: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.InitialVlansProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2239
+ kms_key_id: typing.Optional[builtins.str] = None,
2240
+ service_access_security_groups: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEnvironment.ServiceAccessSecurityGroupsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2241
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2242
+ ) -> None:
2243
+ """Type checking stubs"""
2244
+ pass