aws-cdk-lib 2.200.2__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 (569) hide show
  1. aws_cdk/__init__.py +1349 -373
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.200.2.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 +1017 -155
  12. aws_cdk/aws_apigatewayv2/__init__.py +2796 -379
  13. aws_cdk/aws_apigatewayv2_integrations/__init__.py +94 -16
  14. aws_cdk/aws_appconfig/__init__.py +298 -43
  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 +29 -6
  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 +94 -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 +227 -53
  24. aws_cdk/aws_apptest/__init__.py +71 -2
  25. aws_cdk/aws_aps/__init__.py +1875 -132
  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 +135 -55
  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 +317 -28
  35. aws_cdk/aws_backupgateway/__init__.py +13 -2
  36. aws_cdk/aws_batch/__init__.py +1405 -178
  37. aws_cdk/aws_bcmdataexports/__init__.py +21 -2
  38. aws_cdk/aws_bedrock/__init__.py +6747 -627
  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 +42 -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 +237 -32
  45. aws_cdk/aws_chatbot/__init__.py +70 -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 +345 -166
  50. aws_cdk/aws_cloudfront/__init__.py +2101 -680
  51. aws_cdk/aws_cloudfront/experimental/__init__.py +108 -16
  52. aws_cdk/aws_cloudfront_origins/__init__.py +614 -73
  53. aws_cdk/aws_cloudtrail/__init__.py +301 -17
  54. aws_cdk/aws_cloudwatch/__init__.py +1414 -153
  55. aws_cdk/aws_codeartifact/__init__.py +35 -6
  56. aws_cdk/aws_codebuild/__init__.py +1103 -118
  57. aws_cdk/aws_codecommit/__init__.py +23 -9
  58. aws_cdk/aws_codeconnections/__init__.py +13 -2
  59. aws_cdk/aws_codedeploy/__init__.py +67 -6
  60. aws_cdk/aws_codeguruprofiler/__init__.py +74 -2
  61. aws_cdk/aws_codegurureviewer/__init__.py +13 -2
  62. aws_cdk/aws_codepipeline/__init__.py +127 -64
  63. aws_cdk/aws_codepipeline_actions/__init__.py +749 -0
  64. aws_cdk/aws_codestar/__init__.py +13 -2
  65. aws_cdk/aws_codestarconnections/__init__.py +35 -6
  66. aws_cdk/aws_codestarnotifications/__init__.py +16 -2
  67. aws_cdk/aws_cognito/__init__.py +814 -80
  68. aws_cdk/aws_cognito_identitypool/__init__.py +17 -12
  69. aws_cdk/aws_comprehend/__init__.py +24 -4
  70. aws_cdk/aws_config/__init__.py +191 -30
  71. aws_cdk/aws_connect/__init__.py +2736 -191
  72. aws_cdk/aws_connectcampaigns/__init__.py +13 -2
  73. aws_cdk/aws_connectcampaignsv2/__init__.py +268 -6
  74. aws_cdk/aws_controltower/__init__.py +35 -6
  75. aws_cdk/aws_cur/__init__.py +100 -4
  76. aws_cdk/aws_customerprofiles/__init__.py +617 -27
  77. aws_cdk/aws_databrew/__init__.py +68 -12
  78. aws_cdk/aws_datapipeline/__init__.py +42 -2
  79. aws_cdk/aws_datasync/__init__.py +723 -203
  80. aws_cdk/aws_datazone/__init__.py +4425 -608
  81. aws_cdk/aws_dax/__init__.py +83 -6
  82. aws_cdk/aws_deadline/__init__.py +321 -32
  83. aws_cdk/aws_detective/__init__.py +35 -6
  84. aws_cdk/aws_devicefarm/__init__.py +68 -12
  85. aws_cdk/aws_devopsguru/__init__.py +37 -6
  86. aws_cdk/aws_directoryservice/__init__.py +53 -4
  87. aws_cdk/aws_dlm/__init__.py +13 -2
  88. aws_cdk/aws_dms/__init__.py +184 -27
  89. aws_cdk/aws_docdb/__init__.py +323 -46
  90. aws_cdk/aws_docdbelastic/__init__.py +13 -2
  91. aws_cdk/aws_dsql/__init__.py +340 -12
  92. aws_cdk/aws_dynamodb/__init__.py +1463 -166
  93. aws_cdk/aws_ec2/__init__.py +9636 -1120
  94. aws_cdk/aws_ecr/__init__.py +631 -43
  95. aws_cdk/aws_ecr_assets/__init__.py +4 -0
  96. aws_cdk/aws_ecs/__init__.py +6524 -497
  97. aws_cdk/aws_ecs_patterns/__init__.py +2 -0
  98. aws_cdk/aws_efs/__init__.py +264 -24
  99. aws_cdk/aws_eks/__init__.py +1050 -218
  100. aws_cdk/aws_elasticache/__init__.py +373 -20
  101. aws_cdk/aws_elasticbeanstalk/__init__.py +75 -8
  102. aws_cdk/aws_elasticloadbalancing/__init__.py +16 -2
  103. aws_cdk/aws_elasticloadbalancingv2/__init__.py +1670 -106
  104. aws_cdk/aws_elasticsearch/__init__.py +282 -9
  105. aws_cdk/aws_emr/__init__.py +187 -20
  106. aws_cdk/aws_emrcontainers/__init__.py +71 -2
  107. aws_cdk/aws_emrserverless/__init__.py +188 -3
  108. aws_cdk/aws_entityresolution/__init__.py +585 -58
  109. aws_cdk/aws_events/__init__.py +969 -124
  110. aws_cdk/aws_events_targets/__init__.py +310 -54
  111. aws_cdk/aws_eventschemas/__init__.py +46 -8
  112. aws_cdk/aws_evidently/__init__.py +57 -10
  113. aws_cdk/aws_evs/__init__.py +2244 -0
  114. aws_cdk/aws_finspace/__init__.py +71 -2
  115. aws_cdk/aws_fis/__init__.py +26 -4
  116. aws_cdk/aws_fms/__init__.py +35 -6
  117. aws_cdk/aws_forecast/__init__.py +24 -4
  118. aws_cdk/aws_frauddetector/__init__.py +79 -14
  119. aws_cdk/aws_fsx/__init__.py +1236 -142
  120. aws_cdk/aws_gamelift/__init__.py +653 -78
  121. aws_cdk/aws_gameliftstreams/__init__.py +38 -16
  122. aws_cdk/aws_globalaccelerator/__init__.py +55 -14
  123. aws_cdk/aws_glue/__init__.py +1368 -320
  124. aws_cdk/aws_grafana/__init__.py +13 -2
  125. aws_cdk/aws_greengrass/__init__.py +654 -32
  126. aws_cdk/aws_greengrassv2/__init__.py +53 -4
  127. aws_cdk/aws_groundstation/__init__.py +122 -6
  128. aws_cdk/aws_guardduty/__init__.py +1613 -123
  129. aws_cdk/aws_healthimaging/__init__.py +71 -2
  130. aws_cdk/aws_healthlake/__init__.py +42 -2
  131. aws_cdk/aws_iam/__init__.py +480 -140
  132. aws_cdk/aws_identitystore/__init__.py +24 -4
  133. aws_cdk/aws_imagebuilder/__init__.py +1433 -183
  134. aws_cdk/aws_inspector/__init__.py +38 -6
  135. aws_cdk/aws_inspectorv2/__init__.py +2285 -243
  136. aws_cdk/aws_internetmonitor/__init__.py +71 -2
  137. aws_cdk/aws_invoicing/__init__.py +13 -2
  138. aws_cdk/aws_iot/__init__.py +1730 -86
  139. aws_cdk/aws_iotanalytics/__init__.py +162 -8
  140. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +106 -40
  141. aws_cdk/aws_iotevents/__init__.py +122 -6
  142. aws_cdk/aws_iotfleethub/__init__.py +71 -2
  143. aws_cdk/aws_iotfleetwise/__init__.py +195 -14
  144. aws_cdk/aws_iotsitewise/__init__.py +1837 -89
  145. aws_cdk/aws_iotthingsgraph/__init__.py +13 -2
  146. aws_cdk/aws_iottwinmaker/__init__.py +115 -10
  147. aws_cdk/aws_iotwireless/__init__.py +649 -22
  148. aws_cdk/aws_ivs/__init__.py +561 -57
  149. aws_cdk/aws_ivschat/__init__.py +24 -4
  150. aws_cdk/aws_kafkaconnect/__init__.py +35 -6
  151. aws_cdk/aws_kendra/__init__.py +120 -28
  152. aws_cdk/aws_kendraranking/__init__.py +13 -2
  153. aws_cdk/aws_kinesis/__init__.py +622 -22
  154. aws_cdk/aws_kinesisanalytics/__init__.py +467 -94
  155. aws_cdk/aws_kinesisanalyticsv2/__init__.py +201 -11
  156. aws_cdk/aws_kinesisfirehose/__init__.py +3077 -295
  157. aws_cdk/aws_kinesisvideo/__init__.py +24 -4
  158. aws_cdk/aws_kms/__init__.py +188 -41
  159. aws_cdk/aws_lakeformation/__init__.py +80 -15
  160. aws_cdk/aws_lambda/__init__.py +2101 -252
  161. aws_cdk/aws_lambda_event_sources/__init__.py +638 -1
  162. aws_cdk/aws_lambda_nodejs/__init__.py +63 -24
  163. aws_cdk/aws_launchwizard/__init__.py +13 -2
  164. aws_cdk/aws_lex/__init__.py +871 -8
  165. aws_cdk/aws_licensemanager/__init__.py +24 -4
  166. aws_cdk/aws_lightsail/__init__.py +2159 -975
  167. aws_cdk/aws_location/__init__.py +618 -14
  168. aws_cdk/aws_logs/__init__.py +5904 -956
  169. aws_cdk/aws_lookoutequipment/__init__.py +13 -2
  170. aws_cdk/aws_lookoutmetrics/__init__.py +38 -6
  171. aws_cdk/aws_lookoutvision/__init__.py +71 -2
  172. aws_cdk/aws_m2/__init__.py +94 -19
  173. aws_cdk/aws_macie/__init__.py +49 -11
  174. aws_cdk/aws_managedblockchain/__init__.py +180 -6
  175. aws_cdk/aws_mediaconnect/__init__.py +101 -18
  176. aws_cdk/aws_mediaconvert/__init__.py +35 -6
  177. aws_cdk/aws_medialive/__init__.py +1239 -35
  178. aws_cdk/aws_mediapackage/__init__.py +59 -12
  179. aws_cdk/aws_mediapackagev2/__init__.py +1607 -225
  180. aws_cdk/aws_mediastore/__init__.py +13 -2
  181. aws_cdk/aws_mediatailor/__init__.py +583 -12
  182. aws_cdk/aws_memorydb/__init__.py +271 -12
  183. aws_cdk/aws_mpa/__init__.py +1495 -0
  184. aws_cdk/aws_msk/__init__.py +104 -18
  185. aws_cdk/aws_mwaa/__init__.py +121 -9
  186. aws_cdk/aws_neptune/__init__.py +290 -78
  187. aws_cdk/aws_neptunegraph/__init__.py +24 -4
  188. aws_cdk/aws_networkfirewall/__init__.py +1289 -273
  189. aws_cdk/aws_networkmanager/__init__.py +349 -33
  190. aws_cdk/aws_nimblestudio/__init__.py +75 -8
  191. aws_cdk/aws_notifications/__init__.py +317 -12
  192. aws_cdk/aws_notificationscontacts/__init__.py +13 -2
  193. aws_cdk/aws_oam/__init__.py +24 -4
  194. aws_cdk/aws_observabilityadmin/__init__.py +2561 -0
  195. aws_cdk/aws_odb/__init__.py +5872 -0
  196. aws_cdk/aws_omics/__init__.py +2495 -529
  197. aws_cdk/aws_opensearchserverless/__init__.py +312 -37
  198. aws_cdk/aws_opensearchservice/__init__.py +495 -19
  199. aws_cdk/aws_opsworks/__init__.py +235 -139
  200. aws_cdk/aws_opsworkscm/__init__.py +16 -52
  201. aws_cdk/aws_organizations/__init__.py +70 -10
  202. aws_cdk/aws_osis/__init__.py +167 -2
  203. aws_cdk/aws_panorama/__init__.py +151 -6
  204. aws_cdk/aws_paymentcryptography/__init__.py +24 -4
  205. aws_cdk/aws_pcaconnectorad/__init__.py +59 -10
  206. aws_cdk/aws_pcaconnectorscep/__init__.py +24 -4
  207. aws_cdk/aws_pcs/__init__.py +387 -68
  208. aws_cdk/aws_personalize/__init__.py +46 -8
  209. aws_cdk/aws_pinpoint/__init__.py +329 -38
  210. aws_cdk/aws_pinpointemail/__init__.py +48 -8
  211. aws_cdk/aws_pipes/__init__.py +12 -2
  212. aws_cdk/aws_proton/__init__.py +37 -6
  213. aws_cdk/aws_qbusiness/__init__.py +635 -34
  214. aws_cdk/aws_qldb/__init__.py +24 -4
  215. aws_cdk/aws_quicksight/__init__.py +7900 -1160
  216. aws_cdk/aws_ram/__init__.py +24 -4
  217. aws_cdk/aws_rbin/__init__.py +12 -2
  218. aws_cdk/aws_rds/__init__.py +3345 -512
  219. aws_cdk/aws_redshift/__init__.py +143 -20
  220. aws_cdk/aws_redshiftserverless/__init__.py +692 -4
  221. aws_cdk/aws_refactorspaces/__init__.py +64 -14
  222. aws_cdk/aws_rekognition/__init__.py +93 -6
  223. aws_cdk/aws_resiliencehub/__init__.py +24 -4
  224. aws_cdk/aws_resourceexplorer2/__init__.py +35 -6
  225. aws_cdk/aws_resourcegroups/__init__.py +82 -4
  226. aws_cdk/aws_robomaker/__init__.py +72 -12
  227. aws_cdk/aws_rolesanywhere/__init__.py +180 -6
  228. aws_cdk/aws_route53/__init__.py +3273 -1442
  229. aws_cdk/aws_route53_targets/__init__.py +3 -0
  230. aws_cdk/aws_route53profiles/__init__.py +37 -6
  231. aws_cdk/aws_route53recoverycontrol/__init__.py +46 -8
  232. aws_cdk/aws_route53recoveryreadiness/__init__.py +104 -8
  233. aws_cdk/aws_route53resolver/__init__.py +226 -36
  234. aws_cdk/aws_rtbfabric/__init__.py +3498 -0
  235. aws_cdk/aws_rum/__init__.py +13 -2
  236. aws_cdk/aws_s3/__init__.py +1291 -158
  237. aws_cdk/aws_s3_assets/__init__.py +11 -11
  238. aws_cdk/aws_s3_deployment/__init__.py +147 -11
  239. aws_cdk/aws_s3_notifications/__init__.py +7 -7
  240. aws_cdk/aws_s3express/__init__.py +266 -8
  241. aws_cdk/aws_s3objectlambda/__init__.py +68 -16
  242. aws_cdk/aws_s3outposts/__init__.py +46 -8
  243. aws_cdk/aws_s3tables/__init__.py +2000 -323
  244. aws_cdk/aws_s3vectors/__init__.py +1378 -0
  245. aws_cdk/aws_sagemaker/__init__.py +6617 -363
  246. aws_cdk/aws_sam/__init__.py +79 -14
  247. aws_cdk/aws_scheduler/__init__.py +237 -4
  248. aws_cdk/aws_sdb/__init__.py +12 -2
  249. aws_cdk/aws_secretsmanager/__init__.py +170 -14
  250. aws_cdk/aws_securityhub/__init__.py +3121 -176
  251. aws_cdk/aws_securitylake/__init__.py +46 -8
  252. aws_cdk/aws_servicecatalog/__init__.py +405 -246
  253. aws_cdk/aws_servicecatalogappregistry/__init__.py +164 -8
  254. aws_cdk/aws_servicediscovery/__init__.py +140 -47
  255. aws_cdk/aws_ses/__init__.py +1231 -140
  256. aws_cdk/aws_shield/__init__.py +46 -8
  257. aws_cdk/aws_signer/__init__.py +27 -4
  258. aws_cdk/aws_simspaceweaver/__init__.py +42 -2
  259. aws_cdk/aws_smsvoice/__init__.py +4716 -0
  260. aws_cdk/aws_sns/__init__.py +245 -29
  261. aws_cdk/aws_sns_subscriptions/__init__.py +3 -1
  262. aws_cdk/aws_sqs/__init__.py +211 -14
  263. aws_cdk/aws_ssm/__init__.py +401 -58
  264. aws_cdk/aws_ssmcontacts/__init__.py +46 -8
  265. aws_cdk/aws_ssmguiconnect/__init__.py +13 -2
  266. aws_cdk/aws_ssmincidents/__init__.py +24 -4
  267. aws_cdk/aws_ssmquicksetup/__init__.py +383 -6
  268. aws_cdk/aws_sso/__init__.py +70 -12
  269. aws_cdk/aws_stepfunctions/__init__.py +615 -70
  270. aws_cdk/aws_stepfunctions_tasks/__init__.py +781 -144
  271. aws_cdk/aws_supportapp/__init__.py +39 -6
  272. aws_cdk/aws_synthetics/__init__.py +861 -75
  273. aws_cdk/aws_systemsmanagersap/__init__.py +13 -2
  274. aws_cdk/aws_timestream/__init__.py +104 -8
  275. aws_cdk/aws_transfer/__init__.py +784 -87
  276. aws_cdk/aws_verifiedpermissions/__init__.py +145 -17
  277. aws_cdk/aws_voiceid/__init__.py +41 -2
  278. aws_cdk/aws_vpclattice/__init__.py +376 -30
  279. aws_cdk/aws_waf/__init__.py +79 -14
  280. aws_cdk/aws_wafregional/__init__.py +123 -22
  281. aws_cdk/aws_wafv2/__init__.py +1179 -60
  282. aws_cdk/aws_wisdom/__init__.py +1401 -90
  283. aws_cdk/aws_workspaces/__init__.py +93 -6
  284. aws_cdk/aws_workspacesinstances/__init__.py +3940 -0
  285. aws_cdk/aws_workspacesthinclient/__init__.py +79 -10
  286. aws_cdk/aws_workspacesweb/__init__.py +1057 -141
  287. aws_cdk/aws_xray/__init__.py +48 -8
  288. aws_cdk/cloud_assembly_schema/__init__.py +231 -6
  289. aws_cdk/custom_resources/__init__.py +40 -12
  290. aws_cdk/cx_api/__init__.py +85 -14
  291. aws_cdk/interfaces/__init__.py +739 -0
  292. aws_cdk/interfaces/alexa_ask/__init__.py +146 -0
  293. aws_cdk/interfaces/aws_accessanalyzer/__init__.py +146 -0
  294. aws_cdk/interfaces/aws_acmpca/__init__.py +501 -0
  295. aws_cdk/interfaces/aws_aiops/__init__.py +146 -0
  296. aws_cdk/interfaces/aws_amazonmq/__init__.py +386 -0
  297. aws_cdk/interfaces/aws_amplify/__init__.py +352 -0
  298. aws_cdk/interfaces/aws_amplifyuibuilder/__init__.py +454 -0
  299. aws_cdk/interfaces/aws_apigateway/__init__.py +2486 -0
  300. aws_cdk/interfaces/aws_apigatewayv2/__init__.py +1651 -0
  301. aws_cdk/interfaces/aws_appconfig/__init__.py +1020 -0
  302. aws_cdk/interfaces/aws_appflow/__init__.py +404 -0
  303. aws_cdk/interfaces/aws_appintegrations/__init__.py +396 -0
  304. aws_cdk/interfaces/aws_applicationautoscaling/__init__.py +307 -0
  305. aws_cdk/interfaces/aws_applicationinsights/__init__.py +148 -0
  306. aws_cdk/interfaces/aws_applicationsignals/__init__.py +358 -0
  307. aws_cdk/interfaces/aws_appmesh/__init__.py +888 -0
  308. aws_cdk/interfaces/aws_apprunner/__init__.py +564 -0
  309. aws_cdk/interfaces/aws_appstream/__init__.py +1482 -0
  310. aws_cdk/interfaces/aws_appsync/__init__.py +1326 -0
  311. aws_cdk/interfaces/aws_apptest/__init__.py +163 -0
  312. aws_cdk/interfaces/aws_aps/__init__.py +558 -0
  313. aws_cdk/interfaces/aws_arcregionswitch/__init__.py +146 -0
  314. aws_cdk/interfaces/aws_arczonalshift/__init__.py +273 -0
  315. aws_cdk/interfaces/aws_athena/__init__.py +575 -0
  316. aws_cdk/interfaces/aws_auditmanager/__init__.py +163 -0
  317. aws_cdk/interfaces/aws_autoscaling/__init__.py +705 -0
  318. aws_cdk/interfaces/aws_autoscalingplans/__init__.py +148 -0
  319. aws_cdk/interfaces/aws_b2bi/__init__.py +524 -0
  320. aws_cdk/interfaces/aws_backup/__init__.py +955 -0
  321. aws_cdk/interfaces/aws_backupgateway/__init__.py +146 -0
  322. aws_cdk/interfaces/aws_batch/__init__.py +681 -0
  323. aws_cdk/interfaces/aws_bcmdataexports/__init__.py +146 -0
  324. aws_cdk/interfaces/aws_bedrock/__init__.py +1942 -0
  325. aws_cdk/interfaces/aws_bedrockagentcore/__init__.py +934 -0
  326. aws_cdk/interfaces/aws_billing/__init__.py +146 -0
  327. aws_cdk/interfaces/aws_billingconductor/__init__.py +463 -0
  328. aws_cdk/interfaces/aws_budgets/__init__.py +261 -0
  329. aws_cdk/interfaces/aws_cassandra/__init__.py +381 -0
  330. aws_cdk/interfaces/aws_ce/__init__.py +352 -0
  331. aws_cdk/interfaces/aws_certificatemanager/__init__.py +251 -0
  332. aws_cdk/interfaces/aws_chatbot/__init__.py +366 -0
  333. aws_cdk/interfaces/aws_cleanrooms/__init__.py +1103 -0
  334. aws_cdk/interfaces/aws_cleanroomsml/__init__.py +148 -0
  335. aws_cdk/interfaces/aws_cloud9/__init__.py +166 -0
  336. aws_cdk/interfaces/aws_cloudformation/__init__.py +1919 -0
  337. aws_cdk/interfaces/aws_cloudfront/__init__.py +1998 -0
  338. aws_cdk/interfaces/aws_cloudtrail/__init__.py +570 -0
  339. aws_cdk/interfaces/aws_cloudwatch/__init__.py +733 -0
  340. aws_cdk/interfaces/aws_codeartifact/__init__.py +352 -0
  341. aws_cdk/interfaces/aws_codebuild/__init__.py +487 -0
  342. aws_cdk/interfaces/aws_codecommit/__init__.py +163 -0
  343. aws_cdk/interfaces/aws_codeconnections/__init__.py +146 -0
  344. aws_cdk/interfaces/aws_codedeploy/__init__.py +352 -0
  345. aws_cdk/interfaces/aws_codeguruprofiler/__init__.py +168 -0
  346. aws_cdk/interfaces/aws_codegurureviewer/__init__.py +148 -0
  347. aws_cdk/interfaces/aws_codepipeline/__init__.py +388 -0
  348. aws_cdk/interfaces/aws_codestar/__init__.py +146 -0
  349. aws_cdk/interfaces/aws_codestarconnections/__init__.py +370 -0
  350. aws_cdk/interfaces/aws_codestarnotifications/__init__.py +148 -0
  351. aws_cdk/interfaces/aws_cognito/__init__.py +1929 -0
  352. aws_cdk/interfaces/aws_comprehend/__init__.py +251 -0
  353. aws_cdk/interfaces/aws_config/__init__.py +1165 -0
  354. aws_cdk/interfaces/aws_connect/__init__.py +2949 -0
  355. aws_cdk/interfaces/aws_connectcampaigns/__init__.py +146 -0
  356. aws_cdk/interfaces/aws_connectcampaignsv2/__init__.py +146 -0
  357. aws_cdk/interfaces/aws_controltower/__init__.py +394 -0
  358. aws_cdk/interfaces/aws_cur/__init__.py +146 -0
  359. aws_cdk/interfaces/aws_customerprofiles/__init__.py +915 -0
  360. aws_cdk/interfaces/aws_databrew/__init__.py +661 -0
  361. aws_cdk/interfaces/aws_datapipeline/__init__.py +146 -0
  362. aws_cdk/interfaces/aws_datasync/__init__.py +1384 -0
  363. aws_cdk/interfaces/aws_datazone/__init__.py +2238 -0
  364. aws_cdk/interfaces/aws_dax/__init__.py +364 -0
  365. aws_cdk/interfaces/aws_deadline/__init__.py +1303 -0
  366. aws_cdk/interfaces/aws_detective/__init__.py +364 -0
  367. aws_cdk/interfaces/aws_devicefarm/__init__.py +663 -0
  368. aws_cdk/interfaces/aws_devopsguru/__init__.py +362 -0
  369. aws_cdk/interfaces/aws_directoryservice/__init__.py +251 -0
  370. aws_cdk/interfaces/aws_dlm/__init__.py +166 -0
  371. aws_cdk/interfaces/aws_dms/__init__.py +1176 -0
  372. aws_cdk/interfaces/aws_docdb/__init__.py +560 -0
  373. aws_cdk/interfaces/aws_docdbelastic/__init__.py +146 -0
  374. aws_cdk/interfaces/aws_dsql/__init__.py +146 -0
  375. aws_cdk/interfaces/aws_dynamodb/__init__.py +278 -0
  376. aws_cdk/interfaces/aws_ec2/__init__.py +11963 -0
  377. aws_cdk/interfaces/aws_ecr/__init__.py +814 -0
  378. aws_cdk/interfaces/aws_ecs/__init__.py +845 -0
  379. aws_cdk/interfaces/aws_efs/__init__.py +392 -0
  380. aws_cdk/interfaces/aws_eks/__init__.py +948 -0
  381. aws_cdk/interfaces/aws_elasticache/__init__.py +1108 -0
  382. aws_cdk/interfaces/aws_elasticbeanstalk/__init__.py +503 -0
  383. aws_cdk/interfaces/aws_elasticloadbalancing/__init__.py +148 -0
  384. aws_cdk/interfaces/aws_elasticloadbalancingv2/__init__.py +795 -0
  385. aws_cdk/interfaces/aws_elasticsearch/__init__.py +158 -0
  386. aws_cdk/interfaces/aws_emr/__init__.py +913 -0
  387. aws_cdk/interfaces/aws_emrcontainers/__init__.py +168 -0
  388. aws_cdk/interfaces/aws_emrserverless/__init__.py +166 -0
  389. aws_cdk/interfaces/aws_entityresolution/__init__.py +608 -0
  390. aws_cdk/interfaces/aws_events/__init__.py +872 -0
  391. aws_cdk/interfaces/aws_eventschemas/__init__.py +455 -0
  392. aws_cdk/interfaces/aws_evidently/__init__.py +558 -0
  393. aws_cdk/interfaces/aws_evs/__init__.py +166 -0
  394. aws_cdk/interfaces/aws_finspace/__init__.py +166 -0
  395. aws_cdk/interfaces/aws_fis/__init__.py +271 -0
  396. aws_cdk/interfaces/aws_fms/__init__.py +364 -0
  397. aws_cdk/interfaces/aws_forecast/__init__.py +249 -0
  398. aws_cdk/interfaces/aws_frauddetector/__init__.py +764 -0
  399. aws_cdk/interfaces/aws_fsx/__init__.py +663 -0
  400. aws_cdk/interfaces/aws_gamelift/__init__.py +1325 -0
  401. aws_cdk/interfaces/aws_gameliftstreams/__init__.py +249 -0
  402. aws_cdk/interfaces/aws_globalaccelerator/__init__.py +461 -0
  403. aws_cdk/interfaces/aws_glue/__init__.py +2377 -0
  404. aws_cdk/interfaces/aws_grafana/__init__.py +146 -0
  405. aws_cdk/interfaces/aws_greengrass/__init__.py +1871 -0
  406. aws_cdk/interfaces/aws_greengrassv2/__init__.py +251 -0
  407. aws_cdk/interfaces/aws_groundstation/__init__.py +396 -0
  408. aws_cdk/interfaces/aws_guardduty/__init__.py +1225 -0
  409. aws_cdk/interfaces/aws_healthimaging/__init__.py +163 -0
  410. aws_cdk/interfaces/aws_healthlake/__init__.py +146 -0
  411. aws_cdk/interfaces/aws_iam/__init__.py +1803 -0
  412. aws_cdk/interfaces/aws_identitystore/__init__.py +288 -0
  413. aws_cdk/interfaces/aws_imagebuilder/__init__.py +984 -0
  414. aws_cdk/interfaces/aws_inspector/__init__.py +354 -0
  415. aws_cdk/interfaces/aws_inspectorv2/__init__.py +467 -0
  416. aws_cdk/interfaces/aws_internetmonitor/__init__.py +163 -0
  417. aws_cdk/interfaces/aws_invoicing/__init__.py +146 -0
  418. aws_cdk/interfaces/aws_iot/__init__.py +3483 -0
  419. aws_cdk/interfaces/aws_iotanalytics/__init__.py +455 -0
  420. aws_cdk/interfaces/aws_iotcoredeviceadvisor/__init__.py +168 -0
  421. aws_cdk/interfaces/aws_iotevents/__init__.py +352 -0
  422. aws_cdk/interfaces/aws_iotfleethub/__init__.py +166 -0
  423. aws_cdk/interfaces/aws_iotfleetwise/__init__.py +892 -0
  424. aws_cdk/interfaces/aws_iotsitewise/__init__.py +1097 -0
  425. aws_cdk/interfaces/aws_iotthingsgraph/__init__.py +146 -0
  426. aws_cdk/interfaces/aws_iottwinmaker/__init__.py +711 -0
  427. aws_cdk/interfaces/aws_iotwireless/__init__.py +1401 -0
  428. aws_cdk/interfaces/aws_ivs/__init__.py +1075 -0
  429. aws_cdk/interfaces/aws_ivschat/__init__.py +251 -0
  430. aws_cdk/interfaces/aws_kafkaconnect/__init__.py +354 -0
  431. aws_cdk/interfaces/aws_kendra/__init__.py +428 -0
  432. aws_cdk/interfaces/aws_kendraranking/__init__.py +166 -0
  433. aws_cdk/interfaces/aws_kinesis/__init__.py +364 -0
  434. aws_cdk/interfaces/aws_kinesisanalytics/__init__.py +364 -0
  435. aws_cdk/interfaces/aws_kinesisanalyticsv2/__init__.py +479 -0
  436. aws_cdk/interfaces/aws_kinesisfirehose/__init__.py +168 -0
  437. aws_cdk/interfaces/aws_kinesisvideo/__init__.py +283 -0
  438. aws_cdk/interfaces/aws_kms/__init__.py +376 -0
  439. aws_cdk/interfaces/aws_lakeformation/__init__.py +860 -0
  440. aws_cdk/interfaces/aws_lambda/__init__.py +1141 -0
  441. aws_cdk/interfaces/aws_launchwizard/__init__.py +146 -0
  442. aws_cdk/interfaces/aws_lex/__init__.py +513 -0
  443. aws_cdk/interfaces/aws_licensemanager/__init__.py +249 -0
  444. aws_cdk/interfaces/aws_lightsail/__init__.py +1744 -0
  445. aws_cdk/interfaces/aws_location/__init__.py +879 -0
  446. aws_cdk/interfaces/aws_logs/__init__.py +1667 -0
  447. aws_cdk/interfaces/aws_lookoutequipment/__init__.py +168 -0
  448. aws_cdk/interfaces/aws_lookoutmetrics/__init__.py +251 -0
  449. aws_cdk/interfaces/aws_lookoutvision/__init__.py +163 -0
  450. aws_cdk/interfaces/aws_m2/__init__.py +352 -0
  451. aws_cdk/interfaces/aws_macie/__init__.py +512 -0
  452. aws_cdk/interfaces/aws_managedblockchain/__init__.py +381 -0
  453. aws_cdk/interfaces/aws_mediaconnect/__init__.py +1028 -0
  454. aws_cdk/interfaces/aws_mediaconvert/__init__.py +396 -0
  455. aws_cdk/interfaces/aws_medialive/__init__.py +1755 -0
  456. aws_cdk/interfaces/aws_mediapackage/__init__.py +644 -0
  457. aws_cdk/interfaces/aws_mediapackagev2/__init__.py +618 -0
  458. aws_cdk/interfaces/aws_mediastore/__init__.py +146 -0
  459. aws_cdk/interfaces/aws_mediatailor/__init__.py +788 -0
  460. aws_cdk/interfaces/aws_memorydb/__init__.py +685 -0
  461. aws_cdk/interfaces/aws_mpa/__init__.py +249 -0
  462. aws_cdk/interfaces/aws_msk/__init__.py +764 -0
  463. aws_cdk/interfaces/aws_mwaa/__init__.py +166 -0
  464. aws_cdk/interfaces/aws_neptune/__init__.py +663 -0
  465. aws_cdk/interfaces/aws_neptunegraph/__init__.py +265 -0
  466. aws_cdk/interfaces/aws_networkfirewall/__init__.py +669 -0
  467. aws_cdk/interfaces/aws_networkmanager/__init__.py +1832 -0
  468. aws_cdk/interfaces/aws_nimblestudio/__init__.py +388 -0
  469. aws_cdk/interfaces/aws_notifications/__init__.py +868 -0
  470. aws_cdk/interfaces/aws_notificationscontacts/__init__.py +148 -0
  471. aws_cdk/interfaces/aws_oam/__init__.py +249 -0
  472. aws_cdk/interfaces/aws_observabilityadmin/__init__.py +362 -0
  473. aws_cdk/interfaces/aws_odb/__init__.py +562 -0
  474. aws_cdk/interfaces/aws_omics/__init__.py +838 -0
  475. aws_cdk/interfaces/aws_opensearchserverless/__init__.py +859 -0
  476. aws_cdk/interfaces/aws_opensearchservice/__init__.py +283 -0
  477. aws_cdk/interfaces/aws_opsworks/__init__.py +772 -0
  478. aws_cdk/interfaces/aws_opsworkscm/__init__.py +146 -0
  479. aws_cdk/interfaces/aws_organizations/__init__.py +646 -0
  480. aws_cdk/interfaces/aws_osis/__init__.py +146 -0
  481. aws_cdk/interfaces/aws_panorama/__init__.py +420 -0
  482. aws_cdk/interfaces/aws_paymentcryptography/__init__.py +249 -0
  483. aws_cdk/interfaces/aws_pcaconnectorad/__init__.py +608 -0
  484. aws_cdk/interfaces/aws_pcaconnectorscep/__init__.py +249 -0
  485. aws_cdk/interfaces/aws_pcs/__init__.py +352 -0
  486. aws_cdk/interfaces/aws_personalize/__init__.py +455 -0
  487. aws_cdk/interfaces/aws_pinpoint/__init__.py +2125 -0
  488. aws_cdk/interfaces/aws_pinpointemail/__init__.py +467 -0
  489. aws_cdk/interfaces/aws_pipes/__init__.py +158 -0
  490. aws_cdk/interfaces/aws_proton/__init__.py +360 -0
  491. aws_cdk/interfaces/aws_qbusiness/__init__.py +1122 -0
  492. aws_cdk/interfaces/aws_qldb/__init__.py +283 -0
  493. aws_cdk/interfaces/aws_quicksight/__init__.py +1566 -0
  494. aws_cdk/interfaces/aws_ram/__init__.py +249 -0
  495. aws_cdk/interfaces/aws_rbin/__init__.py +146 -0
  496. aws_cdk/interfaces/aws_rds/__init__.py +1780 -0
  497. aws_cdk/interfaces/aws_redshift/__init__.py +1104 -0
  498. aws_cdk/interfaces/aws_redshiftserverless/__init__.py +356 -0
  499. aws_cdk/interfaces/aws_refactorspaces/__init__.py +605 -0
  500. aws_cdk/interfaces/aws_rekognition/__init__.py +406 -0
  501. aws_cdk/interfaces/aws_resiliencehub/__init__.py +251 -0
  502. aws_cdk/interfaces/aws_resourceexplorer2/__init__.py +354 -0
  503. aws_cdk/interfaces/aws_resourcegroups/__init__.py +261 -0
  504. aws_cdk/interfaces/aws_robomaker/__init__.py +673 -0
  505. aws_cdk/interfaces/aws_rolesanywhere/__init__.py +384 -0
  506. aws_cdk/interfaces/aws_route53/__init__.py +804 -0
  507. aws_cdk/interfaces/aws_route53profiles/__init__.py +368 -0
  508. aws_cdk/interfaces/aws_route53recoverycontrol/__init__.py +463 -0
  509. aws_cdk/interfaces/aws_route53recoveryreadiness/__init__.py +535 -0
  510. aws_cdk/interfaces/aws_route53resolver/__init__.py +1356 -0
  511. aws_cdk/interfaces/aws_rtbfabric/__init__.py +352 -0
  512. aws_cdk/interfaces/aws_rum/__init__.py +146 -0
  513. aws_cdk/interfaces/aws_s3/__init__.py +1171 -0
  514. aws_cdk/interfaces/aws_s3express/__init__.py +392 -0
  515. aws_cdk/interfaces/aws_s3objectlambda/__init__.py +271 -0
  516. aws_cdk/interfaces/aws_s3outposts/__init__.py +455 -0
  517. aws_cdk/interfaces/aws_s3tables/__init__.py +575 -0
  518. aws_cdk/interfaces/aws_s3vectors/__init__.py +354 -0
  519. aws_cdk/interfaces/aws_sagemaker/__init__.py +3797 -0
  520. aws_cdk/interfaces/aws_sam/__init__.py +603 -0
  521. aws_cdk/interfaces/aws_scheduler/__init__.py +286 -0
  522. aws_cdk/interfaces/aws_sdb/__init__.py +146 -0
  523. aws_cdk/interfaces/aws_secretsmanager/__init__.py +461 -0
  524. aws_cdk/interfaces/aws_securityhub/__init__.py +1499 -0
  525. aws_cdk/interfaces/aws_securitylake/__init__.py +474 -0
  526. aws_cdk/interfaces/aws_servicecatalog/__init__.py +1829 -0
  527. aws_cdk/interfaces/aws_servicecatalogappregistry/__init__.py +557 -0
  528. aws_cdk/interfaces/aws_servicediscovery/__init__.py +636 -0
  529. aws_cdk/interfaces/aws_ses/__init__.py +2018 -0
  530. aws_cdk/interfaces/aws_shield/__init__.py +455 -0
  531. aws_cdk/interfaces/aws_signer/__init__.py +266 -0
  532. aws_cdk/interfaces/aws_simspaceweaver/__init__.py +146 -0
  533. aws_cdk/interfaces/aws_smsvoice/__init__.py +892 -0
  534. aws_cdk/interfaces/aws_sns/__init__.py +455 -0
  535. aws_cdk/interfaces/aws_sqs/__init__.py +364 -0
  536. aws_cdk/interfaces/aws_ssm/__init__.py +982 -0
  537. aws_cdk/interfaces/aws_ssmcontacts/__init__.py +455 -0
  538. aws_cdk/interfaces/aws_ssmguiconnect/__init__.py +146 -0
  539. aws_cdk/interfaces/aws_ssmincidents/__init__.py +249 -0
  540. aws_cdk/interfaces/aws_ssmquicksetup/__init__.py +253 -0
  541. aws_cdk/interfaces/aws_sso/__init__.py +797 -0
  542. aws_cdk/interfaces/aws_stepfunctions/__init__.py +459 -0
  543. aws_cdk/interfaces/aws_supportapp/__init__.py +372 -0
  544. aws_cdk/interfaces/aws_synthetics/__init__.py +249 -0
  545. aws_cdk/interfaces/aws_systemsmanagersap/__init__.py +148 -0
  546. aws_cdk/interfaces/aws_timestream/__init__.py +526 -0
  547. aws_cdk/interfaces/aws_transfer/__init__.py +967 -0
  548. aws_cdk/interfaces/aws_verifiedpermissions/__init__.py +538 -0
  549. aws_cdk/interfaces/aws_voiceid/__init__.py +146 -0
  550. aws_cdk/interfaces/aws_vpclattice/__init__.py +1418 -0
  551. aws_cdk/interfaces/aws_waf/__init__.py +764 -0
  552. aws_cdk/interfaces/aws_wafregional/__init__.py +1182 -0
  553. aws_cdk/interfaces/aws_wafv2/__init__.py +870 -0
  554. aws_cdk/interfaces/aws_wisdom/__init__.py +1556 -0
  555. aws_cdk/interfaces/aws_workspaces/__init__.py +352 -0
  556. aws_cdk/interfaces/aws_workspacesinstances/__init__.py +390 -0
  557. aws_cdk/interfaces/aws_workspacesthinclient/__init__.py +168 -0
  558. aws_cdk/interfaces/aws_workspacesweb/__init__.py +1085 -0
  559. aws_cdk/interfaces/aws_xray/__init__.py +457 -0
  560. aws_cdk/pipelines/__init__.py +192 -42
  561. aws_cdk/region_info/__init__.py +3 -0
  562. aws_cdk/triggers/__init__.py +60 -18
  563. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/METADATA +338 -16
  564. aws_cdk_lib-2.224.0.dist-info/RECORD +584 -0
  565. aws_cdk_lib-2.200.2.dist-info/RECORD +0 -304
  566. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/LICENSE +0 -0
  567. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/NOTICE +0 -0
  568. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/WHEEL +0 -0
  569. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/top_level.txt +0 -0
@@ -1002,6 +1002,17 @@ user_pool_client = cognito.UserPoolClient(self, "UserPoolClient",
1002
1002
  )
1003
1003
  ```
1004
1004
 
1005
+ [Refresh token rotation](https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-the-refresh-token.html#using-the-refresh-token-rotation)
1006
+ can be configured to enable automatic rotation of refresh tokens. By default, refresh token rotation is disabled. When the refreshTokenRotationGracePeriod is 0, the grace period is disabled and a successful request immediately invalidates the submitted refresh token.
1007
+
1008
+ ```python
1009
+ pool = cognito.UserPool(self, "Pool")
1010
+ pool.add_client("app-client",
1011
+ # ...
1012
+ refresh_token_rotation_grace_period=Duration.seconds(40)
1013
+ )
1014
+ ```
1015
+
1005
1016
  See [Adding user device and session data to API requests](https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-adaptive-authentication.html#user-pool-settings-adaptive-authentication-device-fingerprint) for more information.
1006
1017
 
1007
1018
  ### Resource Servers
@@ -1313,14 +1324,45 @@ from .. import (
1313
1324
  TreeInspector as _TreeInspector_488e0dd5,
1314
1325
  )
1315
1326
  from ..aws_certificatemanager import ICertificate as _ICertificate_c194c70b
1316
- from ..aws_iam import (
1317
- Grant as _Grant_a7ae64f8,
1318
- IGrantable as _IGrantable_71c4f5de,
1319
- IRole as _IRole_235f5d8e,
1320
- )
1321
- from ..aws_kms import IKey as _IKey_5f11635f
1327
+ from ..aws_iam import Grant as _Grant_a7ae64f8, IGrantable as _IGrantable_71c4f5de
1322
1328
  from ..aws_lambda import IFunction as _IFunction_6adb0ab8
1323
1329
  from ..aws_pinpoint import CfnApp as _CfnApp_e8bac60b
1330
+ from ..interfaces.aws_cognito import (
1331
+ IIdentityPoolPrincipalTagRef as _IIdentityPoolPrincipalTagRef_9e692705,
1332
+ IIdentityPoolRef as _IIdentityPoolRef_5cf45895,
1333
+ IIdentityPoolRoleAttachmentRef as _IIdentityPoolRoleAttachmentRef_2e8a15ee,
1334
+ ILogDeliveryConfigurationRef as _ILogDeliveryConfigurationRef_0c0b6844,
1335
+ IManagedLoginBrandingRef as _IManagedLoginBrandingRef_2fdc5419,
1336
+ ITermsRef as _ITermsRef_3aea4e86,
1337
+ IUserPoolClientRef as _IUserPoolClientRef_4466eeba,
1338
+ IUserPoolDomainRef as _IUserPoolDomainRef_2fa54b0c,
1339
+ IUserPoolGroupRef as _IUserPoolGroupRef_89b16d48,
1340
+ IUserPoolIdentityProviderRef as _IUserPoolIdentityProviderRef_935eed62,
1341
+ IUserPoolRef as _IUserPoolRef_0b7d02b5,
1342
+ IUserPoolResourceServerRef as _IUserPoolResourceServerRef_fda874c5,
1343
+ IUserPoolRiskConfigurationAttachmentRef as _IUserPoolRiskConfigurationAttachmentRef_b5390b06,
1344
+ IUserPoolUICustomizationAttachmentRef as _IUserPoolUICustomizationAttachmentRef_855e6497,
1345
+ IUserPoolUserRef as _IUserPoolUserRef_cbf1b211,
1346
+ IUserPoolUserToGroupAttachmentRef as _IUserPoolUserToGroupAttachmentRef_04a5a41e,
1347
+ IdentityPoolPrincipalTagReference as _IdentityPoolPrincipalTagReference_aaa53261,
1348
+ IdentityPoolReference as _IdentityPoolReference_3ad34644,
1349
+ IdentityPoolRoleAttachmentReference as _IdentityPoolRoleAttachmentReference_d6aa4828,
1350
+ LogDeliveryConfigurationReference as _LogDeliveryConfigurationReference_3ea56b01,
1351
+ ManagedLoginBrandingReference as _ManagedLoginBrandingReference_f305ff72,
1352
+ TermsReference as _TermsReference_01199e92,
1353
+ UserPoolClientReference as _UserPoolClientReference_2e04ee48,
1354
+ UserPoolDomainReference as _UserPoolDomainReference_8e0aecda,
1355
+ UserPoolGroupReference as _UserPoolGroupReference_5e435fdd,
1356
+ UserPoolIdentityProviderReference as _UserPoolIdentityProviderReference_a5d59f88,
1357
+ UserPoolReference as _UserPoolReference_0ef20aae,
1358
+ UserPoolResourceServerReference as _UserPoolResourceServerReference_5b196bf5,
1359
+ UserPoolRiskConfigurationAttachmentReference as _UserPoolRiskConfigurationAttachmentReference_815104e9,
1360
+ UserPoolUICustomizationAttachmentReference as _UserPoolUICustomizationAttachmentReference_2c1e7860,
1361
+ UserPoolUserReference as _UserPoolUserReference_b50e0a97,
1362
+ UserPoolUserToGroupAttachmentReference as _UserPoolUserToGroupAttachmentReference_fa1a0479,
1363
+ )
1364
+ from ..interfaces.aws_iam import IRoleRef as _IRoleRef_8400221f
1365
+ from ..interfaces.aws_kms import IKeyRef as _IKeyRef_d4fc6ef3
1324
1366
 
1325
1367
 
1326
1368
  @jsii.enum(jsii_type="aws-cdk-lib.aws_cognito.AccountRecovery")
@@ -1515,7 +1557,7 @@ class AnalyticsConfiguration:
1515
1557
  application: typing.Optional[_CfnApp_e8bac60b] = None,
1516
1558
  application_id: typing.Optional[builtins.str] = None,
1517
1559
  external_id: typing.Optional[builtins.str] = None,
1518
- role: typing.Optional[_IRole_235f5d8e] = None,
1560
+ role: typing.Optional[_IRoleRef_8400221f] = None,
1519
1561
  share_user_data: typing.Optional[builtins.bool] = None,
1520
1562
  ) -> None:
1521
1563
  '''The settings for Amazon Pinpoint analytics configuration.
@@ -1605,13 +1647,13 @@ class AnalyticsConfiguration:
1605
1647
  return typing.cast(typing.Optional[builtins.str], result)
1606
1648
 
1607
1649
  @builtins.property
1608
- def role(self) -> typing.Optional[_IRole_235f5d8e]:
1650
+ def role(self) -> typing.Optional[_IRoleRef_8400221f]:
1609
1651
  '''The IAM role that has the permissions required for Amazon Cognito to publish events to Amazon Pinpoint analytics.
1610
1652
 
1611
1653
  :default: - no configuration, you need to specify either this property along with ``applicationId`` and ``externalId`` or ``application``.
1612
1654
  '''
1613
1655
  result = self._values.get("role")
1614
- return typing.cast(typing.Optional[_IRole_235f5d8e], result)
1656
+ return typing.cast(typing.Optional[_IRoleRef_8400221f], result)
1615
1657
 
1616
1658
  @builtins.property
1617
1659
  def share_user_data(self) -> typing.Optional[builtins.bool]:
@@ -2219,7 +2261,7 @@ class BaseUrlOptions:
2219
2261
  )
2220
2262
 
2221
2263
 
2222
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
2264
+ @jsii.implements(_IInspectable_c2943556, _IIdentityPoolRef_5cf45895, _ITaggableV2_4e6798f8)
2223
2265
  class CfnIdentityPool(
2224
2266
  _CfnResource_9df397a6,
2225
2267
  metaclass=jsii.JSIIMeta,
@@ -2264,7 +2306,8 @@ class CfnIdentityPool(
2264
2306
  saml_provider_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
2265
2307
  supported_login_providers: typing.Any = None,
2266
2308
  ) -> None:
2267
- '''
2309
+ '''Create a new ``AWS::Cognito::IdentityPool``.
2310
+
2268
2311
  :param scope: Scope in which this resource is defined.
2269
2312
  :param id: Construct identifier for this resource (unique in its scope).
2270
2313
  :param allow_unauthenticated_identities: Specifies whether the identity pool supports unauthenticated logins.
@@ -2301,6 +2344,27 @@ class CfnIdentityPool(
2301
2344
 
2302
2345
  jsii.create(self.__class__, self, [scope, id, props])
2303
2346
 
2347
+ @jsii.member(jsii_name="fromIdentityPoolId")
2348
+ @builtins.classmethod
2349
+ def from_identity_pool_id(
2350
+ cls,
2351
+ scope: _constructs_77d1e7e8.Construct,
2352
+ id: builtins.str,
2353
+ identity_pool_id: builtins.str,
2354
+ ) -> _IIdentityPoolRef_5cf45895:
2355
+ '''Creates a new IIdentityPoolRef from a identityPoolId.
2356
+
2357
+ :param scope: -
2358
+ :param id: -
2359
+ :param identity_pool_id: -
2360
+ '''
2361
+ if __debug__:
2362
+ type_hints = typing.get_type_hints(_typecheckingstub__23c766eb59af70f92541dfd9c9cae67b99255f21efd59868b8feff44354f4e77)
2363
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
2364
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
2365
+ check_type(argname="argument identity_pool_id", value=identity_pool_id, expected_type=type_hints["identity_pool_id"])
2366
+ return typing.cast(_IIdentityPoolRef_5cf45895, jsii.sinvoke(cls, "fromIdentityPoolId", [scope, id, identity_pool_id]))
2367
+
2304
2368
  @jsii.member(jsii_name="inspect")
2305
2369
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
2306
2370
  '''Examines the CloudFormation resource and discloses attributes.
@@ -2359,6 +2423,12 @@ class CfnIdentityPool(
2359
2423
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
2360
2424
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
2361
2425
 
2426
+ @builtins.property
2427
+ @jsii.member(jsii_name="identityPoolRef")
2428
+ def identity_pool_ref(self) -> _IdentityPoolReference_3ad34644:
2429
+ '''A reference to a IdentityPool resource.'''
2430
+ return typing.cast(_IdentityPoolReference_3ad34644, jsii.get(self, "identityPoolRef"))
2431
+
2362
2432
  @builtins.property
2363
2433
  @jsii.member(jsii_name="allowUnauthenticatedIdentities")
2364
2434
  def allow_unauthenticated_identities(
@@ -2817,7 +2887,7 @@ class CfnIdentityPool(
2817
2887
  )
2818
2888
 
2819
2889
 
2820
- @jsii.implements(_IInspectable_c2943556)
2890
+ @jsii.implements(_IInspectable_c2943556, _IIdentityPoolPrincipalTagRef_9e692705)
2821
2891
  class CfnIdentityPoolPrincipalTag(
2822
2892
  _CfnResource_9df397a6,
2823
2893
  metaclass=jsii.JSIIMeta,
@@ -2857,7 +2927,8 @@ class CfnIdentityPoolPrincipalTag(
2857
2927
  principal_tags: typing.Any = None,
2858
2928
  use_defaults: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2859
2929
  ) -> None:
2860
- '''
2930
+ '''Create a new ``AWS::Cognito::IdentityPoolPrincipalTag``.
2931
+
2861
2932
  :param scope: Scope in which this resource is defined.
2862
2933
  :param id: Construct identifier for this resource (unique in its scope).
2863
2934
  :param identity_pool_id: The identity pool that you want to associate with this principal tag map.
@@ -2913,6 +2984,14 @@ class CfnIdentityPoolPrincipalTag(
2913
2984
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
2914
2985
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
2915
2986
 
2987
+ @builtins.property
2988
+ @jsii.member(jsii_name="identityPoolPrincipalTagRef")
2989
+ def identity_pool_principal_tag_ref(
2990
+ self,
2991
+ ) -> _IdentityPoolPrincipalTagReference_aaa53261:
2992
+ '''A reference to a IdentityPoolPrincipalTag resource.'''
2993
+ return typing.cast(_IdentityPoolPrincipalTagReference_aaa53261, jsii.get(self, "identityPoolPrincipalTagRef"))
2994
+
2916
2995
  @builtins.property
2917
2996
  @jsii.member(jsii_name="identityPoolId")
2918
2997
  def identity_pool_id(self) -> builtins.str:
@@ -3338,7 +3417,7 @@ class CfnIdentityPoolProps:
3338
3417
  )
3339
3418
 
3340
3419
 
3341
- @jsii.implements(_IInspectable_c2943556)
3420
+ @jsii.implements(_IInspectable_c2943556, _IIdentityPoolRoleAttachmentRef_2e8a15ee)
3342
3421
  class CfnIdentityPoolRoleAttachment(
3343
3422
  _CfnResource_9df397a6,
3344
3423
  metaclass=jsii.JSIIMeta,
@@ -3392,7 +3471,8 @@ class CfnIdentityPoolRoleAttachment(
3392
3471
  role_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union["CfnIdentityPoolRoleAttachment.RoleMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
3393
3472
  roles: typing.Any = None,
3394
3473
  ) -> None:
3395
- '''
3474
+ '''Create a new ``AWS::Cognito::IdentityPoolRoleAttachment``.
3475
+
3396
3476
  :param scope: Scope in which this resource is defined.
3397
3477
  :param id: Construct identifier for this resource (unique in its scope).
3398
3478
  :param identity_pool_id: An identity pool ID in the format ``REGION:GUID`` .
@@ -3453,6 +3533,14 @@ class CfnIdentityPoolRoleAttachment(
3453
3533
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
3454
3534
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
3455
3535
 
3536
+ @builtins.property
3537
+ @jsii.member(jsii_name="identityPoolRoleAttachmentRef")
3538
+ def identity_pool_role_attachment_ref(
3539
+ self,
3540
+ ) -> _IdentityPoolRoleAttachmentReference_d6aa4828:
3541
+ '''A reference to a IdentityPoolRoleAttachment resource.'''
3542
+ return typing.cast(_IdentityPoolRoleAttachmentReference_d6aa4828, jsii.get(self, "identityPoolRoleAttachmentRef"))
3543
+
3456
3544
  @builtins.property
3457
3545
  @jsii.member(jsii_name="identityPoolId")
3458
3546
  def identity_pool_id(self) -> builtins.str:
@@ -3923,7 +4011,7 @@ class CfnIdentityPoolRoleAttachmentProps:
3923
4011
  )
3924
4012
 
3925
4013
 
3926
- @jsii.implements(_IInspectable_c2943556)
4014
+ @jsii.implements(_IInspectable_c2943556, _ILogDeliveryConfigurationRef_0c0b6844)
3927
4015
  class CfnLogDeliveryConfiguration(
3928
4016
  _CfnResource_9df397a6,
3929
4017
  metaclass=jsii.JSIIMeta,
@@ -3971,7 +4059,8 @@ class CfnLogDeliveryConfiguration(
3971
4059
  user_pool_id: builtins.str,
3972
4060
  log_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLogDeliveryConfiguration.LogConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
3973
4061
  ) -> None:
3974
- '''
4062
+ '''Create a new ``AWS::Cognito::LogDeliveryConfiguration``.
4063
+
3975
4064
  :param scope: Scope in which this resource is defined.
3976
4065
  :param id: Construct identifier for this resource (unique in its scope).
3977
4066
  :param user_pool_id: The ID of the user pool where you configured logging.
@@ -4031,6 +4120,14 @@ class CfnLogDeliveryConfiguration(
4031
4120
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4032
4121
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4033
4122
 
4123
+ @builtins.property
4124
+ @jsii.member(jsii_name="logDeliveryConfigurationRef")
4125
+ def log_delivery_configuration_ref(
4126
+ self,
4127
+ ) -> _LogDeliveryConfigurationReference_3ea56b01:
4128
+ '''A reference to a LogDeliveryConfiguration resource.'''
4129
+ return typing.cast(_LogDeliveryConfigurationReference_3ea56b01, jsii.get(self, "logDeliveryConfigurationRef"))
4130
+
4034
4131
  @builtins.property
4035
4132
  @jsii.member(jsii_name="userPoolId")
4036
4133
  def user_pool_id(self) -> builtins.str:
@@ -4454,7 +4551,7 @@ class CfnLogDeliveryConfigurationProps:
4454
4551
  )
4455
4552
 
4456
4553
 
4457
- @jsii.implements(_IInspectable_c2943556)
4554
+ @jsii.implements(_IInspectable_c2943556, _IManagedLoginBrandingRef_2fdc5419)
4458
4555
  class CfnManagedLoginBranding(
4459
4556
  _CfnResource_9df397a6,
4460
4557
  metaclass=jsii.JSIIMeta,
@@ -4514,14 +4611,15 @@ class CfnManagedLoginBranding(
4514
4611
  settings: typing.Any = None,
4515
4612
  use_cognito_provided_values: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4516
4613
  ) -> None:
4517
- '''
4614
+ '''Create a new ``AWS::Cognito::ManagedLoginBranding``.
4615
+
4518
4616
  :param scope: Scope in which this resource is defined.
4519
4617
  :param id: Construct identifier for this resource (unique in its scope).
4520
4618
  :param user_pool_id: The user pool where the branding style is assigned.
4521
4619
  :param assets: An array of image files that you want to apply to roles like backgrounds, logos, and icons. Each object must also indicate whether it is for dark mode, light mode, or browser-adaptive mode.
4522
4620
  :param client_id: The app client that you want to assign the branding style to. Each style is linked to an app client until you delete it.
4523
4621
  :param return_merged_resources: When ``true`` , returns values for branding options that are unchanged from Amazon Cognito defaults. When ``false`` or when you omit this parameter, returns only values that you customized in your branding style.
4524
- :param settings: A JSON file, encoded as a ``Document`` type, with the the settings that you want to apply to your style.
4622
+ :param settings: A JSON file, encoded as a ``Document`` type, with the the settings that you want to apply to your style. The following components are not currently implemented and reserved for future use: - ``signUp`` - ``instructions`` - ``sessionTimerDisplay`` - ``languageSelector`` (for localization, see `Managed login localization) <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managed-login.html#managed-login-localization>`_
4525
4623
  :param use_cognito_provided_values: When true, applies the default branding style options. This option reverts to default style options that are managed by Amazon Cognito. You can modify them later in the branding editor. When you specify ``true`` for this option, you must also omit values for ``Settings`` and ``Assets`` in the request.
4526
4624
  '''
4527
4625
  if __debug__:
@@ -4583,6 +4681,12 @@ class CfnManagedLoginBranding(
4583
4681
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4584
4682
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4585
4683
 
4684
+ @builtins.property
4685
+ @jsii.member(jsii_name="managedLoginBrandingRef")
4686
+ def managed_login_branding_ref(self) -> _ManagedLoginBrandingReference_f305ff72:
4687
+ '''A reference to a ManagedLoginBranding resource.'''
4688
+ return typing.cast(_ManagedLoginBrandingReference_f305ff72, jsii.get(self, "managedLoginBrandingRef"))
4689
+
4586
4690
  @builtins.property
4587
4691
  @jsii.member(jsii_name="userPoolId")
4588
4692
  def user_pool_id(self) -> builtins.str:
@@ -4834,7 +4938,7 @@ class CfnManagedLoginBrandingProps:
4834
4938
  :param assets: An array of image files that you want to apply to roles like backgrounds, logos, and icons. Each object must also indicate whether it is for dark mode, light mode, or browser-adaptive mode.
4835
4939
  :param client_id: The app client that you want to assign the branding style to. Each style is linked to an app client until you delete it.
4836
4940
  :param return_merged_resources: When ``true`` , returns values for branding options that are unchanged from Amazon Cognito defaults. When ``false`` or when you omit this parameter, returns only values that you customized in your branding style.
4837
- :param settings: A JSON file, encoded as a ``Document`` type, with the the settings that you want to apply to your style.
4941
+ :param settings: A JSON file, encoded as a ``Document`` type, with the the settings that you want to apply to your style. The following components are not currently implemented and reserved for future use: - ``signUp`` - ``instructions`` - ``sessionTimerDisplay`` - ``languageSelector`` (for localization, see `Managed login localization) <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managed-login.html#managed-login-localization>`_
4838
4942
  :param use_cognito_provided_values: When true, applies the default branding style options. This option reverts to default style options that are managed by Amazon Cognito. You can modify them later in the branding editor. When you specify ``true`` for this option, you must also omit values for ``Settings`` and ``Assets`` in the request.
4839
4943
 
4840
4944
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html
@@ -4940,6 +5044,13 @@ class CfnManagedLoginBrandingProps:
4940
5044
  def settings(self) -> typing.Any:
4941
5045
  '''A JSON file, encoded as a ``Document`` type, with the the settings that you want to apply to your style.
4942
5046
 
5047
+ The following components are not currently implemented and reserved for future use:
5048
+
5049
+ - ``signUp``
5050
+ - ``instructions``
5051
+ - ``sessionTimerDisplay``
5052
+ - ``languageSelector`` (for localization, see `Managed login localization) <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-managed-login.html#managed-login-localization>`_
5053
+
4943
5054
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-managedloginbranding.html#cfn-cognito-managedloginbranding-settings
4944
5055
  '''
4945
5056
  result = self._values.get("settings")
@@ -4972,7 +5083,343 @@ class CfnManagedLoginBrandingProps:
4972
5083
  )
4973
5084
 
4974
5085
 
4975
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
5086
+ @jsii.implements(_IInspectable_c2943556, _ITermsRef_3aea4e86)
5087
+ class CfnTerms(
5088
+ _CfnResource_9df397a6,
5089
+ metaclass=jsii.JSIIMeta,
5090
+ jsii_type="aws-cdk-lib.aws_cognito.CfnTerms",
5091
+ ):
5092
+ '''Resource Type definition for AWS::Cognito::Terms.
5093
+
5094
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-terms.html
5095
+ :cloudformationResource: AWS::Cognito::Terms
5096
+ :exampleMetadata: fixture=_generated
5097
+
5098
+ Example::
5099
+
5100
+ # The code below shows an example of how to instantiate this type.
5101
+ # The values are placeholders you should change.
5102
+ from aws_cdk import aws_cognito as cognito
5103
+
5104
+ cfn_terms = cognito.CfnTerms(self, "MyCfnTerms",
5105
+ enforcement="enforcement",
5106
+ links={
5107
+ "links_key": "links"
5108
+ },
5109
+ terms_name="termsName",
5110
+ terms_source="termsSource",
5111
+ user_pool_id="userPoolId",
5112
+
5113
+ # the properties below are optional
5114
+ client_id="clientId"
5115
+ )
5116
+ '''
5117
+
5118
+ def __init__(
5119
+ self,
5120
+ scope: _constructs_77d1e7e8.Construct,
5121
+ id: builtins.str,
5122
+ *,
5123
+ enforcement: builtins.str,
5124
+ links: typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b],
5125
+ terms_name: builtins.str,
5126
+ terms_source: builtins.str,
5127
+ user_pool_id: builtins.str,
5128
+ client_id: typing.Optional[builtins.str] = None,
5129
+ ) -> None:
5130
+ '''Create a new ``AWS::Cognito::Terms``.
5131
+
5132
+ :param scope: Scope in which this resource is defined.
5133
+ :param id: Construct identifier for this resource (unique in its scope).
5134
+ :param enforcement:
5135
+ :param links:
5136
+ :param terms_name:
5137
+ :param terms_source:
5138
+ :param user_pool_id:
5139
+ :param client_id:
5140
+ '''
5141
+ if __debug__:
5142
+ type_hints = typing.get_type_hints(_typecheckingstub__60ed6baa47f9012cc57d9cef7e22f15d5f04fd45aa55fc0e8672f7e89ef3f146)
5143
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
5144
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
5145
+ props = CfnTermsProps(
5146
+ enforcement=enforcement,
5147
+ links=links,
5148
+ terms_name=terms_name,
5149
+ terms_source=terms_source,
5150
+ user_pool_id=user_pool_id,
5151
+ client_id=client_id,
5152
+ )
5153
+
5154
+ jsii.create(self.__class__, self, [scope, id, props])
5155
+
5156
+ @jsii.member(jsii_name="inspect")
5157
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
5158
+ '''Examines the CloudFormation resource and discloses attributes.
5159
+
5160
+ :param inspector: tree inspector to collect and process attributes.
5161
+ '''
5162
+ if __debug__:
5163
+ type_hints = typing.get_type_hints(_typecheckingstub__0c857e95caaea9926ffb4e0ab5c3a0bb7d8a82c05cf7bd42adce1312c203e7a6)
5164
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
5165
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
5166
+
5167
+ @jsii.member(jsii_name="renderProperties")
5168
+ def _render_properties(
5169
+ self,
5170
+ props: typing.Mapping[builtins.str, typing.Any],
5171
+ ) -> typing.Mapping[builtins.str, typing.Any]:
5172
+ '''
5173
+ :param props: -
5174
+ '''
5175
+ if __debug__:
5176
+ type_hints = typing.get_type_hints(_typecheckingstub__9dddb891f6e734bbc549324d30543ba3d862fb957be34e904236132737d7b71a)
5177
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
5178
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
5179
+
5180
+ @jsii.python.classproperty
5181
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
5182
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
5183
+ '''The CloudFormation resource type name for this resource class.'''
5184
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
5185
+
5186
+ @builtins.property
5187
+ @jsii.member(jsii_name="attrTermsId")
5188
+ def attr_terms_id(self) -> builtins.str:
5189
+ '''
5190
+ :cloudformationAttribute: TermsId
5191
+ '''
5192
+ return typing.cast(builtins.str, jsii.get(self, "attrTermsId"))
5193
+
5194
+ @builtins.property
5195
+ @jsii.member(jsii_name="cfnProperties")
5196
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
5197
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
5198
+
5199
+ @builtins.property
5200
+ @jsii.member(jsii_name="termsRef")
5201
+ def terms_ref(self) -> _TermsReference_01199e92:
5202
+ '''A reference to a Terms resource.'''
5203
+ return typing.cast(_TermsReference_01199e92, jsii.get(self, "termsRef"))
5204
+
5205
+ @builtins.property
5206
+ @jsii.member(jsii_name="enforcement")
5207
+ def enforcement(self) -> builtins.str:
5208
+ return typing.cast(builtins.str, jsii.get(self, "enforcement"))
5209
+
5210
+ @enforcement.setter
5211
+ def enforcement(self, value: builtins.str) -> None:
5212
+ if __debug__:
5213
+ type_hints = typing.get_type_hints(_typecheckingstub__f61b831431a9a8cd9abc071d0372ef9f7481c4297f99d22362f79e4456530000)
5214
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5215
+ jsii.set(self, "enforcement", value) # pyright: ignore[reportArgumentType]
5216
+
5217
+ @builtins.property
5218
+ @jsii.member(jsii_name="links")
5219
+ def links(
5220
+ self,
5221
+ ) -> typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]:
5222
+ return typing.cast(typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b], jsii.get(self, "links"))
5223
+
5224
+ @links.setter
5225
+ def links(
5226
+ self,
5227
+ value: typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b],
5228
+ ) -> None:
5229
+ if __debug__:
5230
+ type_hints = typing.get_type_hints(_typecheckingstub__4f9dfce3805ce6a5b41ec8b8adeb160b16b2bb09e9af48569f2f3a28a1301c36)
5231
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5232
+ jsii.set(self, "links", value) # pyright: ignore[reportArgumentType]
5233
+
5234
+ @builtins.property
5235
+ @jsii.member(jsii_name="termsName")
5236
+ def terms_name(self) -> builtins.str:
5237
+ return typing.cast(builtins.str, jsii.get(self, "termsName"))
5238
+
5239
+ @terms_name.setter
5240
+ def terms_name(self, value: builtins.str) -> None:
5241
+ if __debug__:
5242
+ type_hints = typing.get_type_hints(_typecheckingstub__68b51d1ab80adde15516db14033542fe90da3c6c88f931ab391ca9a06f2b57a2)
5243
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5244
+ jsii.set(self, "termsName", value) # pyright: ignore[reportArgumentType]
5245
+
5246
+ @builtins.property
5247
+ @jsii.member(jsii_name="termsSource")
5248
+ def terms_source(self) -> builtins.str:
5249
+ return typing.cast(builtins.str, jsii.get(self, "termsSource"))
5250
+
5251
+ @terms_source.setter
5252
+ def terms_source(self, value: builtins.str) -> None:
5253
+ if __debug__:
5254
+ type_hints = typing.get_type_hints(_typecheckingstub__d5aa2b8f439bae6d46ca78a5e059a5ed10c4d8f1fa1e7624f714272d8d13b98e)
5255
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5256
+ jsii.set(self, "termsSource", value) # pyright: ignore[reportArgumentType]
5257
+
5258
+ @builtins.property
5259
+ @jsii.member(jsii_name="userPoolId")
5260
+ def user_pool_id(self) -> builtins.str:
5261
+ return typing.cast(builtins.str, jsii.get(self, "userPoolId"))
5262
+
5263
+ @user_pool_id.setter
5264
+ def user_pool_id(self, value: builtins.str) -> None:
5265
+ if __debug__:
5266
+ type_hints = typing.get_type_hints(_typecheckingstub__bedec026b3875318368cb2e1f7df8e4146e8efed23c452b2176302d00eac9db3)
5267
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5268
+ jsii.set(self, "userPoolId", value) # pyright: ignore[reportArgumentType]
5269
+
5270
+ @builtins.property
5271
+ @jsii.member(jsii_name="clientId")
5272
+ def client_id(self) -> typing.Optional[builtins.str]:
5273
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "clientId"))
5274
+
5275
+ @client_id.setter
5276
+ def client_id(self, value: typing.Optional[builtins.str]) -> None:
5277
+ if __debug__:
5278
+ type_hints = typing.get_type_hints(_typecheckingstub__b52c4f91e8237836ed692eed70ef894814f27cdb9a5c5fe5278b59f348ab3bb9)
5279
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5280
+ jsii.set(self, "clientId", value) # pyright: ignore[reportArgumentType]
5281
+
5282
+
5283
+ @jsii.data_type(
5284
+ jsii_type="aws-cdk-lib.aws_cognito.CfnTermsProps",
5285
+ jsii_struct_bases=[],
5286
+ name_mapping={
5287
+ "enforcement": "enforcement",
5288
+ "links": "links",
5289
+ "terms_name": "termsName",
5290
+ "terms_source": "termsSource",
5291
+ "user_pool_id": "userPoolId",
5292
+ "client_id": "clientId",
5293
+ },
5294
+ )
5295
+ class CfnTermsProps:
5296
+ def __init__(
5297
+ self,
5298
+ *,
5299
+ enforcement: builtins.str,
5300
+ links: typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b],
5301
+ terms_name: builtins.str,
5302
+ terms_source: builtins.str,
5303
+ user_pool_id: builtins.str,
5304
+ client_id: typing.Optional[builtins.str] = None,
5305
+ ) -> None:
5306
+ '''Properties for defining a ``CfnTerms``.
5307
+
5308
+ :param enforcement:
5309
+ :param links:
5310
+ :param terms_name:
5311
+ :param terms_source:
5312
+ :param user_pool_id:
5313
+ :param client_id:
5314
+
5315
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-terms.html
5316
+ :exampleMetadata: fixture=_generated
5317
+
5318
+ Example::
5319
+
5320
+ # The code below shows an example of how to instantiate this type.
5321
+ # The values are placeholders you should change.
5322
+ from aws_cdk import aws_cognito as cognito
5323
+
5324
+ cfn_terms_props = cognito.CfnTermsProps(
5325
+ enforcement="enforcement",
5326
+ links={
5327
+ "links_key": "links"
5328
+ },
5329
+ terms_name="termsName",
5330
+ terms_source="termsSource",
5331
+ user_pool_id="userPoolId",
5332
+
5333
+ # the properties below are optional
5334
+ client_id="clientId"
5335
+ )
5336
+ '''
5337
+ if __debug__:
5338
+ type_hints = typing.get_type_hints(_typecheckingstub__285db7e3bc95478b571785bee7fa49951055cef4d8266009ed59e73fea5e4d4e)
5339
+ check_type(argname="argument enforcement", value=enforcement, expected_type=type_hints["enforcement"])
5340
+ check_type(argname="argument links", value=links, expected_type=type_hints["links"])
5341
+ check_type(argname="argument terms_name", value=terms_name, expected_type=type_hints["terms_name"])
5342
+ check_type(argname="argument terms_source", value=terms_source, expected_type=type_hints["terms_source"])
5343
+ check_type(argname="argument user_pool_id", value=user_pool_id, expected_type=type_hints["user_pool_id"])
5344
+ check_type(argname="argument client_id", value=client_id, expected_type=type_hints["client_id"])
5345
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5346
+ "enforcement": enforcement,
5347
+ "links": links,
5348
+ "terms_name": terms_name,
5349
+ "terms_source": terms_source,
5350
+ "user_pool_id": user_pool_id,
5351
+ }
5352
+ if client_id is not None:
5353
+ self._values["client_id"] = client_id
5354
+
5355
+ @builtins.property
5356
+ def enforcement(self) -> builtins.str:
5357
+ '''
5358
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-terms.html#cfn-cognito-terms-enforcement
5359
+ '''
5360
+ result = self._values.get("enforcement")
5361
+ assert result is not None, "Required property 'enforcement' is missing"
5362
+ return typing.cast(builtins.str, result)
5363
+
5364
+ @builtins.property
5365
+ def links(
5366
+ self,
5367
+ ) -> typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]:
5368
+ '''
5369
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-terms.html#cfn-cognito-terms-links
5370
+ '''
5371
+ result = self._values.get("links")
5372
+ assert result is not None, "Required property 'links' is missing"
5373
+ return typing.cast(typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b], result)
5374
+
5375
+ @builtins.property
5376
+ def terms_name(self) -> builtins.str:
5377
+ '''
5378
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-terms.html#cfn-cognito-terms-termsname
5379
+ '''
5380
+ result = self._values.get("terms_name")
5381
+ assert result is not None, "Required property 'terms_name' is missing"
5382
+ return typing.cast(builtins.str, result)
5383
+
5384
+ @builtins.property
5385
+ def terms_source(self) -> builtins.str:
5386
+ '''
5387
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-terms.html#cfn-cognito-terms-termssource
5388
+ '''
5389
+ result = self._values.get("terms_source")
5390
+ assert result is not None, "Required property 'terms_source' is missing"
5391
+ return typing.cast(builtins.str, result)
5392
+
5393
+ @builtins.property
5394
+ def user_pool_id(self) -> builtins.str:
5395
+ '''
5396
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-terms.html#cfn-cognito-terms-userpoolid
5397
+ '''
5398
+ result = self._values.get("user_pool_id")
5399
+ assert result is not None, "Required property 'user_pool_id' is missing"
5400
+ return typing.cast(builtins.str, result)
5401
+
5402
+ @builtins.property
5403
+ def client_id(self) -> typing.Optional[builtins.str]:
5404
+ '''
5405
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-terms.html#cfn-cognito-terms-clientid
5406
+ '''
5407
+ result = self._values.get("client_id")
5408
+ return typing.cast(typing.Optional[builtins.str], result)
5409
+
5410
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5411
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5412
+
5413
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5414
+ return not (rhs == self)
5415
+
5416
+ def __repr__(self) -> str:
5417
+ return "CfnTermsProps(%s)" % ", ".join(
5418
+ k + "=" + repr(v) for k, v in self._values.items()
5419
+ )
5420
+
5421
+
5422
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolRef_0b7d02b5, _ITaggable_36806126)
4976
5423
  class CfnUserPool(
4977
5424
  _CfnResource_9df397a6,
4978
5425
  metaclass=jsii.JSIIMeta,
@@ -5158,7 +5605,8 @@ class CfnUserPool(
5158
5605
  web_authn_relying_party_id: typing.Optional[builtins.str] = None,
5159
5606
  web_authn_user_verification: typing.Optional[builtins.str] = None,
5160
5607
  ) -> None:
5161
- '''
5608
+ '''Create a new ``AWS::Cognito::UserPool``.
5609
+
5162
5610
  :param scope: Scope in which this resource is defined.
5163
5611
  :param id: Construct identifier for this resource (unique in its scope).
5164
5612
  :param account_recovery_setting: The available verified method a user can use to recover their password when they call ``ForgotPassword`` . You can use this setting to define a preferred method when a user has more than one method available. With this setting, SMS doesn't qualify for a valid password recovery mechanism if the user also has SMS multi-factor authentication (MFA) activated. In the absence of this setting, Amazon Cognito uses the legacy behavior to determine the recovery method where SMS is preferred through email.
@@ -5229,6 +5677,48 @@ class CfnUserPool(
5229
5677
 
5230
5678
  jsii.create(self.__class__, self, [scope, id, props])
5231
5679
 
5680
+ @jsii.member(jsii_name="fromUserPoolArn")
5681
+ @builtins.classmethod
5682
+ def from_user_pool_arn(
5683
+ cls,
5684
+ scope: _constructs_77d1e7e8.Construct,
5685
+ id: builtins.str,
5686
+ arn: builtins.str,
5687
+ ) -> _IUserPoolRef_0b7d02b5:
5688
+ '''Creates a new IUserPoolRef from an ARN.
5689
+
5690
+ :param scope: -
5691
+ :param id: -
5692
+ :param arn: -
5693
+ '''
5694
+ if __debug__:
5695
+ type_hints = typing.get_type_hints(_typecheckingstub__50cb94accc8d60746f0970af6f3f1428a04180d1d6c471b7ebb0c7eeaf6f5e11)
5696
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
5697
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
5698
+ check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
5699
+ return typing.cast(_IUserPoolRef_0b7d02b5, jsii.sinvoke(cls, "fromUserPoolArn", [scope, id, arn]))
5700
+
5701
+ @jsii.member(jsii_name="fromUserPoolId")
5702
+ @builtins.classmethod
5703
+ def from_user_pool_id(
5704
+ cls,
5705
+ scope: _constructs_77d1e7e8.Construct,
5706
+ id: builtins.str,
5707
+ user_pool_id: builtins.str,
5708
+ ) -> _IUserPoolRef_0b7d02b5:
5709
+ '''Creates a new IUserPoolRef from a userPoolId.
5710
+
5711
+ :param scope: -
5712
+ :param id: -
5713
+ :param user_pool_id: -
5714
+ '''
5715
+ if __debug__:
5716
+ type_hints = typing.get_type_hints(_typecheckingstub__77bca4d59ea1b80508c0fd60c8f34e3c4dff94c3e5dada90fee904207040ff1a)
5717
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
5718
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
5719
+ check_type(argname="argument user_pool_id", value=user_pool_id, expected_type=type_hints["user_pool_id"])
5720
+ return typing.cast(_IUserPoolRef_0b7d02b5, jsii.sinvoke(cls, "fromUserPoolId", [scope, id, user_pool_id]))
5721
+
5232
5722
  @jsii.member(jsii_name="inspect")
5233
5723
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
5234
5724
  '''Examines the CloudFormation resource and discloses attributes.
@@ -5306,6 +5796,12 @@ class CfnUserPool(
5306
5796
  '''Tag Manager which manages the tags for this resource.'''
5307
5797
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
5308
5798
 
5799
+ @builtins.property
5800
+ @jsii.member(jsii_name="userPoolRef")
5801
+ def user_pool_ref(self) -> _UserPoolReference_0ef20aae:
5802
+ '''A reference to a UserPool resource.'''
5803
+ return typing.cast(_UserPoolReference_0ef20aae, jsii.get(self, "userPoolRef"))
5804
+
5309
5805
  @builtins.property
5310
5806
  @jsii.member(jsii_name="accountRecoverySetting")
5311
5807
  def account_recovery_setting(
@@ -8026,7 +8522,7 @@ class CfnUserPool(
8026
8522
  )
8027
8523
 
8028
8524
 
8029
- @jsii.implements(_IInspectable_c2943556)
8525
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolClientRef_4466eeba)
8030
8526
  class CfnUserPoolClient(
8031
8527
  _CfnResource_9df397a6,
8032
8528
  metaclass=jsii.JSIIMeta,
@@ -8132,7 +8628,8 @@ class CfnUserPoolClient(
8132
8628
  token_validity_units: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnUserPoolClient.TokenValidityUnitsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
8133
8629
  write_attributes: typing.Optional[typing.Sequence[builtins.str]] = None,
8134
8630
  ) -> None:
8135
- '''
8631
+ '''Create a new ``AWS::Cognito::UserPoolClient``.
8632
+
8136
8633
  :param scope: Scope in which this resource is defined.
8137
8634
  :param id: Construct identifier for this resource (unique in its scope).
8138
8635
  :param user_pool_id: The ID of the user pool where you want to create an app client.
@@ -8142,7 +8639,7 @@ class CfnUserPoolClient(
8142
8639
  :param allowed_o_auth_scopes: The OAuth, OpenID Connect (OIDC), and custom scopes that you want to permit your app client to authorize access with. Scopes govern access control to user pool self-service API operations, user data from the ``userInfo`` endpoint, and third-party APIs. Scope values include ``phone`` , ``email`` , ``openid`` , and ``profile`` . The ``aws.cognito.signin.user.admin`` scope authorizes user self-service operations. Custom scopes with resource servers authorize access to external APIs.
8143
8640
  :param analytics_configuration: The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign. In AWS Regions where Amazon Pinpoint isn't available, user pools might not have access to analytics or might be configurable with campaigns in the US East (N. Virginia) Region. For more information, see `Using Amazon Pinpoint analytics <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-pinpoint-integration.html>`_ .
8144
8641
  :param auth_session_validity: Amazon Cognito creates a session token for each API request in an authentication flow. ``AuthSessionValidity`` is the duration, in minutes, of that session token. Your user pool native user must respond to each authentication challenge before the session expires.
8145
- :param callback_ur_ls: A list of allowed redirect, or callback, URLs for managed login authentication. These URLs are the paths where you want to send your users' browsers after they complete authentication with managed login or a third-party IdP. Typically, callback URLs are the home of an application that uses OAuth or OIDC libraries to process authentication outcomes. A redirect URI must meet the following requirements: - Be an absolute URI. - Be registered with the authorization server. Amazon Cognito doesn't accept authorization requests with ``redirect_uri`` values that aren't in the list of ``CallbackURLs`` that you provide in this parameter. - Not include a fragment component. See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ . Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only. App callback URLs such as myapp://example are also supported.
8642
+ :param callback_ur_ls: A list of allowed redirect, or callback, URLs for managed login authentication. These URLs are the paths where you want to send your users' browsers after they complete authentication with managed login or a third-party IdP. Typically, callback URLs are the home of an application that uses OAuth or OIDC libraries to process authentication outcomes. A redirect URI must meet the following requirements: - Be an absolute URI. - Be registered with the authorization server. Amazon Cognito doesn't accept authorization requests with ``redirect_uri`` values that aren't in the list of ``CallbackURLs`` that you provide in this parameter. - Not include a fragment component. See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ . Amazon Cognito requires HTTPS over HTTP except for callback URLs to ``http://localhost`` , ``http://127.0.0.1`` and ``http://[::1]`` . These callback URLs are for testing purposes only. You can specify custom TCP ports for your callback URLs. App callback URLs such as ``myapp://example`` are also supported.
8146
8643
  :param client_name: A friendly name for the app client that you want to create.
8147
8644
  :param default_redirect_uri: The default redirect URI. In app clients with one assigned IdP, replaces ``redirect_uri`` in authentication requests. Must be in the ``CallbackURLs`` list.
8148
8645
  :param enable_propagate_additional_user_context_data: When ``true`` , your application can include additional ``UserContextData`` in authentication requests. This data includes the IP address, and contributes to analysis by threat protection features. For more information about propagation of user context data, see `Adding session data to API requests <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-adaptive-authentication.html#user-pool-settings-adaptive-authentication-device-fingerprint>`_ . If you don’t include this parameter, you can't send the source IP address to Amazon Cognito threat protection features. You can only activate ``EnablePropagateAdditionalUserContextData`` in an app client that has a client secret.
@@ -8251,6 +8748,12 @@ class CfnUserPoolClient(
8251
8748
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
8252
8749
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
8253
8750
 
8751
+ @builtins.property
8752
+ @jsii.member(jsii_name="userPoolClientRef")
8753
+ def user_pool_client_ref(self) -> _UserPoolClientReference_2e04ee48:
8754
+ '''A reference to a UserPoolClient resource.'''
8755
+ return typing.cast(_UserPoolClientReference_2e04ee48, jsii.get(self, "userPoolClientRef"))
8756
+
8254
8757
  @builtins.property
8255
8758
  @jsii.member(jsii_name="userPoolId")
8256
8759
  def user_pool_id(self) -> builtins.str:
@@ -8978,7 +9481,7 @@ class CfnUserPoolClientProps:
8978
9481
  :param allowed_o_auth_scopes: The OAuth, OpenID Connect (OIDC), and custom scopes that you want to permit your app client to authorize access with. Scopes govern access control to user pool self-service API operations, user data from the ``userInfo`` endpoint, and third-party APIs. Scope values include ``phone`` , ``email`` , ``openid`` , and ``profile`` . The ``aws.cognito.signin.user.admin`` scope authorizes user self-service operations. Custom scopes with resource servers authorize access to external APIs.
8979
9482
  :param analytics_configuration: The user pool analytics configuration for collecting metrics and sending them to your Amazon Pinpoint campaign. In AWS Regions where Amazon Pinpoint isn't available, user pools might not have access to analytics or might be configurable with campaigns in the US East (N. Virginia) Region. For more information, see `Using Amazon Pinpoint analytics <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-pinpoint-integration.html>`_ .
8980
9483
  :param auth_session_validity: Amazon Cognito creates a session token for each API request in an authentication flow. ``AuthSessionValidity`` is the duration, in minutes, of that session token. Your user pool native user must respond to each authentication challenge before the session expires.
8981
- :param callback_ur_ls: A list of allowed redirect, or callback, URLs for managed login authentication. These URLs are the paths where you want to send your users' browsers after they complete authentication with managed login or a third-party IdP. Typically, callback URLs are the home of an application that uses OAuth or OIDC libraries to process authentication outcomes. A redirect URI must meet the following requirements: - Be an absolute URI. - Be registered with the authorization server. Amazon Cognito doesn't accept authorization requests with ``redirect_uri`` values that aren't in the list of ``CallbackURLs`` that you provide in this parameter. - Not include a fragment component. See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ . Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only. App callback URLs such as myapp://example are also supported.
9484
+ :param callback_ur_ls: A list of allowed redirect, or callback, URLs for managed login authentication. These URLs are the paths where you want to send your users' browsers after they complete authentication with managed login or a third-party IdP. Typically, callback URLs are the home of an application that uses OAuth or OIDC libraries to process authentication outcomes. A redirect URI must meet the following requirements: - Be an absolute URI. - Be registered with the authorization server. Amazon Cognito doesn't accept authorization requests with ``redirect_uri`` values that aren't in the list of ``CallbackURLs`` that you provide in this parameter. - Not include a fragment component. See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ . Amazon Cognito requires HTTPS over HTTP except for callback URLs to ``http://localhost`` , ``http://127.0.0.1`` and ``http://[::1]`` . These callback URLs are for testing purposes only. You can specify custom TCP ports for your callback URLs. App callback URLs such as ``myapp://example`` are also supported.
8982
9485
  :param client_name: A friendly name for the app client that you want to create.
8983
9486
  :param default_redirect_uri: The default redirect URI. In app clients with one assigned IdP, replaces ``redirect_uri`` in authentication requests. Must be in the ``CallbackURLs`` list.
8984
9487
  :param enable_propagate_additional_user_context_data: When ``true`` , your application can include additional ``UserContextData`` in authentication requests. This data includes the IP address, and contributes to analysis by threat protection features. For more information about propagation of user context data, see `Adding session data to API requests <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-settings-adaptive-authentication.html#user-pool-settings-adaptive-authentication-device-fingerprint>`_ . If you don’t include this parameter, you can't send the source IP address to Amazon Cognito threat protection features. You can only activate ``EnablePropagateAdditionalUserContextData`` in an app client that has a client secret.
@@ -9231,9 +9734,9 @@ class CfnUserPoolClientProps:
9231
9734
 
9232
9735
  See `OAuth 2.0 - Redirection Endpoint <https://docs.aws.amazon.com/https://tools.ietf.org/html/rfc6749#section-3.1.2>`_ .
9233
9736
 
9234
- Amazon Cognito requires HTTPS over HTTP except for http://localhost for testing purposes only.
9737
+ Amazon Cognito requires HTTPS over HTTP except for callback URLs to ``http://localhost`` , ``http://127.0.0.1`` and ``http://[::1]`` . These callback URLs are for testing purposes only. You can specify custom TCP ports for your callback URLs.
9235
9738
 
9236
- App callback URLs such as myapp://example are also supported.
9739
+ App callback URLs such as ``myapp://example`` are also supported.
9237
9740
 
9238
9741
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cognito-userpoolclient.html#cfn-cognito-userpoolclient-callbackurls
9239
9742
  '''
@@ -9474,7 +9977,7 @@ class CfnUserPoolClientProps:
9474
9977
  )
9475
9978
 
9476
9979
 
9477
- @jsii.implements(_IInspectable_c2943556)
9980
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolDomainRef_2fa54b0c)
9478
9981
  class CfnUserPoolDomain(
9479
9982
  _CfnResource_9df397a6,
9480
9983
  metaclass=jsii.JSIIMeta,
@@ -9514,7 +10017,8 @@ class CfnUserPoolDomain(
9514
10017
  custom_domain_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnUserPoolDomain.CustomDomainConfigTypeProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
9515
10018
  managed_login_version: typing.Optional[jsii.Number] = None,
9516
10019
  ) -> None:
9517
- '''
10020
+ '''Create a new ``AWS::Cognito::UserPoolDomain``.
10021
+
9518
10022
  :param scope: Scope in which this resource is defined.
9519
10023
  :param id: Construct identifier for this resource (unique in its scope).
9520
10024
  :param domain: The name of the domain that you want to update. For custom domains, this is the fully-qualified domain name, for example ``auth.example.com`` . For prefix domains, this is the prefix alone, such as ``myprefix`` .
@@ -9579,6 +10083,12 @@ class CfnUserPoolDomain(
9579
10083
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
9580
10084
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
9581
10085
 
10086
+ @builtins.property
10087
+ @jsii.member(jsii_name="userPoolDomainRef")
10088
+ def user_pool_domain_ref(self) -> _UserPoolDomainReference_8e0aecda:
10089
+ '''A reference to a UserPoolDomain resource.'''
10090
+ return typing.cast(_UserPoolDomainReference_8e0aecda, jsii.get(self, "userPoolDomainRef"))
10091
+
9582
10092
  @builtins.property
9583
10093
  @jsii.member(jsii_name="domain")
9584
10094
  def domain(self) -> builtins.str:
@@ -9649,7 +10159,7 @@ class CfnUserPoolDomain(
9649
10159
  ) -> None:
9650
10160
  '''The configuration for a hosted UI custom domain.
9651
10161
 
9652
- :param certificate_arn: The Amazon Resource Name (ARN) of an AWS Certificate Manager SSL certificate. You use this certificate for the subdomain of your custom domain.
10162
+ :param certificate_arn: The Amazon Resource Name (ARN) of an Certificate Manager SSL certificate. You use this certificate for the subdomain of your custom domain.
9653
10163
 
9654
10164
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpooldomain-customdomainconfigtype.html
9655
10165
  :exampleMetadata: fixture=_generated
@@ -9673,7 +10183,7 @@ class CfnUserPoolDomain(
9673
10183
 
9674
10184
  @builtins.property
9675
10185
  def certificate_arn(self) -> typing.Optional[builtins.str]:
9676
- '''The Amazon Resource Name (ARN) of an AWS Certificate Manager SSL certificate.
10186
+ '''The Amazon Resource Name (ARN) of an Certificate Manager SSL certificate.
9677
10187
 
9678
10188
  You use this certificate for the subdomain of your custom domain.
9679
10189
 
@@ -9815,7 +10325,7 @@ class CfnUserPoolDomainProps:
9815
10325
  )
9816
10326
 
9817
10327
 
9818
- @jsii.implements(_IInspectable_c2943556)
10328
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolGroupRef_89b16d48)
9819
10329
  class CfnUserPoolGroup(
9820
10330
  _CfnResource_9df397a6,
9821
10331
  metaclass=jsii.JSIIMeta,
@@ -9857,7 +10367,8 @@ class CfnUserPoolGroup(
9857
10367
  precedence: typing.Optional[jsii.Number] = None,
9858
10368
  role_arn: typing.Optional[builtins.str] = None,
9859
10369
  ) -> None:
9860
- '''
10370
+ '''Create a new ``AWS::Cognito::UserPoolGroup``.
10371
+
9861
10372
  :param scope: Scope in which this resource is defined.
9862
10373
  :param id: Construct identifier for this resource (unique in its scope).
9863
10374
  :param user_pool_id: The ID of the user pool where you want to create a user group.
@@ -9915,6 +10426,12 @@ class CfnUserPoolGroup(
9915
10426
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
9916
10427
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
9917
10428
 
10429
+ @builtins.property
10430
+ @jsii.member(jsii_name="userPoolGroupRef")
10431
+ def user_pool_group_ref(self) -> _UserPoolGroupReference_5e435fdd:
10432
+ '''A reference to a UserPoolGroup resource.'''
10433
+ return typing.cast(_UserPoolGroupReference_5e435fdd, jsii.get(self, "userPoolGroupRef"))
10434
+
9918
10435
  @builtins.property
9919
10436
  @jsii.member(jsii_name="userPoolId")
9920
10437
  def user_pool_id(self) -> builtins.str:
@@ -10116,7 +10633,7 @@ class CfnUserPoolGroupProps:
10116
10633
  )
10117
10634
 
10118
10635
 
10119
- @jsii.implements(_IInspectable_c2943556)
10636
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolIdentityProviderRef_935eed62)
10120
10637
  class CfnUserPoolIdentityProvider(
10121
10638
  _CfnResource_9df397a6,
10122
10639
  metaclass=jsii.JSIIMeta,
@@ -10161,7 +10678,8 @@ class CfnUserPoolIdentityProvider(
10161
10678
  attribute_mapping: typing.Any = None,
10162
10679
  idp_identifiers: typing.Optional[typing.Sequence[builtins.str]] = None,
10163
10680
  ) -> None:
10164
- '''
10681
+ '''Create a new ``AWS::Cognito::UserPoolIdentityProvider``.
10682
+
10165
10683
  :param scope: Scope in which this resource is defined.
10166
10684
  :param id: Construct identifier for this resource (unique in its scope).
10167
10685
  :param provider_details: The scopes, URLs, and identifiers for your external identity provider. The following examples describe the provider detail keys for each IdP type. These values and their schema are subject to change. Social IdP ``authorize_scopes`` values must match the values listed here. - **OpenID Connect (OIDC)** - Amazon Cognito accepts the following elements when it can't discover endpoint URLs from ``oidc_issuer`` : ``attributes_url`` , ``authorize_url`` , ``jwks_uri`` , ``token_url`` . Create or update request: ``"ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }`` Describe response: ``"ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "attributes_url_add_attributes": "false", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }`` - **SAML** - Create or update request with Metadata URL: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256" }`` Create or update request with Metadata file: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataFile": "[metadata XML]", "RequestSigningAlgorithm": "rsa-sha256" }`` The value of ``MetadataFile`` must be the plaintext metadata document with all quote (") characters escaped by backslashes. Describe response: ``"ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "ActiveEncryptionCertificate": "[certificate]", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256", "SLORedirectBindingURI": "https://auth.example.com/slo/saml", "SSORedirectBindingURI": "https://auth.example.com/sso/saml" }`` - **LoginWithAmazon** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "profile postal_code", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret"`` Describe response: ``"ProviderDetails": { "attributes_url": "https://api.amazon.com/user/profile", "attributes_url_add_attributes": "false", "authorize_scopes": "profile postal_code", "authorize_url": "https://www.amazon.com/ap/oa", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "POST", "token_url": "https://api.amazon.com/auth/o2/token" }`` - **Google** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "email profile openid", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret" }`` Describe response: ``"ProviderDetails": { "attributes_url": "https://people.googleapis.com/v1/people/me?personFields=", "attributes_url_add_attributes": "true", "authorize_scopes": "email profile openid", "authorize_url": "https://accounts.google.com/o/oauth2/v2/auth", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret", "oidc_issuer": "https://accounts.google.com", "token_request_method": "POST", "token_url": "https://www.googleapis.com/oauth2/v4/token" }`` - **SignInWithApple** - Create or update request: ``"ProviderDetails": { "authorize_scopes": "email name", "client_id": "com.example.cognito", "private_key": "1EXAMPLE", "key_id": "2EXAMPLE", "team_id": "3EXAMPLE" }`` Describe response: ``"ProviderDetails": { "attributes_url_add_attributes": "false", "authorize_scopes": "email name", "authorize_url": "https://appleid.apple.com/auth/authorize", "client_id": "com.example.cognito", "key_id": "1EXAMPLE", "oidc_issuer": "https://appleid.apple.com", "team_id": "2EXAMPLE", "token_request_method": "POST", "token_url": "https://appleid.apple.com/auth/token" }`` - **Facebook** - Create or update request: ``"ProviderDetails": { "api_version": "v17.0", "authorize_scopes": "public_profile, email", "client_id": "1example23456789", "client_secret": "provider-app-client-secret" }`` Describe response: ``"ProviderDetails": { "api_version": "v17.0", "attributes_url": "https://graph.facebook.com/v17.0/me?fields=", "attributes_url_add_attributes": "true", "authorize_scopes": "public_profile, email", "authorize_url": "https://www.facebook.com/v17.0/dialog/oauth", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "GET", "token_url": "https://graph.facebook.com/v17.0/oauth/access_token" }``
@@ -10221,6 +10739,14 @@ class CfnUserPoolIdentityProvider(
10221
10739
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
10222
10740
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
10223
10741
 
10742
+ @builtins.property
10743
+ @jsii.member(jsii_name="userPoolIdentityProviderRef")
10744
+ def user_pool_identity_provider_ref(
10745
+ self,
10746
+ ) -> _UserPoolIdentityProviderReference_a5d59f88:
10747
+ '''A reference to a UserPoolIdentityProvider resource.'''
10748
+ return typing.cast(_UserPoolIdentityProviderReference_a5d59f88, jsii.get(self, "userPoolIdentityProviderRef"))
10749
+
10224
10750
  @builtins.property
10225
10751
  @jsii.member(jsii_name="providerDetails")
10226
10752
  def provider_details(self) -> typing.Any:
@@ -11183,7 +11709,7 @@ class CfnUserPoolProps:
11183
11709
  )
11184
11710
 
11185
11711
 
11186
- @jsii.implements(_IInspectable_c2943556)
11712
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolResourceServerRef_fda874c5)
11187
11713
  class CfnUserPoolResourceServer(
11188
11714
  _CfnResource_9df397a6,
11189
11715
  metaclass=jsii.JSIIMeta,
@@ -11228,7 +11754,8 @@ class CfnUserPoolResourceServer(
11228
11754
  user_pool_id: builtins.str,
11229
11755
  scopes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnUserPoolResourceServer.ResourceServerScopeTypeProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
11230
11756
  ) -> None:
11231
- '''
11757
+ '''Create a new ``AWS::Cognito::UserPoolResourceServer``.
11758
+
11232
11759
  :param scope: Scope in which this resource is defined.
11233
11760
  :param id: Construct identifier for this resource (unique in its scope).
11234
11761
  :param identifier: A unique resource server identifier for the resource server. The identifier can be an API friendly name like ``solar-system-data`` . You can also set an API URL like ``https://solar-system-data-api.example.com`` as your identifier. Amazon Cognito represents scopes in the access token in the format ``$resource-server-identifier/$scope`` . Longer scope-identifier strings increase the size of your access tokens.
@@ -11281,6 +11808,14 @@ class CfnUserPoolResourceServer(
11281
11808
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
11282
11809
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
11283
11810
 
11811
+ @builtins.property
11812
+ @jsii.member(jsii_name="userPoolResourceServerRef")
11813
+ def user_pool_resource_server_ref(
11814
+ self,
11815
+ ) -> _UserPoolResourceServerReference_5b196bf5:
11816
+ '''A reference to a UserPoolResourceServer resource.'''
11817
+ return typing.cast(_UserPoolResourceServerReference_5b196bf5, jsii.get(self, "userPoolResourceServerRef"))
11818
+
11284
11819
  @builtins.property
11285
11820
  @jsii.member(jsii_name="identifier")
11286
11821
  def identifier(self) -> builtins.str:
@@ -11537,7 +12072,7 @@ class CfnUserPoolResourceServerProps:
11537
12072
  )
11538
12073
 
11539
12074
 
11540
- @jsii.implements(_IInspectable_c2943556)
12075
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolRiskConfigurationAttachmentRef_b5390b06)
11541
12076
  class CfnUserPoolRiskConfigurationAttachment(
11542
12077
  _CfnResource_9df397a6,
11543
12078
  metaclass=jsii.JSIIMeta,
@@ -11634,7 +12169,8 @@ class CfnUserPoolRiskConfigurationAttachment(
11634
12169
  compromised_credentials_risk_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnUserPoolRiskConfigurationAttachment.CompromisedCredentialsRiskConfigurationTypeProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
11635
12170
  risk_exception_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnUserPoolRiskConfigurationAttachment.RiskExceptionConfigurationTypeProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
11636
12171
  ) -> None:
11637
- '''
12172
+ '''Create a new ``AWS::Cognito::UserPoolRiskConfigurationAttachment``.
12173
+
11638
12174
  :param scope: Scope in which this resource is defined.
11639
12175
  :param id: Construct identifier for this resource (unique in its scope).
11640
12176
  :param client_id: The app client where this configuration is applied. When this parameter isn't present, the risk configuration applies to all user pool app clients that don't have client-level settings.
@@ -11692,6 +12228,14 @@ class CfnUserPoolRiskConfigurationAttachment(
11692
12228
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
11693
12229
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
11694
12230
 
12231
+ @builtins.property
12232
+ @jsii.member(jsii_name="userPoolRiskConfigurationAttachmentRef")
12233
+ def user_pool_risk_configuration_attachment_ref(
12234
+ self,
12235
+ ) -> _UserPoolRiskConfigurationAttachmentReference_815104e9:
12236
+ '''A reference to a UserPoolRiskConfigurationAttachment resource.'''
12237
+ return typing.cast(_UserPoolRiskConfigurationAttachmentReference_815104e9, jsii.get(self, "userPoolRiskConfigurationAttachmentRef"))
12238
+
11695
12239
  @builtins.property
11696
12240
  @jsii.member(jsii_name="clientId")
11697
12241
  def client_id(self) -> builtins.str:
@@ -12239,7 +12783,7 @@ class CfnUserPoolRiskConfigurationAttachment(
12239
12783
  :param from_: The email address that sends the email message. The address must be either individually verified with Amazon Simple Email Service, or from a domain that has been verified with Amazon SES.
12240
12784
  :param mfa_email: The template for the email message that your user pool sends when MFA is challenged in response to a detected risk.
12241
12785
  :param no_action_email: The template for the email message that your user pool sends when no action is taken in response to a detected risk.
12242
- :param reply_to: The reply-to email address of an email template.
12786
+ :param reply_to: The reply-to email address of an email template. Can be an email address in the format ``admin@example.com`` or ``Administrator <admin@example.com>`` .
12243
12787
 
12244
12788
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html
12245
12789
  :exampleMetadata: fixture=_generated
@@ -12361,6 +12905,8 @@ class CfnUserPoolRiskConfigurationAttachment(
12361
12905
  def reply_to(self) -> typing.Optional[builtins.str]:
12362
12906
  '''The reply-to email address of an email template.
12363
12907
 
12908
+ Can be an email address in the format ``admin@example.com`` or ``Administrator <admin@example.com>`` .
12909
+
12364
12910
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype.html#cfn-cognito-userpoolriskconfigurationattachment-notifyconfigurationtype-replyto
12365
12911
  '''
12366
12912
  result = self._values.get("reply_to")
@@ -12739,7 +13285,7 @@ class CfnUserPoolRiskConfigurationAttachmentProps:
12739
13285
  )
12740
13286
 
12741
13287
 
12742
- @jsii.implements(_IInspectable_c2943556)
13288
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolUICustomizationAttachmentRef_855e6497)
12743
13289
  class CfnUserPoolUICustomizationAttachment(
12744
13290
  _CfnResource_9df397a6,
12745
13291
  metaclass=jsii.JSIIMeta,
@@ -12775,7 +13321,8 @@ class CfnUserPoolUICustomizationAttachment(
12775
13321
  user_pool_id: builtins.str,
12776
13322
  css: typing.Optional[builtins.str] = None,
12777
13323
  ) -> None:
12778
- '''
13324
+ '''Create a new ``AWS::Cognito::UserPoolUICustomizationAttachment``.
13325
+
12779
13326
  :param scope: Scope in which this resource is defined.
12780
13327
  :param id: Construct identifier for this resource (unique in its scope).
12781
13328
  :param client_id: The app client ID for your UI customization. When this value isn't present, the customization applies to all user pool app clients that don't have client-level settings..
@@ -12827,6 +13374,14 @@ class CfnUserPoolUICustomizationAttachment(
12827
13374
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
12828
13375
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
12829
13376
 
13377
+ @builtins.property
13378
+ @jsii.member(jsii_name="userPoolUiCustomizationAttachmentRef")
13379
+ def user_pool_ui_customization_attachment_ref(
13380
+ self,
13381
+ ) -> _UserPoolUICustomizationAttachmentReference_2c1e7860:
13382
+ '''A reference to a UserPoolUICustomizationAttachment resource.'''
13383
+ return typing.cast(_UserPoolUICustomizationAttachmentReference_2c1e7860, jsii.get(self, "userPoolUiCustomizationAttachmentRef"))
13384
+
12830
13385
  @builtins.property
12831
13386
  @jsii.member(jsii_name="clientId")
12832
13387
  def client_id(self) -> builtins.str:
@@ -12960,7 +13515,7 @@ class CfnUserPoolUICustomizationAttachmentProps:
12960
13515
  )
12961
13516
 
12962
13517
 
12963
- @jsii.implements(_IInspectable_c2943556)
13518
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolUserRef_cbf1b211)
12964
13519
  class CfnUserPoolUser(
12965
13520
  _CfnResource_9df397a6,
12966
13521
  metaclass=jsii.JSIIMeta,
@@ -13014,11 +13569,12 @@ class CfnUserPoolUser(
13014
13569
  username: typing.Optional[builtins.str] = None,
13015
13570
  validation_data: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnUserPoolUser.AttributeTypeProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
13016
13571
  ) -> None:
13017
- '''
13572
+ '''Create a new ``AWS::Cognito::UserPoolUser``.
13573
+
13018
13574
  :param scope: Scope in which this resource is defined.
13019
13575
  :param id: Construct identifier for this resource (unique in its scope).
13020
13576
  :param user_pool_id: The ID of the user pool where you want to create a user.
13021
- :param client_metadata: A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers. You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``ClientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs. For more information, see `Using Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* . .. epigraph:: When you use the ``ClientMetadata`` parameter, note that Amazon Cognito won't do the following: - Store the ``ClientMetadata`` value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ``ClientMetadata`` parameter serves no purpose. - Validate the ``ClientMetadata`` value. - Encrypt the ``ClientMetadata`` value. Don't send sensitive information in this parameter.
13577
+ :param client_metadata: A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers. You create custom workflows by assigning AWS Lambda functions to user pool triggers. When Amazon Cognito invokes any of these functions, it passes a JSON payload, which the function receives as input. This payload contains a ``clientMetadata`` attribute that provides the data that you assigned to the ClientMetadata parameter in your request. In your function code, you can process the ``clientMetadata`` value to enhance your workflow for your specific needs. To review the Lambda trigger types that Amazon Cognito invokes at runtime with API requests, see `Connecting API actions to Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-working-with-lambda-triggers.html#lambda-triggers-by-event>`_ in the *Amazon Cognito Developer Guide* . .. epigraph:: When you use the ``ClientMetadata`` parameter, note that Amazon Cognito won't do the following: - Store the ``ClientMetadata`` value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ``ClientMetadata`` parameter serves no purpose. - Validate the ``ClientMetadata`` value. - Encrypt the ``ClientMetadata`` value. Don't send sensitive information in this parameter.
13022
13578
  :param desired_delivery_mediums: Specify ``EMAIL`` if email will be used to send the welcome message. Specify ``SMS`` if the phone number will be used. The default value is ``SMS`` . You can specify more than one value.
13023
13579
  :param force_alias_creation: This parameter is used only if the ``phone_number_verified`` or ``email_verified`` attribute is set to ``True`` . Otherwise, it is ignored. If this parameter is set to ``True`` and the phone number or email address specified in the ``UserAttributes`` parameter already exists as an alias with a different user, this request migrates the alias from the previous user to the newly-created user. The previous user will no longer be able to log in using that alias. If this parameter is set to ``False`` , the API throws an ``AliasExistsException`` error if the alias already exists. The default value is ``False`` .
13024
13580
  :param message_action: Set to ``RESEND`` to resend the invitation message to a user that already exists, and to reset the temporary-password duration with a new temporary password. Set to ``SUPPRESS`` to suppress sending the message. You can specify only one value.
@@ -13078,6 +13634,12 @@ class CfnUserPoolUser(
13078
13634
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
13079
13635
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
13080
13636
 
13637
+ @builtins.property
13638
+ @jsii.member(jsii_name="userPoolUserRef")
13639
+ def user_pool_user_ref(self) -> _UserPoolUserReference_b50e0a97:
13640
+ '''A reference to a UserPoolUser resource.'''
13641
+ return typing.cast(_UserPoolUserReference_b50e0a97, jsii.get(self, "userPoolUserRef"))
13642
+
13081
13643
  @builtins.property
13082
13644
  @jsii.member(jsii_name="userPoolId")
13083
13645
  def user_pool_id(self) -> builtins.str:
@@ -13306,7 +13868,7 @@ class CfnUserPoolUserProps:
13306
13868
  '''Properties for defining a ``CfnUserPoolUser``.
13307
13869
 
13308
13870
  :param user_pool_id: The ID of the user pool where you want to create a user.
13309
- :param client_metadata: A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers. You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``ClientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs. For more information, see `Using Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* . .. epigraph:: When you use the ``ClientMetadata`` parameter, note that Amazon Cognito won't do the following: - Store the ``ClientMetadata`` value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ``ClientMetadata`` parameter serves no purpose. - Validate the ``ClientMetadata`` value. - Encrypt the ``ClientMetadata`` value. Don't send sensitive information in this parameter.
13871
+ :param client_metadata: A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers. You create custom workflows by assigning AWS Lambda functions to user pool triggers. When Amazon Cognito invokes any of these functions, it passes a JSON payload, which the function receives as input. This payload contains a ``clientMetadata`` attribute that provides the data that you assigned to the ClientMetadata parameter in your request. In your function code, you can process the ``clientMetadata`` value to enhance your workflow for your specific needs. To review the Lambda trigger types that Amazon Cognito invokes at runtime with API requests, see `Connecting API actions to Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-working-with-lambda-triggers.html#lambda-triggers-by-event>`_ in the *Amazon Cognito Developer Guide* . .. epigraph:: When you use the ``ClientMetadata`` parameter, note that Amazon Cognito won't do the following: - Store the ``ClientMetadata`` value. This data is available only to AWS Lambda triggers that are assigned to a user pool to support custom workflows. If your user pool configuration doesn't include triggers, the ``ClientMetadata`` parameter serves no purpose. - Validate the ``ClientMetadata`` value. - Encrypt the ``ClientMetadata`` value. Don't send sensitive information in this parameter.
13310
13872
  :param desired_delivery_mediums: Specify ``EMAIL`` if email will be used to send the welcome message. Specify ``SMS`` if the phone number will be used. The default value is ``SMS`` . You can specify more than one value.
13311
13873
  :param force_alias_creation: This parameter is used only if the ``phone_number_verified`` or ``email_verified`` attribute is set to ``True`` . Otherwise, it is ignored. If this parameter is set to ``True`` and the phone number or email address specified in the ``UserAttributes`` parameter already exists as an alias with a different user, this request migrates the alias from the previous user to the newly-created user. The previous user will no longer be able to log in using that alias. If this parameter is set to ``False`` , the API throws an ``AliasExistsException`` error if the alias already exists. The default value is ``False`` .
13312
13874
  :param message_action: Set to ``RESEND`` to resend the invitation message to a user that already exists, and to reset the temporary-password duration with a new temporary password. Set to ``SUPPRESS`` to suppress sending the message. You can specify only one value.
@@ -13388,9 +13950,11 @@ class CfnUserPoolUserProps:
13388
13950
  ) -> typing.Optional[typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b]]:
13389
13951
  '''A map of custom key-value pairs that you can provide as input for any custom workflows that this action triggers.
13390
13952
 
13391
- You create custom workflows by assigning AWS Lambda functions to user pool triggers. When you use the AdminCreateUser API action, Amazon Cognito invokes the function that is assigned to the *pre sign-up* trigger. When Amazon Cognito invokes this function, it passes a JSON payload, which the function receives as input. This payload contains a ``ClientMetadata`` attribute, which provides the data that you assigned to the ClientMetadata parameter in your AdminCreateUser request. In your function code in AWS Lambda , you can process the ``clientMetadata`` value to enhance your workflow for your specific needs.
13953
+ You create custom workflows by assigning AWS Lambda functions to user pool triggers.
13392
13954
 
13393
- For more information, see `Using Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-identity-pools-working-with-aws-lambda-triggers.html>`_ in the *Amazon Cognito Developer Guide* .
13955
+ When Amazon Cognito invokes any of these functions, it passes a JSON payload, which the function receives as input. This payload contains a ``clientMetadata`` attribute that provides the data that you assigned to the ClientMetadata parameter in your request. In your function code, you can process the ``clientMetadata`` value to enhance your workflow for your specific needs.
13956
+
13957
+ To review the Lambda trigger types that Amazon Cognito invokes at runtime with API requests, see `Connecting API actions to Lambda triggers <https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-working-with-lambda-triggers.html#lambda-triggers-by-event>`_ in the *Amazon Cognito Developer Guide* .
13394
13958
  .. epigraph::
13395
13959
 
13396
13960
  When you use the ``ClientMetadata`` parameter, note that Amazon Cognito won't do the following:
@@ -13511,7 +14075,7 @@ class CfnUserPoolUserProps:
13511
14075
  )
13512
14076
 
13513
14077
 
13514
- @jsii.implements(_IInspectable_c2943556)
14078
+ @jsii.implements(_IInspectable_c2943556, _IUserPoolUserToGroupAttachmentRef_04a5a41e)
13515
14079
  class CfnUserPoolUserToGroupAttachment(
13516
14080
  _CfnResource_9df397a6,
13517
14081
  metaclass=jsii.JSIIMeta,
@@ -13554,7 +14118,8 @@ class CfnUserPoolUserToGroupAttachment(
13554
14118
  username: builtins.str,
13555
14119
  user_pool_id: builtins.str,
13556
14120
  ) -> None:
13557
- '''
14121
+ '''Create a new ``AWS::Cognito::UserPoolUserToGroupAttachment``.
14122
+
13558
14123
  :param scope: Scope in which this resource is defined.
13559
14124
  :param id: Construct identifier for this resource (unique in its scope).
13560
14125
  :param group_name: The name of the group that you want to add your user to.
@@ -13606,6 +14171,14 @@ class CfnUserPoolUserToGroupAttachment(
13606
14171
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
13607
14172
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
13608
14173
 
14174
+ @builtins.property
14175
+ @jsii.member(jsii_name="userPoolUserToGroupAttachmentRef")
14176
+ def user_pool_user_to_group_attachment_ref(
14177
+ self,
14178
+ ) -> _UserPoolUserToGroupAttachmentReference_fa1a0479:
14179
+ '''A reference to a UserPoolUserToGroupAttachment resource.'''
14180
+ return typing.cast(_UserPoolUserToGroupAttachmentReference_fa1a0479, jsii.get(self, "userPoolUserToGroupAttachmentRef"))
14181
+
13609
14182
  @builtins.property
13610
14183
  @jsii.member(jsii_name="groupName")
13611
14184
  def group_name(self) -> builtins.str:
@@ -14448,6 +15021,7 @@ class IUserPool(_IResource_c80c4260, typing_extensions.Protocol):
14448
15021
  o_auth: typing.Optional[typing.Union["OAuthSettings", typing.Dict[builtins.str, typing.Any]]] = None,
14449
15022
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
14450
15023
  read_attributes: typing.Optional[ClientAttributes] = None,
15024
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
14451
15025
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
14452
15026
  supported_identity_providers: typing.Optional[typing.Sequence["UserPoolClientIdentityProvider"]] = None,
14453
15027
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -14468,6 +15042,7 @@ class IUserPool(_IResource_c80c4260, typing_extensions.Protocol):
14468
15042
  :param o_auth: OAuth settings for this client to interact with the app. An error is thrown when this is specified and ``disableOAuth`` is set. Default: - see defaults in ``OAuthSettings``. meaningless if ``disableOAuth`` is set.
14469
15043
  :param prevent_user_existence_errors: Whether Cognito returns a UserNotFoundException exception when the user does not exist in the user pool (false), or whether it returns another type of error that doesn't reveal the user's absence. Default: false
14470
15044
  :param read_attributes: The set of attributes this client will be able to read. Default: - all standard and custom attributes
15045
+ :param refresh_token_rotation_grace_period: Enables refresh token rotation when set. Defines the grace period for the original refresh token (0-60 seconds). Default: - undefined (refresh token rotation is disabled)
14471
15046
  :param refresh_token_validity: Validity of the refresh token. Values between 60 minutes and 10 years are valid. Default: Duration.days(30)
14472
15047
  :param supported_identity_providers: The list of identity providers that users should be able to use to sign in using this client. Default: - supports all identity providers that are registered with the user pool. If the user pool and/or identity providers are imported, either specify this option explicitly or ensure that the identity providers are registered with the user pool using the ``UserPool.registerIdentityProvider()`` API.
14473
15048
  :param user_pool_client_name: Name of the application client. Default: - cloudformation generated name
@@ -14505,7 +15080,7 @@ class IUserPool(_IResource_c80c4260, typing_extensions.Protocol):
14505
15080
  description: typing.Optional[builtins.str] = None,
14506
15081
  group_name: typing.Optional[builtins.str] = None,
14507
15082
  precedence: typing.Optional[jsii.Number] = None,
14508
- role: typing.Optional[_IRole_235f5d8e] = None,
15083
+ role: typing.Optional[_IRoleRef_8400221f] = None,
14509
15084
  ) -> "UserPoolGroup":
14510
15085
  '''Add a new group to this user pool.
14511
15086
 
@@ -14618,6 +15193,7 @@ class _IUserPoolProxy(
14618
15193
  o_auth: typing.Optional[typing.Union["OAuthSettings", typing.Dict[builtins.str, typing.Any]]] = None,
14619
15194
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
14620
15195
  read_attributes: typing.Optional[ClientAttributes] = None,
15196
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
14621
15197
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
14622
15198
  supported_identity_providers: typing.Optional[typing.Sequence["UserPoolClientIdentityProvider"]] = None,
14623
15199
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -14638,6 +15214,7 @@ class _IUserPoolProxy(
14638
15214
  :param o_auth: OAuth settings for this client to interact with the app. An error is thrown when this is specified and ``disableOAuth`` is set. Default: - see defaults in ``OAuthSettings``. meaningless if ``disableOAuth`` is set.
14639
15215
  :param prevent_user_existence_errors: Whether Cognito returns a UserNotFoundException exception when the user does not exist in the user pool (false), or whether it returns another type of error that doesn't reveal the user's absence. Default: false
14640
15216
  :param read_attributes: The set of attributes this client will be able to read. Default: - all standard and custom attributes
15217
+ :param refresh_token_rotation_grace_period: Enables refresh token rotation when set. Defines the grace period for the original refresh token (0-60 seconds). Default: - undefined (refresh token rotation is disabled)
14641
15218
  :param refresh_token_validity: Validity of the refresh token. Values between 60 minutes and 10 years are valid. Default: Duration.days(30)
14642
15219
  :param supported_identity_providers: The list of identity providers that users should be able to use to sign in using this client. Default: - supports all identity providers that are registered with the user pool. If the user pool and/or identity providers are imported, either specify this option explicitly or ensure that the identity providers are registered with the user pool using the ``UserPool.registerIdentityProvider()`` API.
14643
15220
  :param user_pool_client_name: Name of the application client. Default: - cloudformation generated name
@@ -14661,6 +15238,7 @@ class _IUserPoolProxy(
14661
15238
  o_auth=o_auth,
14662
15239
  prevent_user_existence_errors=prevent_user_existence_errors,
14663
15240
  read_attributes=read_attributes,
15241
+ refresh_token_rotation_grace_period=refresh_token_rotation_grace_period,
14664
15242
  refresh_token_validity=refresh_token_validity,
14665
15243
  supported_identity_providers=supported_identity_providers,
14666
15244
  user_pool_client_name=user_pool_client_name,
@@ -14706,7 +15284,7 @@ class _IUserPoolProxy(
14706
15284
  description: typing.Optional[builtins.str] = None,
14707
15285
  group_name: typing.Optional[builtins.str] = None,
14708
15286
  precedence: typing.Optional[jsii.Number] = None,
14709
- role: typing.Optional[_IRole_235f5d8e] = None,
15287
+ role: typing.Optional[_IRoleRef_8400221f] = None,
14710
15288
  ) -> "UserPoolGroup":
14711
15289
  '''Add a new group to this user pool.
14712
15290
 
@@ -17897,7 +18475,7 @@ class UserPool(
17897
18475
  advanced_security_mode: typing.Optional[AdvancedSecurityMode] = None,
17898
18476
  auto_verify: typing.Optional[typing.Union[AutoVerifiedAttrs, typing.Dict[builtins.str, typing.Any]]] = None,
17899
18477
  custom_attributes: typing.Optional[typing.Mapping[builtins.str, ICustomAttribute]] = None,
17900
- custom_sender_kms_key: typing.Optional[_IKey_5f11635f] = None,
18478
+ custom_sender_kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
17901
18479
  custom_threat_protection_mode: typing.Optional[CustomThreatProtectionMode] = None,
17902
18480
  deletion_protection: typing.Optional[builtins.bool] = None,
17903
18481
  device_tracking: typing.Optional[typing.Union[DeviceTracking, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -17917,7 +18495,7 @@ class UserPool(
17917
18495
  sign_in_aliases: typing.Optional[typing.Union[SignInAliases, typing.Dict[builtins.str, typing.Any]]] = None,
17918
18496
  sign_in_case_sensitive: typing.Optional[builtins.bool] = None,
17919
18497
  sign_in_policy: typing.Optional[typing.Union[SignInPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
17920
- sms_role: typing.Optional[_IRole_235f5d8e] = None,
18498
+ sms_role: typing.Optional[_IRoleRef_8400221f] = None,
17921
18499
  sms_role_external_id: typing.Optional[builtins.str] = None,
17922
18500
  sns_region: typing.Optional[builtins.str] = None,
17923
18501
  standard_attributes: typing.Optional[typing.Union[StandardAttributes, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -18062,6 +18640,7 @@ class UserPool(
18062
18640
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
18063
18641
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
18064
18642
  read_attributes: typing.Optional[ClientAttributes] = None,
18643
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
18065
18644
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
18066
18645
  supported_identity_providers: typing.Optional[typing.Sequence["UserPoolClientIdentityProvider"]] = None,
18067
18646
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -18082,6 +18661,7 @@ class UserPool(
18082
18661
  :param o_auth: OAuth settings for this client to interact with the app. An error is thrown when this is specified and ``disableOAuth`` is set. Default: - see defaults in ``OAuthSettings``. meaningless if ``disableOAuth`` is set.
18083
18662
  :param prevent_user_existence_errors: Whether Cognito returns a UserNotFoundException exception when the user does not exist in the user pool (false), or whether it returns another type of error that doesn't reveal the user's absence. Default: false
18084
18663
  :param read_attributes: The set of attributes this client will be able to read. Default: - all standard and custom attributes
18664
+ :param refresh_token_rotation_grace_period: Enables refresh token rotation when set. Defines the grace period for the original refresh token (0-60 seconds). Default: - undefined (refresh token rotation is disabled)
18085
18665
  :param refresh_token_validity: Validity of the refresh token. Values between 60 minutes and 10 years are valid. Default: Duration.days(30)
18086
18666
  :param supported_identity_providers: The list of identity providers that users should be able to use to sign in using this client. Default: - supports all identity providers that are registered with the user pool. If the user pool and/or identity providers are imported, either specify this option explicitly or ensure that the identity providers are registered with the user pool using the ``UserPool.registerIdentityProvider()`` API.
18087
18667
  :param user_pool_client_name: Name of the application client. Default: - cloudformation generated name
@@ -18103,6 +18683,7 @@ class UserPool(
18103
18683
  o_auth=o_auth,
18104
18684
  prevent_user_existence_errors=prevent_user_existence_errors,
18105
18685
  read_attributes=read_attributes,
18686
+ refresh_token_rotation_grace_period=refresh_token_rotation_grace_period,
18106
18687
  refresh_token_validity=refresh_token_validity,
18107
18688
  supported_identity_providers=supported_identity_providers,
18108
18689
  user_pool_client_name=user_pool_client_name,
@@ -18146,7 +18727,7 @@ class UserPool(
18146
18727
  description: typing.Optional[builtins.str] = None,
18147
18728
  group_name: typing.Optional[builtins.str] = None,
18148
18729
  precedence: typing.Optional[jsii.Number] = None,
18149
- role: typing.Optional[_IRole_235f5d8e] = None,
18730
+ role: typing.Optional[_IRoleRef_8400221f] = None,
18150
18731
  ) -> "UserPoolGroup":
18151
18732
  '''Add a new group to this user pool.
18152
18733
 
@@ -18334,6 +18915,7 @@ class UserPoolClient(
18334
18915
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
18335
18916
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
18336
18917
  read_attributes: typing.Optional[ClientAttributes] = None,
18918
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
18337
18919
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
18338
18920
  supported_identity_providers: typing.Optional[typing.Sequence["UserPoolClientIdentityProvider"]] = None,
18339
18921
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -18355,6 +18937,7 @@ class UserPoolClient(
18355
18937
  :param o_auth: OAuth settings for this client to interact with the app. An error is thrown when this is specified and ``disableOAuth`` is set. Default: - see defaults in ``OAuthSettings``. meaningless if ``disableOAuth`` is set.
18356
18938
  :param prevent_user_existence_errors: Whether Cognito returns a UserNotFoundException exception when the user does not exist in the user pool (false), or whether it returns another type of error that doesn't reveal the user's absence. Default: false
18357
18939
  :param read_attributes: The set of attributes this client will be able to read. Default: - all standard and custom attributes
18940
+ :param refresh_token_rotation_grace_period: Enables refresh token rotation when set. Defines the grace period for the original refresh token (0-60 seconds). Default: - undefined (refresh token rotation is disabled)
18358
18941
  :param refresh_token_validity: Validity of the refresh token. Values between 60 minutes and 10 years are valid. Default: Duration.days(30)
18359
18942
  :param supported_identity_providers: The list of identity providers that users should be able to use to sign in using this client. Default: - supports all identity providers that are registered with the user pool. If the user pool and/or identity providers are imported, either specify this option explicitly or ensure that the identity providers are registered with the user pool using the ``UserPool.registerIdentityProvider()`` API.
18360
18943
  :param user_pool_client_name: Name of the application client. Default: - cloudformation generated name
@@ -18378,6 +18961,7 @@ class UserPoolClient(
18378
18961
  o_auth=o_auth,
18379
18962
  prevent_user_existence_errors=prevent_user_existence_errors,
18380
18963
  read_attributes=read_attributes,
18964
+ refresh_token_rotation_grace_period=refresh_token_rotation_grace_period,
18381
18965
  refresh_token_validity=refresh_token_validity,
18382
18966
  supported_identity_providers=supported_identity_providers,
18383
18967
  user_pool_client_name=user_pool_client_name,
@@ -18536,6 +19120,7 @@ class UserPoolClientIdentityProvider(
18536
19120
  "o_auth": "oAuth",
18537
19121
  "prevent_user_existence_errors": "preventUserExistenceErrors",
18538
19122
  "read_attributes": "readAttributes",
19123
+ "refresh_token_rotation_grace_period": "refreshTokenRotationGracePeriod",
18539
19124
  "refresh_token_validity": "refreshTokenValidity",
18540
19125
  "supported_identity_providers": "supportedIdentityProviders",
18541
19126
  "user_pool_client_name": "userPoolClientName",
@@ -18558,6 +19143,7 @@ class UserPoolClientOptions:
18558
19143
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
18559
19144
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
18560
19145
  read_attributes: typing.Optional[ClientAttributes] = None,
19146
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
18561
19147
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
18562
19148
  supported_identity_providers: typing.Optional[typing.Sequence[UserPoolClientIdentityProvider]] = None,
18563
19149
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -18577,6 +19163,7 @@ class UserPoolClientOptions:
18577
19163
  :param o_auth: OAuth settings for this client to interact with the app. An error is thrown when this is specified and ``disableOAuth`` is set. Default: - see defaults in ``OAuthSettings``. meaningless if ``disableOAuth`` is set.
18578
19164
  :param prevent_user_existence_errors: Whether Cognito returns a UserNotFoundException exception when the user does not exist in the user pool (false), or whether it returns another type of error that doesn't reveal the user's absence. Default: false
18579
19165
  :param read_attributes: The set of attributes this client will be able to read. Default: - all standard and custom attributes
19166
+ :param refresh_token_rotation_grace_period: Enables refresh token rotation when set. Defines the grace period for the original refresh token (0-60 seconds). Default: - undefined (refresh token rotation is disabled)
18580
19167
  :param refresh_token_validity: Validity of the refresh token. Values between 60 minutes and 10 years are valid. Default: Duration.days(30)
18581
19168
  :param supported_identity_providers: The list of identity providers that users should be able to use to sign in using this client. Default: - supports all identity providers that are registered with the user pool. If the user pool and/or identity providers are imported, either specify this option explicitly or ensure that the identity providers are registered with the user pool using the ``UserPool.registerIdentityProvider()`` API.
18582
19169
  :param user_pool_client_name: Name of the application client. Default: - cloudformation generated name
@@ -18618,6 +19205,7 @@ class UserPoolClientOptions:
18618
19205
  check_type(argname="argument o_auth", value=o_auth, expected_type=type_hints["o_auth"])
18619
19206
  check_type(argname="argument prevent_user_existence_errors", value=prevent_user_existence_errors, expected_type=type_hints["prevent_user_existence_errors"])
18620
19207
  check_type(argname="argument read_attributes", value=read_attributes, expected_type=type_hints["read_attributes"])
19208
+ check_type(argname="argument refresh_token_rotation_grace_period", value=refresh_token_rotation_grace_period, expected_type=type_hints["refresh_token_rotation_grace_period"])
18621
19209
  check_type(argname="argument refresh_token_validity", value=refresh_token_validity, expected_type=type_hints["refresh_token_validity"])
18622
19210
  check_type(argname="argument supported_identity_providers", value=supported_identity_providers, expected_type=type_hints["supported_identity_providers"])
18623
19211
  check_type(argname="argument user_pool_client_name", value=user_pool_client_name, expected_type=type_hints["user_pool_client_name"])
@@ -18647,6 +19235,8 @@ class UserPoolClientOptions:
18647
19235
  self._values["prevent_user_existence_errors"] = prevent_user_existence_errors
18648
19236
  if read_attributes is not None:
18649
19237
  self._values["read_attributes"] = read_attributes
19238
+ if refresh_token_rotation_grace_period is not None:
19239
+ self._values["refresh_token_rotation_grace_period"] = refresh_token_rotation_grace_period
18650
19240
  if refresh_token_validity is not None:
18651
19241
  self._values["refresh_token_validity"] = refresh_token_validity
18652
19242
  if supported_identity_providers is not None:
@@ -18793,6 +19383,21 @@ class UserPoolClientOptions:
18793
19383
  result = self._values.get("read_attributes")
18794
19384
  return typing.cast(typing.Optional[ClientAttributes], result)
18795
19385
 
19386
+ @builtins.property
19387
+ def refresh_token_rotation_grace_period(
19388
+ self,
19389
+ ) -> typing.Optional[_Duration_4839e8c3]:
19390
+ '''Enables refresh token rotation when set.
19391
+
19392
+ Defines the grace period for the original refresh token (0-60 seconds).
19393
+
19394
+ :default: - undefined (refresh token rotation is disabled)
19395
+
19396
+ :see: https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-the-refresh-token.html#using-the-refresh-token-rotation
19397
+ '''
19398
+ result = self._values.get("refresh_token_rotation_grace_period")
19399
+ return typing.cast(typing.Optional[_Duration_4839e8c3], result)
19400
+
18796
19401
  @builtins.property
18797
19402
  def refresh_token_validity(self) -> typing.Optional[_Duration_4839e8c3]:
18798
19403
  '''Validity of the refresh token.
@@ -18869,6 +19474,7 @@ class UserPoolClientOptions:
18869
19474
  "o_auth": "oAuth",
18870
19475
  "prevent_user_existence_errors": "preventUserExistenceErrors",
18871
19476
  "read_attributes": "readAttributes",
19477
+ "refresh_token_rotation_grace_period": "refreshTokenRotationGracePeriod",
18872
19478
  "refresh_token_validity": "refreshTokenValidity",
18873
19479
  "supported_identity_providers": "supportedIdentityProviders",
18874
19480
  "user_pool_client_name": "userPoolClientName",
@@ -18892,6 +19498,7 @@ class UserPoolClientProps(UserPoolClientOptions):
18892
19498
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
18893
19499
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
18894
19500
  read_attributes: typing.Optional[ClientAttributes] = None,
19501
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
18895
19502
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
18896
19503
  supported_identity_providers: typing.Optional[typing.Sequence[UserPoolClientIdentityProvider]] = None,
18897
19504
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -18912,6 +19519,7 @@ class UserPoolClientProps(UserPoolClientOptions):
18912
19519
  :param o_auth: OAuth settings for this client to interact with the app. An error is thrown when this is specified and ``disableOAuth`` is set. Default: - see defaults in ``OAuthSettings``. meaningless if ``disableOAuth`` is set.
18913
19520
  :param prevent_user_existence_errors: Whether Cognito returns a UserNotFoundException exception when the user does not exist in the user pool (false), or whether it returns another type of error that doesn't reveal the user's absence. Default: false
18914
19521
  :param read_attributes: The set of attributes this client will be able to read. Default: - all standard and custom attributes
19522
+ :param refresh_token_rotation_grace_period: Enables refresh token rotation when set. Defines the grace period for the original refresh token (0-60 seconds). Default: - undefined (refresh token rotation is disabled)
18915
19523
  :param refresh_token_validity: Validity of the refresh token. Values between 60 minutes and 10 years are valid. Default: Duration.days(30)
18916
19524
  :param supported_identity_providers: The list of identity providers that users should be able to use to sign in using this client. Default: - supports all identity providers that are registered with the user pool. If the user pool and/or identity providers are imported, either specify this option explicitly or ensure that the identity providers are registered with the user pool using the ``UserPool.registerIdentityProvider()`` API.
18917
19525
  :param user_pool_client_name: Name of the application client. Default: - cloudformation generated name
@@ -18966,6 +19574,7 @@ class UserPoolClientProps(UserPoolClientOptions):
18966
19574
  check_type(argname="argument o_auth", value=o_auth, expected_type=type_hints["o_auth"])
18967
19575
  check_type(argname="argument prevent_user_existence_errors", value=prevent_user_existence_errors, expected_type=type_hints["prevent_user_existence_errors"])
18968
19576
  check_type(argname="argument read_attributes", value=read_attributes, expected_type=type_hints["read_attributes"])
19577
+ check_type(argname="argument refresh_token_rotation_grace_period", value=refresh_token_rotation_grace_period, expected_type=type_hints["refresh_token_rotation_grace_period"])
18969
19578
  check_type(argname="argument refresh_token_validity", value=refresh_token_validity, expected_type=type_hints["refresh_token_validity"])
18970
19579
  check_type(argname="argument supported_identity_providers", value=supported_identity_providers, expected_type=type_hints["supported_identity_providers"])
18971
19580
  check_type(argname="argument user_pool_client_name", value=user_pool_client_name, expected_type=type_hints["user_pool_client_name"])
@@ -18998,6 +19607,8 @@ class UserPoolClientProps(UserPoolClientOptions):
18998
19607
  self._values["prevent_user_existence_errors"] = prevent_user_existence_errors
18999
19608
  if read_attributes is not None:
19000
19609
  self._values["read_attributes"] = read_attributes
19610
+ if refresh_token_rotation_grace_period is not None:
19611
+ self._values["refresh_token_rotation_grace_period"] = refresh_token_rotation_grace_period
19001
19612
  if refresh_token_validity is not None:
19002
19613
  self._values["refresh_token_validity"] = refresh_token_validity
19003
19614
  if supported_identity_providers is not None:
@@ -19144,6 +19755,21 @@ class UserPoolClientProps(UserPoolClientOptions):
19144
19755
  result = self._values.get("read_attributes")
19145
19756
  return typing.cast(typing.Optional[ClientAttributes], result)
19146
19757
 
19758
+ @builtins.property
19759
+ def refresh_token_rotation_grace_period(
19760
+ self,
19761
+ ) -> typing.Optional[_Duration_4839e8c3]:
19762
+ '''Enables refresh token rotation when set.
19763
+
19764
+ Defines the grace period for the original refresh token (0-60 seconds).
19765
+
19766
+ :default: - undefined (refresh token rotation is disabled)
19767
+
19768
+ :see: https://docs.aws.amazon.com/cognito/latest/developerguide/amazon-cognito-user-pools-using-the-refresh-token.html#using-the-refresh-token-rotation
19769
+ '''
19770
+ result = self._values.get("refresh_token_rotation_grace_period")
19771
+ return typing.cast(typing.Optional[_Duration_4839e8c3], result)
19772
+
19147
19773
  @builtins.property
19148
19774
  def refresh_token_validity(self) -> typing.Optional[_Duration_4839e8c3]:
19149
19775
  '''Validity of the refresh token.
@@ -19875,7 +20501,7 @@ class UserPoolGroup(
19875
20501
  description: typing.Optional[builtins.str] = None,
19876
20502
  group_name: typing.Optional[builtins.str] = None,
19877
20503
  precedence: typing.Optional[jsii.Number] = None,
19878
- role: typing.Optional[_IRole_235f5d8e] = None,
20504
+ role: typing.Optional[_IRoleRef_8400221f] = None,
19879
20505
  ) -> None:
19880
20506
  '''
19881
20507
  :param scope: -
@@ -19951,7 +20577,7 @@ class UserPoolGroupOptions:
19951
20577
  description: typing.Optional[builtins.str] = None,
19952
20578
  group_name: typing.Optional[builtins.str] = None,
19953
20579
  precedence: typing.Optional[jsii.Number] = None,
19954
- role: typing.Optional[_IRole_235f5d8e] = None,
20580
+ role: typing.Optional[_IRoleRef_8400221f] = None,
19955
20581
  ) -> None:
19956
20582
  '''Options to create a UserPoolGroup.
19957
20583
 
@@ -20037,13 +20663,13 @@ class UserPoolGroupOptions:
20037
20663
  return typing.cast(typing.Optional[jsii.Number], result)
20038
20664
 
20039
20665
  @builtins.property
20040
- def role(self) -> typing.Optional[_IRole_235f5d8e]:
20666
+ def role(self) -> typing.Optional[_IRoleRef_8400221f]:
20041
20667
  '''The role for the group.
20042
20668
 
20043
20669
  :default: - no description
20044
20670
  '''
20045
20671
  result = self._values.get("role")
20046
- return typing.cast(typing.Optional[_IRole_235f5d8e], result)
20672
+ return typing.cast(typing.Optional[_IRoleRef_8400221f], result)
20047
20673
 
20048
20674
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
20049
20675
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -20075,7 +20701,7 @@ class UserPoolGroupProps(UserPoolGroupOptions):
20075
20701
  description: typing.Optional[builtins.str] = None,
20076
20702
  group_name: typing.Optional[builtins.str] = None,
20077
20703
  precedence: typing.Optional[jsii.Number] = None,
20078
- role: typing.Optional[_IRole_235f5d8e] = None,
20704
+ role: typing.Optional[_IRoleRef_8400221f] = None,
20079
20705
  user_pool: IUserPool,
20080
20706
  ) -> None:
20081
20707
  '''Props for UserPoolGroup construct.
@@ -20166,13 +20792,13 @@ class UserPoolGroupProps(UserPoolGroupOptions):
20166
20792
  return typing.cast(typing.Optional[jsii.Number], result)
20167
20793
 
20168
20794
  @builtins.property
20169
- def role(self) -> typing.Optional[_IRole_235f5d8e]:
20795
+ def role(self) -> typing.Optional[_IRoleRef_8400221f]:
20170
20796
  '''The role for the group.
20171
20797
 
20172
20798
  :default: - no description
20173
20799
  '''
20174
20800
  result = self._values.get("role")
20175
- return typing.cast(typing.Optional[_IRole_235f5d8e], result)
20801
+ return typing.cast(typing.Optional[_IRoleRef_8400221f], result)
20176
20802
 
20177
20803
  @builtins.property
20178
20804
  def user_pool(self) -> IUserPool:
@@ -21419,7 +22045,7 @@ class UserPoolProps:
21419
22045
  advanced_security_mode: typing.Optional[AdvancedSecurityMode] = None,
21420
22046
  auto_verify: typing.Optional[typing.Union[AutoVerifiedAttrs, typing.Dict[builtins.str, typing.Any]]] = None,
21421
22047
  custom_attributes: typing.Optional[typing.Mapping[builtins.str, ICustomAttribute]] = None,
21422
- custom_sender_kms_key: typing.Optional[_IKey_5f11635f] = None,
22048
+ custom_sender_kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
21423
22049
  custom_threat_protection_mode: typing.Optional[CustomThreatProtectionMode] = None,
21424
22050
  deletion_protection: typing.Optional[builtins.bool] = None,
21425
22051
  device_tracking: typing.Optional[typing.Union[DeviceTracking, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -21439,7 +22065,7 @@ class UserPoolProps:
21439
22065
  sign_in_aliases: typing.Optional[typing.Union[SignInAliases, typing.Dict[builtins.str, typing.Any]]] = None,
21440
22066
  sign_in_case_sensitive: typing.Optional[builtins.bool] = None,
21441
22067
  sign_in_policy: typing.Optional[typing.Union[SignInPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
21442
- sms_role: typing.Optional[_IRole_235f5d8e] = None,
22068
+ sms_role: typing.Optional[_IRoleRef_8400221f] = None,
21443
22069
  sms_role_external_id: typing.Optional[builtins.str] = None,
21444
22070
  sns_region: typing.Optional[builtins.str] = None,
21445
22071
  standard_attributes: typing.Optional[typing.Union[StandardAttributes, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -21665,7 +22291,7 @@ class UserPoolProps:
21665
22291
  return typing.cast(typing.Optional[typing.Mapping[builtins.str, ICustomAttribute]], result)
21666
22292
 
21667
22293
  @builtins.property
21668
- def custom_sender_kms_key(self) -> typing.Optional[_IKey_5f11635f]:
22294
+ def custom_sender_kms_key(self) -> typing.Optional[_IKeyRef_d4fc6ef3]:
21669
22295
  '''This key will be used to encrypt temporary passwords and authorization codes that Amazon Cognito generates.
21670
22296
 
21671
22297
  :default: - no key ID configured
@@ -21673,7 +22299,7 @@ class UserPoolProps:
21673
22299
  :see: https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-custom-sender-triggers.html
21674
22300
  '''
21675
22301
  result = self._values.get("custom_sender_kms_key")
21676
- return typing.cast(typing.Optional[_IKey_5f11635f], result)
22302
+ return typing.cast(typing.Optional[_IKeyRef_d4fc6ef3], result)
21677
22303
 
21678
22304
  @builtins.property
21679
22305
  def custom_threat_protection_mode(
@@ -21892,13 +22518,13 @@ class UserPoolProps:
21892
22518
  return typing.cast(typing.Optional[SignInPolicy], result)
21893
22519
 
21894
22520
  @builtins.property
21895
- def sms_role(self) -> typing.Optional[_IRole_235f5d8e]:
22521
+ def sms_role(self) -> typing.Optional[_IRoleRef_8400221f]:
21896
22522
  '''The IAM role that Cognito will assume while sending SMS messages.
21897
22523
 
21898
22524
  :default: - a new IAM role is created.
21899
22525
  '''
21900
22526
  result = self._values.get("sms_role")
21901
- return typing.cast(typing.Optional[_IRole_235f5d8e], result)
22527
+ return typing.cast(typing.Optional[_IRoleRef_8400221f], result)
21902
22528
 
21903
22529
  @builtins.property
21904
22530
  def sms_role_external_id(self) -> typing.Optional[builtins.str]:
@@ -23824,6 +24450,8 @@ __all__ = [
23824
24450
  "CfnLogDeliveryConfigurationProps",
23825
24451
  "CfnManagedLoginBranding",
23826
24452
  "CfnManagedLoginBrandingProps",
24453
+ "CfnTerms",
24454
+ "CfnTermsProps",
23827
24455
  "CfnUserPool",
23828
24456
  "CfnUserPoolClient",
23829
24457
  "CfnUserPoolClientProps",
@@ -23948,7 +24576,7 @@ def _typecheckingstub__f67277ee392b3c256b3bd87e4afcb7bb83df8d226097757f9c9261034
23948
24576
  application: typing.Optional[_CfnApp_e8bac60b] = None,
23949
24577
  application_id: typing.Optional[builtins.str] = None,
23950
24578
  external_id: typing.Optional[builtins.str] = None,
23951
- role: typing.Optional[_IRole_235f5d8e] = None,
24579
+ role: typing.Optional[_IRoleRef_8400221f] = None,
23952
24580
  share_user_data: typing.Optional[builtins.bool] = None,
23953
24581
  ) -> None:
23954
24582
  """Type checking stubs"""
@@ -24025,6 +24653,14 @@ def _typecheckingstub__d5156c08d9bb3b0ceca6f4ec485d84f9775d7be40128a6614e1b9cbf0
24025
24653
  """Type checking stubs"""
24026
24654
  pass
24027
24655
 
24656
+ def _typecheckingstub__23c766eb59af70f92541dfd9c9cae67b99255f21efd59868b8feff44354f4e77(
24657
+ scope: _constructs_77d1e7e8.Construct,
24658
+ id: builtins.str,
24659
+ identity_pool_id: builtins.str,
24660
+ ) -> None:
24661
+ """Type checking stubs"""
24662
+ pass
24663
+
24028
24664
  def _typecheckingstub__d0046422699f4c95c1d9df0a173b8caf8590dc3fcb3ada38e03f96cba1a359bc(
24029
24665
  inspector: _TreeInspector_488e0dd5,
24030
24666
  ) -> None:
@@ -24447,6 +25083,80 @@ def _typecheckingstub__60e207e1aa2ab8ae23b36c3e1ae73765c6f328b13bf0c7b205865e93a
24447
25083
  """Type checking stubs"""
24448
25084
  pass
24449
25085
 
25086
+ def _typecheckingstub__60ed6baa47f9012cc57d9cef7e22f15d5f04fd45aa55fc0e8672f7e89ef3f146(
25087
+ scope: _constructs_77d1e7e8.Construct,
25088
+ id: builtins.str,
25089
+ *,
25090
+ enforcement: builtins.str,
25091
+ links: typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b],
25092
+ terms_name: builtins.str,
25093
+ terms_source: builtins.str,
25094
+ user_pool_id: builtins.str,
25095
+ client_id: typing.Optional[builtins.str] = None,
25096
+ ) -> None:
25097
+ """Type checking stubs"""
25098
+ pass
25099
+
25100
+ def _typecheckingstub__0c857e95caaea9926ffb4e0ab5c3a0bb7d8a82c05cf7bd42adce1312c203e7a6(
25101
+ inspector: _TreeInspector_488e0dd5,
25102
+ ) -> None:
25103
+ """Type checking stubs"""
25104
+ pass
25105
+
25106
+ def _typecheckingstub__9dddb891f6e734bbc549324d30543ba3d862fb957be34e904236132737d7b71a(
25107
+ props: typing.Mapping[builtins.str, typing.Any],
25108
+ ) -> None:
25109
+ """Type checking stubs"""
25110
+ pass
25111
+
25112
+ def _typecheckingstub__f61b831431a9a8cd9abc071d0372ef9f7481c4297f99d22362f79e4456530000(
25113
+ value: builtins.str,
25114
+ ) -> None:
25115
+ """Type checking stubs"""
25116
+ pass
25117
+
25118
+ def _typecheckingstub__4f9dfce3805ce6a5b41ec8b8adeb160b16b2bb09e9af48569f2f3a28a1301c36(
25119
+ value: typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b],
25120
+ ) -> None:
25121
+ """Type checking stubs"""
25122
+ pass
25123
+
25124
+ def _typecheckingstub__68b51d1ab80adde15516db14033542fe90da3c6c88f931ab391ca9a06f2b57a2(
25125
+ value: builtins.str,
25126
+ ) -> None:
25127
+ """Type checking stubs"""
25128
+ pass
25129
+
25130
+ def _typecheckingstub__d5aa2b8f439bae6d46ca78a5e059a5ed10c4d8f1fa1e7624f714272d8d13b98e(
25131
+ value: builtins.str,
25132
+ ) -> None:
25133
+ """Type checking stubs"""
25134
+ pass
25135
+
25136
+ def _typecheckingstub__bedec026b3875318368cb2e1f7df8e4146e8efed23c452b2176302d00eac9db3(
25137
+ value: builtins.str,
25138
+ ) -> None:
25139
+ """Type checking stubs"""
25140
+ pass
25141
+
25142
+ def _typecheckingstub__b52c4f91e8237836ed692eed70ef894814f27cdb9a5c5fe5278b59f348ab3bb9(
25143
+ value: typing.Optional[builtins.str],
25144
+ ) -> None:
25145
+ """Type checking stubs"""
25146
+ pass
25147
+
25148
+ def _typecheckingstub__285db7e3bc95478b571785bee7fa49951055cef4d8266009ed59e73fea5e4d4e(
25149
+ *,
25150
+ enforcement: builtins.str,
25151
+ links: typing.Union[typing.Mapping[builtins.str, builtins.str], _IResolvable_da3f097b],
25152
+ terms_name: builtins.str,
25153
+ terms_source: builtins.str,
25154
+ user_pool_id: builtins.str,
25155
+ client_id: typing.Optional[builtins.str] = None,
25156
+ ) -> None:
25157
+ """Type checking stubs"""
25158
+ pass
25159
+
24450
25160
  def _typecheckingstub__32d20f28e2758f9a461380e2ed5d06233baf0f45541047ba837f26ebc37ee551(
24451
25161
  scope: _constructs_77d1e7e8.Construct,
24452
25162
  id: builtins.str,
@@ -24484,6 +25194,22 @@ def _typecheckingstub__32d20f28e2758f9a461380e2ed5d06233baf0f45541047ba837f26ebc
24484
25194
  """Type checking stubs"""
24485
25195
  pass
24486
25196
 
25197
+ def _typecheckingstub__50cb94accc8d60746f0970af6f3f1428a04180d1d6c471b7ebb0c7eeaf6f5e11(
25198
+ scope: _constructs_77d1e7e8.Construct,
25199
+ id: builtins.str,
25200
+ arn: builtins.str,
25201
+ ) -> None:
25202
+ """Type checking stubs"""
25203
+ pass
25204
+
25205
+ def _typecheckingstub__77bca4d59ea1b80508c0fd60c8f34e3c4dff94c3e5dada90fee904207040ff1a(
25206
+ scope: _constructs_77d1e7e8.Construct,
25207
+ id: builtins.str,
25208
+ user_pool_id: builtins.str,
25209
+ ) -> None:
25210
+ """Type checking stubs"""
25211
+ pass
25212
+
24487
25213
  def _typecheckingstub__190e7831a65154362cd300369d61a522f7add5d60374fc990db7dd8ecb232388(
24488
25214
  inspector: _TreeInspector_488e0dd5,
24489
25215
  ) -> None:
@@ -25819,6 +26545,7 @@ def _typecheckingstub__6eaa0ebaf797c6ac4bac11bd73d9ad61c50892a9450e0ff5880903434
25819
26545
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
25820
26546
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
25821
26547
  read_attributes: typing.Optional[ClientAttributes] = None,
26548
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
25822
26549
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
25823
26550
  supported_identity_providers: typing.Optional[typing.Sequence[UserPoolClientIdentityProvider]] = None,
25824
26551
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -25843,7 +26570,7 @@ def _typecheckingstub__e70d406698753c50dbab4e4d1f9837fc55e7c713f52b3937d20745b5a
25843
26570
  description: typing.Optional[builtins.str] = None,
25844
26571
  group_name: typing.Optional[builtins.str] = None,
25845
26572
  precedence: typing.Optional[jsii.Number] = None,
25846
- role: typing.Optional[_IRole_235f5d8e] = None,
26573
+ role: typing.Optional[_IRoleRef_8400221f] = None,
25847
26574
  ) -> None:
25848
26575
  """Type checking stubs"""
25849
26576
  pass
@@ -26091,7 +26818,7 @@ def _typecheckingstub__677a8ec9a3f2a22d2dfde6fd6818121e4a071dc4e942f6bbe219e5a9b
26091
26818
  advanced_security_mode: typing.Optional[AdvancedSecurityMode] = None,
26092
26819
  auto_verify: typing.Optional[typing.Union[AutoVerifiedAttrs, typing.Dict[builtins.str, typing.Any]]] = None,
26093
26820
  custom_attributes: typing.Optional[typing.Mapping[builtins.str, ICustomAttribute]] = None,
26094
- custom_sender_kms_key: typing.Optional[_IKey_5f11635f] = None,
26821
+ custom_sender_kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
26095
26822
  custom_threat_protection_mode: typing.Optional[CustomThreatProtectionMode] = None,
26096
26823
  deletion_protection: typing.Optional[builtins.bool] = None,
26097
26824
  device_tracking: typing.Optional[typing.Union[DeviceTracking, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -26111,7 +26838,7 @@ def _typecheckingstub__677a8ec9a3f2a22d2dfde6fd6818121e4a071dc4e942f6bbe219e5a9b
26111
26838
  sign_in_aliases: typing.Optional[typing.Union[SignInAliases, typing.Dict[builtins.str, typing.Any]]] = None,
26112
26839
  sign_in_case_sensitive: typing.Optional[builtins.bool] = None,
26113
26840
  sign_in_policy: typing.Optional[typing.Union[SignInPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
26114
- sms_role: typing.Optional[_IRole_235f5d8e] = None,
26841
+ sms_role: typing.Optional[_IRoleRef_8400221f] = None,
26115
26842
  sms_role_external_id: typing.Optional[builtins.str] = None,
26116
26843
  sns_region: typing.Optional[builtins.str] = None,
26117
26844
  standard_attributes: typing.Optional[typing.Union[StandardAttributes, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -26154,6 +26881,7 @@ def _typecheckingstub__b4ce1f762a6eeaca3920ca827a1685cfa2b670f96aa13d8cfdded4055
26154
26881
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
26155
26882
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
26156
26883
  read_attributes: typing.Optional[ClientAttributes] = None,
26884
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
26157
26885
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
26158
26886
  supported_identity_providers: typing.Optional[typing.Sequence[UserPoolClientIdentityProvider]] = None,
26159
26887
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -26178,7 +26906,7 @@ def _typecheckingstub__182df28f489c4d9ab970aca99503d45cd2196b431c6ce7b04bb1e3436
26178
26906
  description: typing.Optional[builtins.str] = None,
26179
26907
  group_name: typing.Optional[builtins.str] = None,
26180
26908
  precedence: typing.Optional[jsii.Number] = None,
26181
- role: typing.Optional[_IRole_235f5d8e] = None,
26909
+ role: typing.Optional[_IRoleRef_8400221f] = None,
26182
26910
  ) -> None:
26183
26911
  """Type checking stubs"""
26184
26912
  pass
@@ -26231,6 +26959,7 @@ def _typecheckingstub__e654de9921a676ab8214720f2ab2c7f212d67a62531595c721560e88c
26231
26959
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
26232
26960
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
26233
26961
  read_attributes: typing.Optional[ClientAttributes] = None,
26962
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
26234
26963
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
26235
26964
  supported_identity_providers: typing.Optional[typing.Sequence[UserPoolClientIdentityProvider]] = None,
26236
26965
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -26267,6 +26996,7 @@ def _typecheckingstub__80185296586b917ea24ebc48255c627ce95ec5c85ae2ab4e52736240b
26267
26996
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
26268
26997
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
26269
26998
  read_attributes: typing.Optional[ClientAttributes] = None,
26999
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
26270
27000
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
26271
27001
  supported_identity_providers: typing.Optional[typing.Sequence[UserPoolClientIdentityProvider]] = None,
26272
27002
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -26289,6 +27019,7 @@ def _typecheckingstub__95c8cad8419f2fd5def82ad39281b322b9ec6b2f7d891de939bf1e903
26289
27019
  o_auth: typing.Optional[typing.Union[OAuthSettings, typing.Dict[builtins.str, typing.Any]]] = None,
26290
27020
  prevent_user_existence_errors: typing.Optional[builtins.bool] = None,
26291
27021
  read_attributes: typing.Optional[ClientAttributes] = None,
27022
+ refresh_token_rotation_grace_period: typing.Optional[_Duration_4839e8c3] = None,
26292
27023
  refresh_token_validity: typing.Optional[_Duration_4839e8c3] = None,
26293
27024
  supported_identity_providers: typing.Optional[typing.Sequence[UserPoolClientIdentityProvider]] = None,
26294
27025
  user_pool_client_name: typing.Optional[builtins.str] = None,
@@ -26372,7 +27103,7 @@ def _typecheckingstub__775ac13db76309a928c26a49c092fd74e83d97ad55358f5e3e7abc39c
26372
27103
  description: typing.Optional[builtins.str] = None,
26373
27104
  group_name: typing.Optional[builtins.str] = None,
26374
27105
  precedence: typing.Optional[jsii.Number] = None,
26375
- role: typing.Optional[_IRole_235f5d8e] = None,
27106
+ role: typing.Optional[_IRoleRef_8400221f] = None,
26376
27107
  ) -> None:
26377
27108
  """Type checking stubs"""
26378
27109
  pass
@@ -26390,7 +27121,7 @@ def _typecheckingstub__a76259212a5e57f1375d5eb2940f0d6cde7a130c86d1a85fc682cc659
26390
27121
  description: typing.Optional[builtins.str] = None,
26391
27122
  group_name: typing.Optional[builtins.str] = None,
26392
27123
  precedence: typing.Optional[jsii.Number] = None,
26393
- role: typing.Optional[_IRole_235f5d8e] = None,
27124
+ role: typing.Optional[_IRoleRef_8400221f] = None,
26394
27125
  ) -> None:
26395
27126
  """Type checking stubs"""
26396
27127
  pass
@@ -26400,7 +27131,7 @@ def _typecheckingstub__6f5beec5c4d6b11b4325b68ae8691c3f5f2eb75f4aa5ef1c6e333e5df
26400
27131
  description: typing.Optional[builtins.str] = None,
26401
27132
  group_name: typing.Optional[builtins.str] = None,
26402
27133
  precedence: typing.Optional[jsii.Number] = None,
26403
- role: typing.Optional[_IRole_235f5d8e] = None,
27134
+ role: typing.Optional[_IRoleRef_8400221f] = None,
26404
27135
  user_pool: IUserPool,
26405
27136
  ) -> None:
26406
27137
  """Type checking stubs"""
@@ -26553,7 +27284,7 @@ def _typecheckingstub__754b1af40b4712720733e130c63a8ec0ca9a35d4cfb25450725d5aa02
26553
27284
  advanced_security_mode: typing.Optional[AdvancedSecurityMode] = None,
26554
27285
  auto_verify: typing.Optional[typing.Union[AutoVerifiedAttrs, typing.Dict[builtins.str, typing.Any]]] = None,
26555
27286
  custom_attributes: typing.Optional[typing.Mapping[builtins.str, ICustomAttribute]] = None,
26556
- custom_sender_kms_key: typing.Optional[_IKey_5f11635f] = None,
27287
+ custom_sender_kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
26557
27288
  custom_threat_protection_mode: typing.Optional[CustomThreatProtectionMode] = None,
26558
27289
  deletion_protection: typing.Optional[builtins.bool] = None,
26559
27290
  device_tracking: typing.Optional[typing.Union[DeviceTracking, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -26573,7 +27304,7 @@ def _typecheckingstub__754b1af40b4712720733e130c63a8ec0ca9a35d4cfb25450725d5aa02
26573
27304
  sign_in_aliases: typing.Optional[typing.Union[SignInAliases, typing.Dict[builtins.str, typing.Any]]] = None,
26574
27305
  sign_in_case_sensitive: typing.Optional[builtins.bool] = None,
26575
27306
  sign_in_policy: typing.Optional[typing.Union[SignInPolicy, typing.Dict[builtins.str, typing.Any]]] = None,
26576
- sms_role: typing.Optional[_IRole_235f5d8e] = None,
27307
+ sms_role: typing.Optional[_IRoleRef_8400221f] = None,
26577
27308
  sms_role_external_id: typing.Optional[builtins.str] = None,
26578
27309
  sns_region: typing.Optional[builtins.str] = None,
26579
27310
  standard_attributes: typing.Optional[typing.Union[StandardAttributes, typing.Dict[builtins.str, typing.Any]]] = None,
@@ -26728,3 +27459,6 @@ def _typecheckingstub__b7df3aca94dedaeba54fe7b775b3935c8ba1292a6334855a44eadaaf7
26728
27459
  ) -> None:
26729
27460
  """Type checking stubs"""
26730
27461
  pass
27462
+
27463
+ for cls in [ICustomAttribute, IUserPool, IUserPoolClient, IUserPoolDomain, IUserPoolGroup, IUserPoolIdentityProvider, IUserPoolResourceServer]:
27464
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])