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
@@ -70,13 +70,800 @@ from .._jsii import *
70
70
  import constructs as _constructs_77d1e7e8
71
71
  from .. import (
72
72
  CfnResource as _CfnResource_9df397a6,
73
+ CfnTag as _CfnTag_f6864754,
73
74
  IInspectable as _IInspectable_c2943556,
74
75
  IResolvable as _IResolvable_da3f097b,
76
+ ITaggableV2 as _ITaggableV2_4e6798f8,
77
+ TagManager as _TagManager_0a598cb3,
75
78
  TreeInspector as _TreeInspector_488e0dd5,
76
79
  )
80
+ from ..interfaces.aws_s3express import (
81
+ AccessPointReference as _AccessPointReference_15cfd2e8,
82
+ BucketPolicyReference as _BucketPolicyReference_4bc4663a,
83
+ DirectoryBucketReference as _DirectoryBucketReference_a8b58d31,
84
+ IAccessPointRef as _IAccessPointRef_97eca07d,
85
+ IBucketPolicyRef as _IBucketPolicyRef_582d4e05,
86
+ IDirectoryBucketRef as _IDirectoryBucketRef_ce513f97,
87
+ )
88
+
89
+
90
+ @jsii.implements(_IInspectable_c2943556, _IAccessPointRef_97eca07d, _ITaggableV2_4e6798f8)
91
+ class CfnAccessPoint(
92
+ _CfnResource_9df397a6,
93
+ metaclass=jsii.JSIIMeta,
94
+ jsii_type="aws-cdk-lib.aws_s3express.CfnAccessPoint",
95
+ ):
96
+ '''Access points simplify managing data access at scale for shared datasets in Amazon S3 .
97
+
98
+ Access points are unique hostnames you create to enforce distinct permissions and network controls for all requests made through an access point. You can create hundreds of access points per bucket, each with a distinct name and permissions customized for each application. Each access point works in conjunction with the bucket policy that is attached to the underlying bucket. For more information, see `Managing access to shared datasets in directory buckets with access points <https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-directory-buckets.html>`_ .
99
+
100
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html
101
+ :cloudformationResource: AWS::S3Express::AccessPoint
102
+ :exampleMetadata: fixture=_generated
103
+
104
+ Example::
105
+
106
+ # The code below shows an example of how to instantiate this type.
107
+ # The values are placeholders you should change.
108
+ from aws_cdk import aws_s3express as s3express
109
+
110
+ # policy: Any
111
+
112
+ cfn_access_point = s3express.CfnAccessPoint(self, "MyCfnAccessPoint",
113
+ bucket="bucket",
114
+
115
+ # the properties below are optional
116
+ bucket_account_id="bucketAccountId",
117
+ name="name",
118
+ policy=policy,
119
+ public_access_block_configuration=s3express.CfnAccessPoint.PublicAccessBlockConfigurationProperty(
120
+ block_public_acls=False,
121
+ block_public_policy=False,
122
+ ignore_public_acls=False,
123
+ restrict_public_buckets=False
124
+ ),
125
+ scope=s3express.CfnAccessPoint.ScopeProperty(
126
+ permissions=["permissions"],
127
+ prefixes=["prefixes"]
128
+ ),
129
+ tags=[CfnTag(
130
+ key="key",
131
+ value="value"
132
+ )],
133
+ vpc_configuration=s3express.CfnAccessPoint.VpcConfigurationProperty(
134
+ vpc_id="vpcId"
135
+ )
136
+ )
137
+ '''
138
+
139
+ def __init__(
140
+ self,
141
+ scope_: _constructs_77d1e7e8.Construct,
142
+ id: builtins.str,
143
+ *,
144
+ bucket: builtins.str,
145
+ bucket_account_id: typing.Optional[builtins.str] = None,
146
+ name: typing.Optional[builtins.str] = None,
147
+ policy: typing.Any = None,
148
+ public_access_block_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAccessPoint.PublicAccessBlockConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
149
+ scope: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAccessPoint.ScopeProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
150
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
151
+ vpc_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAccessPoint.VpcConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
152
+ ) -> None:
153
+ '''Create a new ``AWS::S3Express::AccessPoint``.
154
+
155
+ :param scope_: Scope in which this resource is defined.
156
+ :param id: Construct identifier for this resource (unique in its scope).
157
+ :param bucket: The name of the bucket that you want to associate the access point with.
158
+ :param bucket_account_id: The AWS account ID that owns the bucket associated with this access point.
159
+ :param name: An access point name consists of a base name you provide, followed by the zoneID ( AWS Local Zone) followed by the prefix ``--xa-s3`` . For example, accesspointname--zoneID--xa-s3.
160
+ :param policy: The access point policy associated with the specified access point.
161
+ :param public_access_block_configuration: Public access is blocked by default to access points for directory buckets.
162
+ :param scope: You can use the access point scope to restrict access to specific prefixes, API operations, or a combination of both. For more information, see `Manage the scope of your access points for directory buckets. <https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-directory-buckets-manage-scope.html>`_
163
+ :param tags: An array of tags that you can apply to access points. Tags are key-value pairs of metadata used to categorize your access points and control access. For more information, see `Using tags for attribute-based access control (ABAC) <https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#using-tags-for-abac>`_ .
164
+ :param vpc_configuration: If you include this field, Amazon S3 restricts access to this access point to requests from the specified virtual private cloud (VPC).
165
+ '''
166
+ if __debug__:
167
+ type_hints = typing.get_type_hints(_typecheckingstub__e5fc3ca5d7f872be531c5db2f2626dbbab094b459144a7d293c09461f39dc391)
168
+ check_type(argname="argument scope_", value=scope_, expected_type=type_hints["scope_"])
169
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
170
+ props = CfnAccessPointProps(
171
+ bucket=bucket,
172
+ bucket_account_id=bucket_account_id,
173
+ name=name,
174
+ policy=policy,
175
+ public_access_block_configuration=public_access_block_configuration,
176
+ scope=scope,
177
+ tags=tags,
178
+ vpc_configuration=vpc_configuration,
179
+ )
180
+
181
+ jsii.create(self.__class__, self, [scope_, id, props])
182
+
183
+ @jsii.member(jsii_name="fromAccessPointArn")
184
+ @builtins.classmethod
185
+ def from_access_point_arn(
186
+ cls,
187
+ scope: _constructs_77d1e7e8.Construct,
188
+ id: builtins.str,
189
+ arn: builtins.str,
190
+ ) -> _IAccessPointRef_97eca07d:
191
+ '''Creates a new IAccessPointRef from an ARN.
192
+
193
+ :param scope: -
194
+ :param id: -
195
+ :param arn: -
196
+ '''
197
+ if __debug__:
198
+ type_hints = typing.get_type_hints(_typecheckingstub__a952d5b44a408b548e0bb050b62b58a18b4842662c9403b19a79b867d01abfbb)
199
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
200
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
201
+ check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
202
+ return typing.cast(_IAccessPointRef_97eca07d, jsii.sinvoke(cls, "fromAccessPointArn", [scope, id, arn]))
203
+
204
+ @jsii.member(jsii_name="fromAccessPointName")
205
+ @builtins.classmethod
206
+ def from_access_point_name(
207
+ cls,
208
+ scope: _constructs_77d1e7e8.Construct,
209
+ id: builtins.str,
210
+ access_point_name: builtins.str,
211
+ ) -> _IAccessPointRef_97eca07d:
212
+ '''Creates a new IAccessPointRef from a accessPointName.
213
+
214
+ :param scope: -
215
+ :param id: -
216
+ :param access_point_name: -
217
+ '''
218
+ if __debug__:
219
+ type_hints = typing.get_type_hints(_typecheckingstub__2a9ee616abb7adff2a3d54a390a11b5528111ef948a36244f51638aa85b20d21)
220
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
221
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
222
+ check_type(argname="argument access_point_name", value=access_point_name, expected_type=type_hints["access_point_name"])
223
+ return typing.cast(_IAccessPointRef_97eca07d, jsii.sinvoke(cls, "fromAccessPointName", [scope, id, access_point_name]))
224
+
225
+ @jsii.member(jsii_name="inspect")
226
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
227
+ '''Examines the CloudFormation resource and discloses attributes.
228
+
229
+ :param inspector: tree inspector to collect and process attributes.
230
+ '''
231
+ if __debug__:
232
+ type_hints = typing.get_type_hints(_typecheckingstub__10d052bad8f115c4b5cf2aaa4e73218258b2e771a48bea5518c0d792accadaba)
233
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
234
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
235
+
236
+ @jsii.member(jsii_name="renderProperties")
237
+ def _render_properties(
238
+ self,
239
+ props: typing.Mapping[builtins.str, typing.Any],
240
+ ) -> typing.Mapping[builtins.str, typing.Any]:
241
+ '''
242
+ :param props: -
243
+ '''
244
+ if __debug__:
245
+ type_hints = typing.get_type_hints(_typecheckingstub__2e76dd6e5c380f8cf390fdf5b0e1babe4ba751ffa40a682c93aebdb03ac5a759)
246
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
247
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
248
+
249
+ @jsii.python.classproperty
250
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
251
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
252
+ '''The CloudFormation resource type name for this resource class.'''
253
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
254
+
255
+ @builtins.property
256
+ @jsii.member(jsii_name="accessPointRef")
257
+ def access_point_ref(self) -> _AccessPointReference_15cfd2e8:
258
+ '''A reference to a AccessPoint resource.'''
259
+ return typing.cast(_AccessPointReference_15cfd2e8, jsii.get(self, "accessPointRef"))
260
+
261
+ @builtins.property
262
+ @jsii.member(jsii_name="attrArn")
263
+ def attr_arn(self) -> builtins.str:
264
+ '''The ARN of the access point.
265
+
266
+ :cloudformationAttribute: Arn
267
+ '''
268
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
269
+
270
+ @builtins.property
271
+ @jsii.member(jsii_name="attrNetworkOrigin")
272
+ def attr_network_origin(self) -> builtins.str:
273
+ '''The network configuration of the access point.
274
+
275
+ :cloudformationAttribute: NetworkOrigin
276
+ '''
277
+ return typing.cast(builtins.str, jsii.get(self, "attrNetworkOrigin"))
278
+
279
+ @builtins.property
280
+ @jsii.member(jsii_name="cdkTagManager")
281
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
282
+ '''Tag Manager which manages the tags for this resource.'''
283
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
284
+
285
+ @builtins.property
286
+ @jsii.member(jsii_name="cfnProperties")
287
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
288
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
289
+
290
+ @builtins.property
291
+ @jsii.member(jsii_name="bucket")
292
+ def bucket(self) -> builtins.str:
293
+ '''The name of the bucket that you want to associate the access point with.'''
294
+ return typing.cast(builtins.str, jsii.get(self, "bucket"))
295
+
296
+ @bucket.setter
297
+ def bucket(self, value: builtins.str) -> None:
298
+ if __debug__:
299
+ type_hints = typing.get_type_hints(_typecheckingstub__e1f9ad27f3884dc957ca655b1b0d301bb0cc041fcb3497da06d2fcb1e73ee5a2)
300
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
301
+ jsii.set(self, "bucket", value) # pyright: ignore[reportArgumentType]
302
+
303
+ @builtins.property
304
+ @jsii.member(jsii_name="bucketAccountId")
305
+ def bucket_account_id(self) -> typing.Optional[builtins.str]:
306
+ '''The AWS account ID that owns the bucket associated with this access point.'''
307
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "bucketAccountId"))
308
+
309
+ @bucket_account_id.setter
310
+ def bucket_account_id(self, value: typing.Optional[builtins.str]) -> None:
311
+ if __debug__:
312
+ type_hints = typing.get_type_hints(_typecheckingstub__05bbf2a5aafbce5a9896abd9ca234cb47f6f4131c53b7226517aee28187499f5)
313
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
314
+ jsii.set(self, "bucketAccountId", value) # pyright: ignore[reportArgumentType]
315
+
316
+ @builtins.property
317
+ @jsii.member(jsii_name="name")
318
+ def name(self) -> typing.Optional[builtins.str]:
319
+ '''An access point name consists of a base name you provide, followed by the zoneID ( AWS Local Zone) followed by the prefix ``--xa-s3`` .'''
320
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "name"))
321
+
322
+ @name.setter
323
+ def name(self, value: typing.Optional[builtins.str]) -> None:
324
+ if __debug__:
325
+ type_hints = typing.get_type_hints(_typecheckingstub__a0faa6f9099f8475e8a679e37d0229c90adb5b32bd05a99c722d02ab6db01577)
326
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
327
+ jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
328
+
329
+ @builtins.property
330
+ @jsii.member(jsii_name="policy")
331
+ def policy(self) -> typing.Any:
332
+ '''The access point policy associated with the specified access point.'''
333
+ return typing.cast(typing.Any, jsii.get(self, "policy"))
334
+
335
+ @policy.setter
336
+ def policy(self, value: typing.Any) -> None:
337
+ if __debug__:
338
+ type_hints = typing.get_type_hints(_typecheckingstub__b6b671117e34b3e667db8b935f30294f0e6c79bf19d6262224f7c031a23ddab9)
339
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
340
+ jsii.set(self, "policy", value) # pyright: ignore[reportArgumentType]
341
+
342
+ @builtins.property
343
+ @jsii.member(jsii_name="publicAccessBlockConfiguration")
344
+ def public_access_block_configuration(
345
+ self,
346
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.PublicAccessBlockConfigurationProperty"]]:
347
+ '''Public access is blocked by default to access points for directory buckets.'''
348
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.PublicAccessBlockConfigurationProperty"]], jsii.get(self, "publicAccessBlockConfiguration"))
349
+
350
+ @public_access_block_configuration.setter
351
+ def public_access_block_configuration(
352
+ self,
353
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.PublicAccessBlockConfigurationProperty"]],
354
+ ) -> None:
355
+ if __debug__:
356
+ type_hints = typing.get_type_hints(_typecheckingstub__fc74f25f5a3136d66174ea811ed4ae44e659d23502d10285f8bc72b9f01fcc79)
357
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
358
+ jsii.set(self, "publicAccessBlockConfiguration", value) # pyright: ignore[reportArgumentType]
359
+
360
+ @builtins.property
361
+ @jsii.member(jsii_name="scope")
362
+ def scope(
363
+ self,
364
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.ScopeProperty"]]:
365
+ '''You can use the access point scope to restrict access to specific prefixes, API operations, or a combination of both.'''
366
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.ScopeProperty"]], jsii.get(self, "scope"))
367
+
368
+ @scope.setter
369
+ def scope(
370
+ self,
371
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.ScopeProperty"]],
372
+ ) -> None:
373
+ if __debug__:
374
+ type_hints = typing.get_type_hints(_typecheckingstub__48d7fd3100a689dec8bdc6613bf9b51376dd53745e5ef8f3e45a997d4050fbd5)
375
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
376
+ jsii.set(self, "scope", value) # pyright: ignore[reportArgumentType]
377
+
378
+ @builtins.property
379
+ @jsii.member(jsii_name="tags")
380
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
381
+ '''An array of tags that you can apply to access points.'''
382
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
383
+
384
+ @tags.setter
385
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
386
+ if __debug__:
387
+ type_hints = typing.get_type_hints(_typecheckingstub__0e608b2906b65b5e91d11512e46e4a81458516822fd076cc4c4cfa631021f147)
388
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
389
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
390
+
391
+ @builtins.property
392
+ @jsii.member(jsii_name="vpcConfiguration")
393
+ def vpc_configuration(
394
+ self,
395
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.VpcConfigurationProperty"]]:
396
+ '''If you include this field, Amazon S3 restricts access to this access point to requests from the specified virtual private cloud (VPC).'''
397
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.VpcConfigurationProperty"]], jsii.get(self, "vpcConfiguration"))
398
+
399
+ @vpc_configuration.setter
400
+ def vpc_configuration(
401
+ self,
402
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnAccessPoint.VpcConfigurationProperty"]],
403
+ ) -> None:
404
+ if __debug__:
405
+ type_hints = typing.get_type_hints(_typecheckingstub__854fbbe66a8f2a9a585ce20da917f5abf17e2ec117ac4321757853590651821a)
406
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
407
+ jsii.set(self, "vpcConfiguration", value) # pyright: ignore[reportArgumentType]
408
+
409
+ @jsii.data_type(
410
+ jsii_type="aws-cdk-lib.aws_s3express.CfnAccessPoint.PublicAccessBlockConfigurationProperty",
411
+ jsii_struct_bases=[],
412
+ name_mapping={
413
+ "block_public_acls": "blockPublicAcls",
414
+ "block_public_policy": "blockPublicPolicy",
415
+ "ignore_public_acls": "ignorePublicAcls",
416
+ "restrict_public_buckets": "restrictPublicBuckets",
417
+ },
418
+ )
419
+ class PublicAccessBlockConfigurationProperty:
420
+ def __init__(
421
+ self,
422
+ *,
423
+ block_public_acls: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
424
+ block_public_policy: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
425
+ ignore_public_acls: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
426
+ restrict_public_buckets: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
427
+ ) -> None:
428
+ '''Public access is blocked by default to access points for directory buckets.
429
+
430
+ :param block_public_acls: Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to ``TRUE`` causes the following behavior: - PUT Bucket ACL and PUT Object ACL calls fail if the specified ACL is public. - PUT Object calls fail if the request includes a public ACL. - PUT Bucket calls fail if the request includes a public ACL. Enabling this setting doesn't affect existing policies or ACLs.
431
+ :param block_public_policy: Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to ``TRUE`` causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access. Enabling this setting doesn't affect existing bucket policies.
432
+ :param ignore_public_acls: Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to ``TRUE`` causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket. Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.
433
+ :param restrict_public_buckets: Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to ``TRUE`` restricts access to this bucket to only AWS service principals and authorized users within this account if the bucket has a public policy. Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.
434
+
435
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html
436
+ :exampleMetadata: fixture=_generated
437
+
438
+ Example::
439
+
440
+ # The code below shows an example of how to instantiate this type.
441
+ # The values are placeholders you should change.
442
+ from aws_cdk import aws_s3express as s3express
443
+
444
+ public_access_block_configuration_property = s3express.CfnAccessPoint.PublicAccessBlockConfigurationProperty(
445
+ block_public_acls=False,
446
+ block_public_policy=False,
447
+ ignore_public_acls=False,
448
+ restrict_public_buckets=False
449
+ )
450
+ '''
451
+ if __debug__:
452
+ type_hints = typing.get_type_hints(_typecheckingstub__924486f21cdee22c013a572ef0c9c5dc92b9e7f4938fda2e969703ead9ca77c3)
453
+ check_type(argname="argument block_public_acls", value=block_public_acls, expected_type=type_hints["block_public_acls"])
454
+ check_type(argname="argument block_public_policy", value=block_public_policy, expected_type=type_hints["block_public_policy"])
455
+ check_type(argname="argument ignore_public_acls", value=ignore_public_acls, expected_type=type_hints["ignore_public_acls"])
456
+ check_type(argname="argument restrict_public_buckets", value=restrict_public_buckets, expected_type=type_hints["restrict_public_buckets"])
457
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
458
+ if block_public_acls is not None:
459
+ self._values["block_public_acls"] = block_public_acls
460
+ if block_public_policy is not None:
461
+ self._values["block_public_policy"] = block_public_policy
462
+ if ignore_public_acls is not None:
463
+ self._values["ignore_public_acls"] = ignore_public_acls
464
+ if restrict_public_buckets is not None:
465
+ self._values["restrict_public_buckets"] = restrict_public_buckets
466
+
467
+ @builtins.property
468
+ def block_public_acls(
469
+ self,
470
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
471
+ '''Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket.
472
+
473
+ Setting this element to ``TRUE`` causes the following behavior:
474
+
475
+ - PUT Bucket ACL and PUT Object ACL calls fail if the specified ACL is public.
476
+ - PUT Object calls fail if the request includes a public ACL.
477
+ - PUT Bucket calls fail if the request includes a public ACL.
478
+
479
+ Enabling this setting doesn't affect existing policies or ACLs.
480
+
481
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html#cfn-s3express-accesspoint-publicaccessblockconfiguration-blockpublicacls
482
+ '''
483
+ result = self._values.get("block_public_acls")
484
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
485
+
486
+ @builtins.property
487
+ def block_public_policy(
488
+ self,
489
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
490
+ '''Specifies whether Amazon S3 should block public bucket policies for this bucket.
491
+
492
+ Setting this element to ``TRUE`` causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.
493
+
494
+ Enabling this setting doesn't affect existing bucket policies.
495
+
496
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html#cfn-s3express-accesspoint-publicaccessblockconfiguration-blockpublicpolicy
497
+ '''
498
+ result = self._values.get("block_public_policy")
499
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
500
+
501
+ @builtins.property
502
+ def ignore_public_acls(
503
+ self,
504
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
505
+ '''Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket.
506
+
507
+ Setting this element to ``TRUE`` causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.
508
+
509
+ Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.
510
+
511
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html#cfn-s3express-accesspoint-publicaccessblockconfiguration-ignorepublicacls
512
+ '''
513
+ result = self._values.get("ignore_public_acls")
514
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
515
+
516
+ @builtins.property
517
+ def restrict_public_buckets(
518
+ self,
519
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
520
+ '''Specifies whether Amazon S3 should restrict public bucket policies for this bucket.
521
+
522
+ Setting this element to ``TRUE`` restricts access to this bucket to only AWS service principals and authorized users within this account if the bucket has a public policy.
523
+
524
+ Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.
525
+
526
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-publicaccessblockconfiguration.html#cfn-s3express-accesspoint-publicaccessblockconfiguration-restrictpublicbuckets
527
+ '''
528
+ result = self._values.get("restrict_public_buckets")
529
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
530
+
531
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
532
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
533
+
534
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
535
+ return not (rhs == self)
536
+
537
+ def __repr__(self) -> str:
538
+ return "PublicAccessBlockConfigurationProperty(%s)" % ", ".join(
539
+ k + "=" + repr(v) for k, v in self._values.items()
540
+ )
541
+
542
+ @jsii.data_type(
543
+ jsii_type="aws-cdk-lib.aws_s3express.CfnAccessPoint.ScopeProperty",
544
+ jsii_struct_bases=[],
545
+ name_mapping={"permissions": "permissions", "prefixes": "prefixes"},
546
+ )
547
+ class ScopeProperty:
548
+ def __init__(
549
+ self,
550
+ *,
551
+ permissions: typing.Optional[typing.Sequence[builtins.str]] = None,
552
+ prefixes: typing.Optional[typing.Sequence[builtins.str]] = None,
553
+ ) -> None:
554
+ '''You can use the access point scope to restrict access to specific prefixes, API operations, or a combination of both.
555
+
556
+ For more information, see `Manage the scope of your access points for directory buckets. <https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-directory-buckets-manage-scope.html>`_
557
+
558
+ :param permissions: You can include one or more API operations as permissions.
559
+ :param prefixes: You can specify any amount of prefixes, but the total length of characters of all prefixes must be less than 256 bytes in size.
560
+
561
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-scope.html
562
+ :exampleMetadata: fixture=_generated
563
+
564
+ Example::
565
+
566
+ # The code below shows an example of how to instantiate this type.
567
+ # The values are placeholders you should change.
568
+ from aws_cdk import aws_s3express as s3express
569
+
570
+ scope_property = s3express.CfnAccessPoint.ScopeProperty(
571
+ permissions=["permissions"],
572
+ prefixes=["prefixes"]
573
+ )
574
+ '''
575
+ if __debug__:
576
+ type_hints = typing.get_type_hints(_typecheckingstub__72899149f7debb2e00ebe596dd77a23a5399ad56a7caca45e5e81d8f22b2f44a)
577
+ check_type(argname="argument permissions", value=permissions, expected_type=type_hints["permissions"])
578
+ check_type(argname="argument prefixes", value=prefixes, expected_type=type_hints["prefixes"])
579
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
580
+ if permissions is not None:
581
+ self._values["permissions"] = permissions
582
+ if prefixes is not None:
583
+ self._values["prefixes"] = prefixes
584
+
585
+ @builtins.property
586
+ def permissions(self) -> typing.Optional[typing.List[builtins.str]]:
587
+ '''You can include one or more API operations as permissions.
588
+
589
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-scope.html#cfn-s3express-accesspoint-scope-permissions
590
+ '''
591
+ result = self._values.get("permissions")
592
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
593
+
594
+ @builtins.property
595
+ def prefixes(self) -> typing.Optional[typing.List[builtins.str]]:
596
+ '''You can specify any amount of prefixes, but the total length of characters of all prefixes must be less than 256 bytes in size.
597
+
598
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-scope.html#cfn-s3express-accesspoint-scope-prefixes
599
+ '''
600
+ result = self._values.get("prefixes")
601
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
602
+
603
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
604
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
605
+
606
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
607
+ return not (rhs == self)
608
+
609
+ def __repr__(self) -> str:
610
+ return "ScopeProperty(%s)" % ", ".join(
611
+ k + "=" + repr(v) for k, v in self._values.items()
612
+ )
613
+
614
+ @jsii.data_type(
615
+ jsii_type="aws-cdk-lib.aws_s3express.CfnAccessPoint.VpcConfigurationProperty",
616
+ jsii_struct_bases=[],
617
+ name_mapping={"vpc_id": "vpcId"},
618
+ )
619
+ class VpcConfigurationProperty:
620
+ def __init__(self, *, vpc_id: typing.Optional[builtins.str] = None) -> None:
621
+ '''The Virtual Private Cloud (VPC) configuration for a bucket access point.
622
+
623
+ :param vpc_id: If this field is specified, this access point will only allow connections from the specified VPC ID.
624
+
625
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-vpcconfiguration.html
626
+ :exampleMetadata: fixture=_generated
627
+
628
+ Example::
629
+
630
+ # The code below shows an example of how to instantiate this type.
631
+ # The values are placeholders you should change.
632
+ from aws_cdk import aws_s3express as s3express
633
+
634
+ vpc_configuration_property = s3express.CfnAccessPoint.VpcConfigurationProperty(
635
+ vpc_id="vpcId"
636
+ )
637
+ '''
638
+ if __debug__:
639
+ type_hints = typing.get_type_hints(_typecheckingstub__19e3009de93f19fb706fa644304d8806cbdc834cc18dec326b5586987113cce6)
640
+ check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
641
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
642
+ if vpc_id is not None:
643
+ self._values["vpc_id"] = vpc_id
644
+
645
+ @builtins.property
646
+ def vpc_id(self) -> typing.Optional[builtins.str]:
647
+ '''If this field is specified, this access point will only allow connections from the specified VPC ID.
648
+
649
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3express-accesspoint-vpcconfiguration.html#cfn-s3express-accesspoint-vpcconfiguration-vpcid
650
+ '''
651
+ result = self._values.get("vpc_id")
652
+ return typing.cast(typing.Optional[builtins.str], result)
653
+
654
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
655
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
656
+
657
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
658
+ return not (rhs == self)
659
+
660
+ def __repr__(self) -> str:
661
+ return "VpcConfigurationProperty(%s)" % ", ".join(
662
+ k + "=" + repr(v) for k, v in self._values.items()
663
+ )
664
+
665
+
666
+ @jsii.data_type(
667
+ jsii_type="aws-cdk-lib.aws_s3express.CfnAccessPointProps",
668
+ jsii_struct_bases=[],
669
+ name_mapping={
670
+ "bucket": "bucket",
671
+ "bucket_account_id": "bucketAccountId",
672
+ "name": "name",
673
+ "policy": "policy",
674
+ "public_access_block_configuration": "publicAccessBlockConfiguration",
675
+ "scope": "scope",
676
+ "tags": "tags",
677
+ "vpc_configuration": "vpcConfiguration",
678
+ },
679
+ )
680
+ class CfnAccessPointProps:
681
+ def __init__(
682
+ self,
683
+ *,
684
+ bucket: builtins.str,
685
+ bucket_account_id: typing.Optional[builtins.str] = None,
686
+ name: typing.Optional[builtins.str] = None,
687
+ policy: typing.Any = None,
688
+ public_access_block_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.PublicAccessBlockConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
689
+ scope: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.ScopeProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
690
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
691
+ vpc_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.VpcConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
692
+ ) -> None:
693
+ '''Properties for defining a ``CfnAccessPoint``.
694
+
695
+ :param bucket: The name of the bucket that you want to associate the access point with.
696
+ :param bucket_account_id: The AWS account ID that owns the bucket associated with this access point.
697
+ :param name: An access point name consists of a base name you provide, followed by the zoneID ( AWS Local Zone) followed by the prefix ``--xa-s3`` . For example, accesspointname--zoneID--xa-s3.
698
+ :param policy: The access point policy associated with the specified access point.
699
+ :param public_access_block_configuration: Public access is blocked by default to access points for directory buckets.
700
+ :param scope: You can use the access point scope to restrict access to specific prefixes, API operations, or a combination of both. For more information, see `Manage the scope of your access points for directory buckets. <https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-directory-buckets-manage-scope.html>`_
701
+ :param tags: An array of tags that you can apply to access points. Tags are key-value pairs of metadata used to categorize your access points and control access. For more information, see `Using tags for attribute-based access control (ABAC) <https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#using-tags-for-abac>`_ .
702
+ :param vpc_configuration: If you include this field, Amazon S3 restricts access to this access point to requests from the specified virtual private cloud (VPC).
703
+
704
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html
705
+ :exampleMetadata: fixture=_generated
706
+
707
+ Example::
708
+
709
+ # The code below shows an example of how to instantiate this type.
710
+ # The values are placeholders you should change.
711
+ from aws_cdk import aws_s3express as s3express
712
+
713
+ # policy: Any
714
+
715
+ cfn_access_point_props = s3express.CfnAccessPointProps(
716
+ bucket="bucket",
717
+
718
+ # the properties below are optional
719
+ bucket_account_id="bucketAccountId",
720
+ name="name",
721
+ policy=policy,
722
+ public_access_block_configuration=s3express.CfnAccessPoint.PublicAccessBlockConfigurationProperty(
723
+ block_public_acls=False,
724
+ block_public_policy=False,
725
+ ignore_public_acls=False,
726
+ restrict_public_buckets=False
727
+ ),
728
+ scope=s3express.CfnAccessPoint.ScopeProperty(
729
+ permissions=["permissions"],
730
+ prefixes=["prefixes"]
731
+ ),
732
+ tags=[CfnTag(
733
+ key="key",
734
+ value="value"
735
+ )],
736
+ vpc_configuration=s3express.CfnAccessPoint.VpcConfigurationProperty(
737
+ vpc_id="vpcId"
738
+ )
739
+ )
740
+ '''
741
+ if __debug__:
742
+ type_hints = typing.get_type_hints(_typecheckingstub__2ec03a7d5826304628784add6c3daf7da7d66e0c0d94fd92f203f6842dda50d0)
743
+ check_type(argname="argument bucket", value=bucket, expected_type=type_hints["bucket"])
744
+ check_type(argname="argument bucket_account_id", value=bucket_account_id, expected_type=type_hints["bucket_account_id"])
745
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
746
+ check_type(argname="argument policy", value=policy, expected_type=type_hints["policy"])
747
+ check_type(argname="argument public_access_block_configuration", value=public_access_block_configuration, expected_type=type_hints["public_access_block_configuration"])
748
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
749
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
750
+ check_type(argname="argument vpc_configuration", value=vpc_configuration, expected_type=type_hints["vpc_configuration"])
751
+ self._values: typing.Dict[builtins.str, typing.Any] = {
752
+ "bucket": bucket,
753
+ }
754
+ if bucket_account_id is not None:
755
+ self._values["bucket_account_id"] = bucket_account_id
756
+ if name is not None:
757
+ self._values["name"] = name
758
+ if policy is not None:
759
+ self._values["policy"] = policy
760
+ if public_access_block_configuration is not None:
761
+ self._values["public_access_block_configuration"] = public_access_block_configuration
762
+ if scope is not None:
763
+ self._values["scope"] = scope
764
+ if tags is not None:
765
+ self._values["tags"] = tags
766
+ if vpc_configuration is not None:
767
+ self._values["vpc_configuration"] = vpc_configuration
768
+
769
+ @builtins.property
770
+ def bucket(self) -> builtins.str:
771
+ '''The name of the bucket that you want to associate the access point with.
772
+
773
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html#cfn-s3express-accesspoint-bucket
774
+ '''
775
+ result = self._values.get("bucket")
776
+ assert result is not None, "Required property 'bucket' is missing"
777
+ return typing.cast(builtins.str, result)
778
+
779
+ @builtins.property
780
+ def bucket_account_id(self) -> typing.Optional[builtins.str]:
781
+ '''The AWS account ID that owns the bucket associated with this access point.
782
+
783
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html#cfn-s3express-accesspoint-bucketaccountid
784
+ '''
785
+ result = self._values.get("bucket_account_id")
786
+ return typing.cast(typing.Optional[builtins.str], result)
787
+
788
+ @builtins.property
789
+ def name(self) -> typing.Optional[builtins.str]:
790
+ '''An access point name consists of a base name you provide, followed by the zoneID ( AWS Local Zone) followed by the prefix ``--xa-s3`` .
791
+
792
+ For example, accesspointname--zoneID--xa-s3.
793
+
794
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html#cfn-s3express-accesspoint-name
795
+ '''
796
+ result = self._values.get("name")
797
+ return typing.cast(typing.Optional[builtins.str], result)
798
+
799
+ @builtins.property
800
+ def policy(self) -> typing.Any:
801
+ '''The access point policy associated with the specified access point.
802
+
803
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html#cfn-s3express-accesspoint-policy
804
+ '''
805
+ result = self._values.get("policy")
806
+ return typing.cast(typing.Any, result)
807
+
808
+ @builtins.property
809
+ def public_access_block_configuration(
810
+ self,
811
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.PublicAccessBlockConfigurationProperty]]:
812
+ '''Public access is blocked by default to access points for directory buckets.
813
+
814
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html#cfn-s3express-accesspoint-publicaccessblockconfiguration
815
+ '''
816
+ result = self._values.get("public_access_block_configuration")
817
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.PublicAccessBlockConfigurationProperty]], result)
818
+
819
+ @builtins.property
820
+ def scope(
821
+ self,
822
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.ScopeProperty]]:
823
+ '''You can use the access point scope to restrict access to specific prefixes, API operations, or a combination of both.
824
+
825
+ For more information, see `Manage the scope of your access points for directory buckets. <https://docs.aws.amazon.com/AmazonS3/latest/userguide/access-points-directory-buckets-manage-scope.html>`_
826
+
827
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html#cfn-s3express-accesspoint-scope
828
+ '''
829
+ result = self._values.get("scope")
830
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.ScopeProperty]], result)
831
+
832
+ @builtins.property
833
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
834
+ '''An array of tags that you can apply to access points.
835
+
836
+ Tags are key-value pairs of metadata used to categorize your access points and control access. For more information, see `Using tags for attribute-based access control (ABAC) <https://docs.aws.amazon.com/AmazonS3/latest/userguide/tagging.html#using-tags-for-abac>`_ .
837
+
838
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html#cfn-s3express-accesspoint-tags
839
+ '''
840
+ result = self._values.get("tags")
841
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
842
+
843
+ @builtins.property
844
+ def vpc_configuration(
845
+ self,
846
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.VpcConfigurationProperty]]:
847
+ '''If you include this field, Amazon S3 restricts access to this access point to requests from the specified virtual private cloud (VPC).
848
+
849
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-accesspoint.html#cfn-s3express-accesspoint-vpcconfiguration
850
+ '''
851
+ result = self._values.get("vpc_configuration")
852
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.VpcConfigurationProperty]], result)
853
+
854
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
855
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
856
+
857
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
858
+ return not (rhs == self)
859
+
860
+ def __repr__(self) -> str:
861
+ return "CfnAccessPointProps(%s)" % ", ".join(
862
+ k + "=" + repr(v) for k, v in self._values.items()
863
+ )
77
864
 
78
865
 
79
- @jsii.implements(_IInspectable_c2943556)
866
+ @jsii.implements(_IInspectable_c2943556, _IBucketPolicyRef_582d4e05)
80
867
  class CfnBucketPolicy(
81
868
  _CfnResource_9df397a6,
82
869
  metaclass=jsii.JSIIMeta,
@@ -142,7 +929,8 @@ class CfnBucketPolicy(
142
929
  bucket: builtins.str,
143
930
  policy_document: typing.Any,
144
931
  ) -> None:
145
- '''
932
+ '''Create a new ``AWS::S3Express::BucketPolicy``.
933
+
146
934
  :param scope: Scope in which this resource is defined.
147
935
  :param id: Construct identifier for this resource (unique in its scope).
148
936
  :param bucket: The name of the S3 directory bucket to which the policy applies.
@@ -186,6 +974,12 @@ class CfnBucketPolicy(
186
974
  '''The CloudFormation resource type name for this resource class.'''
187
975
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
188
976
 
977
+ @builtins.property
978
+ @jsii.member(jsii_name="bucketPolicyRef")
979
+ def bucket_policy_ref(self) -> _BucketPolicyReference_4bc4663a:
980
+ '''A reference to a BucketPolicy resource.'''
981
+ return typing.cast(_BucketPolicyReference_4bc4663a, jsii.get(self, "bucketPolicyRef"))
982
+
189
983
  @builtins.property
190
984
  @jsii.member(jsii_name="cfnProperties")
191
985
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
@@ -289,7 +1083,7 @@ class CfnBucketPolicyProps:
289
1083
  )
290
1084
 
291
1085
 
292
- @jsii.implements(_IInspectable_c2943556)
1086
+ @jsii.implements(_IInspectable_c2943556, _IDirectoryBucketRef_ce513f97, _ITaggableV2_4e6798f8)
293
1087
  class CfnDirectoryBucket(
294
1088
  _CfnResource_9df397a6,
295
1089
  metaclass=jsii.JSIIMeta,
@@ -369,7 +1163,11 @@ class CfnDirectoryBucket(
369
1163
  object_size_less_than="objectSizeLessThan",
370
1164
  prefix="prefix"
371
1165
  )]
372
- )
1166
+ ),
1167
+ tags=[CfnTag(
1168
+ key="key",
1169
+ value="value"
1170
+ )]
373
1171
  )
374
1172
  '''
375
1173
 
@@ -383,8 +1181,10 @@ class CfnDirectoryBucket(
383
1181
  bucket_encryption: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDirectoryBucket.BucketEncryptionProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
384
1182
  bucket_name: typing.Optional[builtins.str] = None,
385
1183
  lifecycle_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDirectoryBucket.LifecycleConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1184
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
386
1185
  ) -> None:
387
- '''
1186
+ '''Create a new ``AWS::S3Express::DirectoryBucket``.
1187
+
388
1188
  :param scope: Scope in which this resource is defined.
389
1189
  :param id: Construct identifier for this resource (unique in its scope).
390
1190
  :param data_redundancy: The number of Zone (Availability Zone or Local Zone) that's used for redundancy for the bucket.
@@ -392,6 +1192,7 @@ class CfnDirectoryBucket(
392
1192
  :param bucket_encryption: Specifies default encryption for a bucket using server-side encryption with Amazon S3 managed keys (SSE-S3) or AWS KMS keys (SSE-KMS). For information about default encryption for directory buckets, see `Setting and monitoring default encryption for directory buckets <https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-bucket-encryption.html>`_ in the *Amazon S3 User Guide* .
393
1193
  :param bucket_name: A name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Zone (Availability Zone or Local Zone). The bucket name must also follow the format ``*bucket_base_name* -- *zone_id* --x-s3`` (for example, ``*bucket_base_name* -- *usw2-az1* --x-s3`` ). If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the bucket name. For information about bucket naming restrictions, see `Directory bucket naming rules <https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html>`_ in the *Amazon S3 User Guide* . .. epigraph:: If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you need to replace the resource, specify a new name.
394
1194
  :param lifecycle_configuration: Container for lifecycle rules. You can add as many as 1000 rules. For more information see, `Creating and managing a lifecycle configuration for directory buckets <https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-objects-lifecycle.html>`_ in the *Amazon S3 User Guide* .
1195
+ :param tags: An array of tags that you can apply to the S3 directory bucket. Tags are key-value pairs of metadata used to categorize and organize your buckets, track costs, and control access. For more information, see `Using tags with directory buckets <https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html>`_ .
395
1196
  '''
396
1197
  if __debug__:
397
1198
  type_hints = typing.get_type_hints(_typecheckingstub__ea5a1e5897b0467fb93393ad6ea2dbcd3916f27713079e8bef3badf71ce2bb20)
@@ -403,10 +1204,53 @@ class CfnDirectoryBucket(
403
1204
  bucket_encryption=bucket_encryption,
404
1205
  bucket_name=bucket_name,
405
1206
  lifecycle_configuration=lifecycle_configuration,
1207
+ tags=tags,
406
1208
  )
407
1209
 
408
1210
  jsii.create(self.__class__, self, [scope, id, props])
409
1211
 
1212
+ @jsii.member(jsii_name="fromBucketName")
1213
+ @builtins.classmethod
1214
+ def from_bucket_name(
1215
+ cls,
1216
+ scope: _constructs_77d1e7e8.Construct,
1217
+ id: builtins.str,
1218
+ bucket_name: builtins.str,
1219
+ ) -> _IDirectoryBucketRef_ce513f97:
1220
+ '''Creates a new IDirectoryBucketRef from a bucketName.
1221
+
1222
+ :param scope: -
1223
+ :param id: -
1224
+ :param bucket_name: -
1225
+ '''
1226
+ if __debug__:
1227
+ type_hints = typing.get_type_hints(_typecheckingstub__ee18bc6af427a08e8172d5b4ff53cd612c8953f566c656085b2ee874f4f2f4d3)
1228
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
1229
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
1230
+ check_type(argname="argument bucket_name", value=bucket_name, expected_type=type_hints["bucket_name"])
1231
+ return typing.cast(_IDirectoryBucketRef_ce513f97, jsii.sinvoke(cls, "fromBucketName", [scope, id, bucket_name]))
1232
+
1233
+ @jsii.member(jsii_name="fromDirectoryBucketArn")
1234
+ @builtins.classmethod
1235
+ def from_directory_bucket_arn(
1236
+ cls,
1237
+ scope: _constructs_77d1e7e8.Construct,
1238
+ id: builtins.str,
1239
+ arn: builtins.str,
1240
+ ) -> _IDirectoryBucketRef_ce513f97:
1241
+ '''Creates a new IDirectoryBucketRef from an ARN.
1242
+
1243
+ :param scope: -
1244
+ :param id: -
1245
+ :param arn: -
1246
+ '''
1247
+ if __debug__:
1248
+ type_hints = typing.get_type_hints(_typecheckingstub__75b9ac606a81f7cc58b901653e18aa8fdfc60b403968ba4f37038ce668b4b328)
1249
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
1250
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
1251
+ check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
1252
+ return typing.cast(_IDirectoryBucketRef_ce513f97, jsii.sinvoke(cls, "fromDirectoryBucketArn", [scope, id, arn]))
1253
+
410
1254
  @jsii.member(jsii_name="inspect")
411
1255
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
412
1256
  '''Examines the CloudFormation resource and discloses attributes.
@@ -462,11 +1306,23 @@ class CfnDirectoryBucket(
462
1306
  '''
463
1307
  return typing.cast(builtins.str, jsii.get(self, "attrAvailabilityZoneName"))
464
1308
 
1309
+ @builtins.property
1310
+ @jsii.member(jsii_name="cdkTagManager")
1311
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
1312
+ '''Tag Manager which manages the tags for this resource.'''
1313
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
1314
+
465
1315
  @builtins.property
466
1316
  @jsii.member(jsii_name="cfnProperties")
467
1317
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
468
1318
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
469
1319
 
1320
+ @builtins.property
1321
+ @jsii.member(jsii_name="directoryBucketRef")
1322
+ def directory_bucket_ref(self) -> _DirectoryBucketReference_a8b58d31:
1323
+ '''A reference to a DirectoryBucket resource.'''
1324
+ return typing.cast(_DirectoryBucketReference_a8b58d31, jsii.get(self, "directoryBucketRef"))
1325
+
470
1326
  @builtins.property
471
1327
  @jsii.member(jsii_name="dataRedundancy")
472
1328
  def data_redundancy(self) -> builtins.str:
@@ -545,6 +1401,19 @@ class CfnDirectoryBucket(
545
1401
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
546
1402
  jsii.set(self, "lifecycleConfiguration", value) # pyright: ignore[reportArgumentType]
547
1403
 
1404
+ @builtins.property
1405
+ @jsii.member(jsii_name="tags")
1406
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1407
+ '''An array of tags that you can apply to the S3 directory bucket.'''
1408
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
1409
+
1410
+ @tags.setter
1411
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
1412
+ if __debug__:
1413
+ type_hints = typing.get_type_hints(_typecheckingstub__33beef481039e735a6eece9cb8670801f4ba6324284d9ed7c5f1e794009634d3)
1414
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1415
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
1416
+
548
1417
  @jsii.data_type(
549
1418
  jsii_type="aws-cdk-lib.aws_s3express.CfnDirectoryBucket.AbortIncompleteMultipartUploadProperty",
550
1419
  jsii_struct_bases=[],
@@ -1113,6 +1982,7 @@ class CfnDirectoryBucket(
1113
1982
  "bucket_encryption": "bucketEncryption",
1114
1983
  "bucket_name": "bucketName",
1115
1984
  "lifecycle_configuration": "lifecycleConfiguration",
1985
+ "tags": "tags",
1116
1986
  },
1117
1987
  )
1118
1988
  class CfnDirectoryBucketProps:
@@ -1124,6 +1994,7 @@ class CfnDirectoryBucketProps:
1124
1994
  bucket_encryption: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDirectoryBucket.BucketEncryptionProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1125
1995
  bucket_name: typing.Optional[builtins.str] = None,
1126
1996
  lifecycle_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDirectoryBucket.LifecycleConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1997
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1127
1998
  ) -> None:
1128
1999
  '''Properties for defining a ``CfnDirectoryBucket``.
1129
2000
 
@@ -1132,6 +2003,7 @@ class CfnDirectoryBucketProps:
1132
2003
  :param bucket_encryption: Specifies default encryption for a bucket using server-side encryption with Amazon S3 managed keys (SSE-S3) or AWS KMS keys (SSE-KMS). For information about default encryption for directory buckets, see `Setting and monitoring default encryption for directory buckets <https://docs.aws.amazon.com/AmazonS3/latest/userguide/s3-express-bucket-encryption.html>`_ in the *Amazon S3 User Guide* .
1133
2004
  :param bucket_name: A name for the bucket. The bucket name must contain only lowercase letters, numbers, and hyphens (-). A directory bucket name must be unique in the chosen Zone (Availability Zone or Local Zone). The bucket name must also follow the format ``*bucket_base_name* -- *zone_id* --x-s3`` (for example, ``*bucket_base_name* -- *usw2-az1* --x-s3`` ). If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID for the bucket name. For information about bucket naming restrictions, see `Directory bucket naming rules <https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-bucket-naming-rules.html>`_ in the *Amazon S3 User Guide* . .. epigraph:: If you specify a name, you can't perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you need to replace the resource, specify a new name.
1134
2005
  :param lifecycle_configuration: Container for lifecycle rules. You can add as many as 1000 rules. For more information see, `Creating and managing a lifecycle configuration for directory buckets <https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-objects-lifecycle.html>`_ in the *Amazon S3 User Guide* .
2006
+ :param tags: An array of tags that you can apply to the S3 directory bucket. Tags are key-value pairs of metadata used to categorize and organize your buckets, track costs, and control access. For more information, see `Using tags with directory buckets <https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html>`_ .
1135
2007
 
1136
2008
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-directorybucket.html
1137
2009
  :exampleMetadata: fixture=_generated
@@ -1173,7 +2045,11 @@ class CfnDirectoryBucketProps:
1173
2045
  object_size_less_than="objectSizeLessThan",
1174
2046
  prefix="prefix"
1175
2047
  )]
1176
- )
2048
+ ),
2049
+ tags=[CfnTag(
2050
+ key="key",
2051
+ value="value"
2052
+ )]
1177
2053
  )
1178
2054
  '''
1179
2055
  if __debug__:
@@ -1183,6 +2059,7 @@ class CfnDirectoryBucketProps:
1183
2059
  check_type(argname="argument bucket_encryption", value=bucket_encryption, expected_type=type_hints["bucket_encryption"])
1184
2060
  check_type(argname="argument bucket_name", value=bucket_name, expected_type=type_hints["bucket_name"])
1185
2061
  check_type(argname="argument lifecycle_configuration", value=lifecycle_configuration, expected_type=type_hints["lifecycle_configuration"])
2062
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
1186
2063
  self._values: typing.Dict[builtins.str, typing.Any] = {
1187
2064
  "data_redundancy": data_redundancy,
1188
2065
  "location_name": location_name,
@@ -1193,6 +2070,8 @@ class CfnDirectoryBucketProps:
1193
2070
  self._values["bucket_name"] = bucket_name
1194
2071
  if lifecycle_configuration is not None:
1195
2072
  self._values["lifecycle_configuration"] = lifecycle_configuration
2073
+ if tags is not None:
2074
+ self._values["tags"] = tags
1196
2075
 
1197
2076
  @builtins.property
1198
2077
  def data_redundancy(self) -> builtins.str:
@@ -1256,6 +2135,17 @@ class CfnDirectoryBucketProps:
1256
2135
  result = self._values.get("lifecycle_configuration")
1257
2136
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnDirectoryBucket.LifecycleConfigurationProperty]], result)
1258
2137
 
2138
+ @builtins.property
2139
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
2140
+ '''An array of tags that you can apply to the S3 directory bucket.
2141
+
2142
+ Tags are key-value pairs of metadata used to categorize and organize your buckets, track costs, and control access. For more information, see `Using tags with directory buckets <https://docs.aws.amazon.com/AmazonS3/latest/userguide/directory-buckets-tagging.html>`_ .
2143
+
2144
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3express-directorybucket.html#cfn-s3express-directorybucket-tags
2145
+ '''
2146
+ result = self._values.get("tags")
2147
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
2148
+
1259
2149
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
1260
2150
  return isinstance(rhs, self.__class__) and rhs._values == self._values
1261
2151
 
@@ -1269,6 +2159,8 @@ class CfnDirectoryBucketProps:
1269
2159
 
1270
2160
 
1271
2161
  __all__ = [
2162
+ "CfnAccessPoint",
2163
+ "CfnAccessPointProps",
1272
2164
  "CfnBucketPolicy",
1273
2165
  "CfnBucketPolicyProps",
1274
2166
  "CfnDirectoryBucket",
@@ -1277,6 +2169,137 @@ __all__ = [
1277
2169
 
1278
2170
  publication.publish()
1279
2171
 
2172
+ def _typecheckingstub__e5fc3ca5d7f872be531c5db2f2626dbbab094b459144a7d293c09461f39dc391(
2173
+ scope_: _constructs_77d1e7e8.Construct,
2174
+ id: builtins.str,
2175
+ *,
2176
+ bucket: builtins.str,
2177
+ bucket_account_id: typing.Optional[builtins.str] = None,
2178
+ name: typing.Optional[builtins.str] = None,
2179
+ policy: typing.Any = None,
2180
+ public_access_block_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.PublicAccessBlockConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2181
+ scope: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.ScopeProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2182
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2183
+ vpc_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.VpcConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2184
+ ) -> None:
2185
+ """Type checking stubs"""
2186
+ pass
2187
+
2188
+ def _typecheckingstub__a952d5b44a408b548e0bb050b62b58a18b4842662c9403b19a79b867d01abfbb(
2189
+ scope: _constructs_77d1e7e8.Construct,
2190
+ id: builtins.str,
2191
+ arn: builtins.str,
2192
+ ) -> None:
2193
+ """Type checking stubs"""
2194
+ pass
2195
+
2196
+ def _typecheckingstub__2a9ee616abb7adff2a3d54a390a11b5528111ef948a36244f51638aa85b20d21(
2197
+ scope: _constructs_77d1e7e8.Construct,
2198
+ id: builtins.str,
2199
+ access_point_name: builtins.str,
2200
+ ) -> None:
2201
+ """Type checking stubs"""
2202
+ pass
2203
+
2204
+ def _typecheckingstub__10d052bad8f115c4b5cf2aaa4e73218258b2e771a48bea5518c0d792accadaba(
2205
+ inspector: _TreeInspector_488e0dd5,
2206
+ ) -> None:
2207
+ """Type checking stubs"""
2208
+ pass
2209
+
2210
+ def _typecheckingstub__2e76dd6e5c380f8cf390fdf5b0e1babe4ba751ffa40a682c93aebdb03ac5a759(
2211
+ props: typing.Mapping[builtins.str, typing.Any],
2212
+ ) -> None:
2213
+ """Type checking stubs"""
2214
+ pass
2215
+
2216
+ def _typecheckingstub__e1f9ad27f3884dc957ca655b1b0d301bb0cc041fcb3497da06d2fcb1e73ee5a2(
2217
+ value: builtins.str,
2218
+ ) -> None:
2219
+ """Type checking stubs"""
2220
+ pass
2221
+
2222
+ def _typecheckingstub__05bbf2a5aafbce5a9896abd9ca234cb47f6f4131c53b7226517aee28187499f5(
2223
+ value: typing.Optional[builtins.str],
2224
+ ) -> None:
2225
+ """Type checking stubs"""
2226
+ pass
2227
+
2228
+ def _typecheckingstub__a0faa6f9099f8475e8a679e37d0229c90adb5b32bd05a99c722d02ab6db01577(
2229
+ value: typing.Optional[builtins.str],
2230
+ ) -> None:
2231
+ """Type checking stubs"""
2232
+ pass
2233
+
2234
+ def _typecheckingstub__b6b671117e34b3e667db8b935f30294f0e6c79bf19d6262224f7c031a23ddab9(
2235
+ value: typing.Any,
2236
+ ) -> None:
2237
+ """Type checking stubs"""
2238
+ pass
2239
+
2240
+ def _typecheckingstub__fc74f25f5a3136d66174ea811ed4ae44e659d23502d10285f8bc72b9f01fcc79(
2241
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.PublicAccessBlockConfigurationProperty]],
2242
+ ) -> None:
2243
+ """Type checking stubs"""
2244
+ pass
2245
+
2246
+ def _typecheckingstub__48d7fd3100a689dec8bdc6613bf9b51376dd53745e5ef8f3e45a997d4050fbd5(
2247
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.ScopeProperty]],
2248
+ ) -> None:
2249
+ """Type checking stubs"""
2250
+ pass
2251
+
2252
+ def _typecheckingstub__0e608b2906b65b5e91d11512e46e4a81458516822fd076cc4c4cfa631021f147(
2253
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
2254
+ ) -> None:
2255
+ """Type checking stubs"""
2256
+ pass
2257
+
2258
+ def _typecheckingstub__854fbbe66a8f2a9a585ce20da917f5abf17e2ec117ac4321757853590651821a(
2259
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnAccessPoint.VpcConfigurationProperty]],
2260
+ ) -> None:
2261
+ """Type checking stubs"""
2262
+ pass
2263
+
2264
+ def _typecheckingstub__924486f21cdee22c013a572ef0c9c5dc92b9e7f4938fda2e969703ead9ca77c3(
2265
+ *,
2266
+ block_public_acls: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2267
+ block_public_policy: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2268
+ ignore_public_acls: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2269
+ restrict_public_buckets: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2270
+ ) -> None:
2271
+ """Type checking stubs"""
2272
+ pass
2273
+
2274
+ def _typecheckingstub__72899149f7debb2e00ebe596dd77a23a5399ad56a7caca45e5e81d8f22b2f44a(
2275
+ *,
2276
+ permissions: typing.Optional[typing.Sequence[builtins.str]] = None,
2277
+ prefixes: typing.Optional[typing.Sequence[builtins.str]] = None,
2278
+ ) -> None:
2279
+ """Type checking stubs"""
2280
+ pass
2281
+
2282
+ def _typecheckingstub__19e3009de93f19fb706fa644304d8806cbdc834cc18dec326b5586987113cce6(
2283
+ *,
2284
+ vpc_id: typing.Optional[builtins.str] = None,
2285
+ ) -> None:
2286
+ """Type checking stubs"""
2287
+ pass
2288
+
2289
+ def _typecheckingstub__2ec03a7d5826304628784add6c3daf7da7d66e0c0d94fd92f203f6842dda50d0(
2290
+ *,
2291
+ bucket: builtins.str,
2292
+ bucket_account_id: typing.Optional[builtins.str] = None,
2293
+ name: typing.Optional[builtins.str] = None,
2294
+ policy: typing.Any = None,
2295
+ public_access_block_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.PublicAccessBlockConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2296
+ scope: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.ScopeProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2297
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2298
+ vpc_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAccessPoint.VpcConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2299
+ ) -> None:
2300
+ """Type checking stubs"""
2301
+ pass
2302
+
1280
2303
  def _typecheckingstub__c7ae0c19fbf2c7c716bc3304458f2695912d196d3e7439999f721b69fdbfc5a0(
1281
2304
  scope: _constructs_77d1e7e8.Construct,
1282
2305
  id: builtins.str,
@@ -1328,6 +2351,23 @@ def _typecheckingstub__ea5a1e5897b0467fb93393ad6ea2dbcd3916f27713079e8bef3badf71
1328
2351
  bucket_encryption: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDirectoryBucket.BucketEncryptionProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1329
2352
  bucket_name: typing.Optional[builtins.str] = None,
1330
2353
  lifecycle_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDirectoryBucket.LifecycleConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2354
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
2355
+ ) -> None:
2356
+ """Type checking stubs"""
2357
+ pass
2358
+
2359
+ def _typecheckingstub__ee18bc6af427a08e8172d5b4ff53cd612c8953f566c656085b2ee874f4f2f4d3(
2360
+ scope: _constructs_77d1e7e8.Construct,
2361
+ id: builtins.str,
2362
+ bucket_name: builtins.str,
2363
+ ) -> None:
2364
+ """Type checking stubs"""
2365
+ pass
2366
+
2367
+ def _typecheckingstub__75b9ac606a81f7cc58b901653e18aa8fdfc60b403968ba4f37038ce668b4b328(
2368
+ scope: _constructs_77d1e7e8.Construct,
2369
+ id: builtins.str,
2370
+ arn: builtins.str,
1331
2371
  ) -> None:
1332
2372
  """Type checking stubs"""
1333
2373
  pass
@@ -1374,6 +2414,12 @@ def _typecheckingstub__ddfd3872142b33ae9fa409c0018df1c791508213de3582b65e63e55af
1374
2414
  """Type checking stubs"""
1375
2415
  pass
1376
2416
 
2417
+ def _typecheckingstub__33beef481039e735a6eece9cb8670801f4ba6324284d9ed7c5f1e794009634d3(
2418
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
2419
+ ) -> None:
2420
+ """Type checking stubs"""
2421
+ pass
2422
+
1377
2423
  def _typecheckingstub__94d67335bbcb78d0b027e59764707d68d59cd3646befac6651614e419d8af6f4(
1378
2424
  *,
1379
2425
  days_after_initiation: jsii.Number,
@@ -1431,6 +2477,7 @@ def _typecheckingstub__997b2abc28c849393aef2f13f43682b271277998e07114f1b22407894
1431
2477
  bucket_encryption: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDirectoryBucket.BucketEncryptionProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1432
2478
  bucket_name: typing.Optional[builtins.str] = None,
1433
2479
  lifecycle_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDirectoryBucket.LifecycleConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2480
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1434
2481
  ) -> None:
1435
2482
  """Type checking stubs"""
1436
2483
  pass