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
@@ -0,0 +1,1019 @@
1
+ r'''
2
+ # AWS::AIOps Construct Library
3
+
4
+ <!--BEGIN STABILITY BANNER-->---
5
+
6
+
7
+ ![cfn-resources: Stable](https://img.shields.io/badge/cfn--resources-stable-success.svg?style=for-the-badge)
8
+
9
+ > All classes with the `Cfn` prefix in this module ([CFN Resources](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) are always stable and safe to use.
10
+
11
+ ---
12
+ <!--END STABILITY BANNER-->
13
+
14
+ This module is part of the [AWS Cloud Development Kit](https://github.com/aws/aws-cdk) project.
15
+
16
+ ```python
17
+ import aws_cdk.aws_aiops as aiops
18
+ ```
19
+
20
+ <!--BEGIN CFNONLY DISCLAIMER-->
21
+
22
+ There are no official hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet. Here are some suggestions on how to proceed:
23
+
24
+ * Search [Construct Hub for AIOps construct libraries](https://constructs.dev/search?q=aiops)
25
+ * Use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, in the same way you would use [the CloudFormation AWS::AIOps resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_AIOps.html) directly.
26
+
27
+ <!--BEGIN CFNONLY DISCLAIMER-->
28
+
29
+ There are no hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for this service yet.
30
+ However, you can still use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, and use this service exactly as you would using CloudFormation directly.
31
+
32
+ For more information on the resources and properties available for this service, see the [CloudFormation documentation for AWS::AIOps](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_AIOps.html).
33
+
34
+ (Read the [CDK Contributing Guide](https://github.com/aws/aws-cdk/blob/main/CONTRIBUTING.md) and submit an RFC if you are interested in contributing to this construct library.)
35
+
36
+ <!--END CFNONLY DISCLAIMER-->
37
+ '''
38
+ from pkgutil import extend_path
39
+ __path__ = extend_path(__path__, __name__)
40
+
41
+ import abc
42
+ import builtins
43
+ import datetime
44
+ import enum
45
+ import typing
46
+
47
+ import jsii
48
+ import publication
49
+ import typing_extensions
50
+
51
+ import typeguard
52
+ from importlib.metadata import version as _metadata_package_version
53
+ TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
54
+
55
+ def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
56
+ if TYPEGUARD_MAJOR_VERSION <= 2:
57
+ return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
58
+ else:
59
+ if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
60
+ pass
61
+ else:
62
+ if TYPEGUARD_MAJOR_VERSION == 3:
63
+ typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
64
+ typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
65
+ else:
66
+ typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
67
+
68
+ from .._jsii import *
69
+
70
+ import constructs as _constructs_77d1e7e8
71
+ from .. import (
72
+ CfnResource as _CfnResource_9df397a6,
73
+ CfnTag as _CfnTag_f6864754,
74
+ IInspectable as _IInspectable_c2943556,
75
+ IResolvable as _IResolvable_da3f097b,
76
+ ITaggableV2 as _ITaggableV2_4e6798f8,
77
+ TagManager as _TagManager_0a598cb3,
78
+ TreeInspector as _TreeInspector_488e0dd5,
79
+ )
80
+ from ..interfaces.aws_aiops import (
81
+ IInvestigationGroupRef as _IInvestigationGroupRef_717b970b,
82
+ InvestigationGroupReference as _InvestigationGroupReference_53553eea,
83
+ )
84
+
85
+
86
+ @jsii.implements(_IInspectable_c2943556, _IInvestigationGroupRef_717b970b, _ITaggableV2_4e6798f8)
87
+ class CfnInvestigationGroup(
88
+ _CfnResource_9df397a6,
89
+ metaclass=jsii.JSIIMeta,
90
+ jsii_type="aws-cdk-lib.aws_aiops.CfnInvestigationGroup",
91
+ ):
92
+ '''Creates an *investigation group* in your account.
93
+
94
+ Creating an investigation group is a one-time setup task for each Region in your account. It is a necessary task to be able to perform investigations.
95
+
96
+ Settings in the investigation group help you centrally manage the common properties of your investigations, such as the following:
97
+
98
+ - Who can access the investigations
99
+ - Whether investigation data is encrypted with a customer managed AWS Key Management Service key.
100
+ - How long investigations and their data are retained by default.
101
+
102
+ Currently, you can have one investigation group in each Region in your account. Each investigation in a Region is a part of the investigation group in that Region
103
+
104
+ To create an investigation group and set up CloudWatch investigations, you must be signed in to an IAM principal that has either the ``AIOpsConsoleAdminPolicy`` or the ``AdministratorAccess`` IAM policy attached, or to an account that has similar permissions.
105
+ .. epigraph::
106
+
107
+ You can configure CloudWatch alarms to start investigations and add events to investigations. If you create your investigation group with ``CreateInvestigationGroup`` and you want to enable alarms to do this, you must use ``PutInvestigationGroupPolicy`` to create a resource policy that grants this permission to CloudWatch alarms.
108
+
109
+ For more information about configuring CloudWatch alarms, see `Using Amazon CloudWatch alarms <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/AlarmThatSendsEmail.html>`_
110
+
111
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html
112
+ :cloudformationResource: AWS::AIOps::InvestigationGroup
113
+ :exampleMetadata: fixture=_generated
114
+
115
+ Example::
116
+
117
+ # The code below shows an example of how to instantiate this type.
118
+ # The values are placeholders you should change.
119
+ from aws_cdk import aws_aiops as aiops
120
+
121
+ cfn_investigation_group = aiops.CfnInvestigationGroup(self, "MyCfnInvestigationGroup",
122
+ name="name",
123
+
124
+ # the properties below are optional
125
+ chatbot_notification_channels=[aiops.CfnInvestigationGroup.ChatbotNotificationChannelProperty(
126
+ chat_configuration_arns=["chatConfigurationArns"],
127
+ sns_topic_arn="snsTopicArn"
128
+ )],
129
+ cross_account_configurations=[aiops.CfnInvestigationGroup.CrossAccountConfigurationProperty(
130
+ source_role_arn="sourceRoleArn"
131
+ )],
132
+ encryption_config=aiops.CfnInvestigationGroup.EncryptionConfigMapProperty(
133
+ encryption_configuration_type="encryptionConfigurationType",
134
+ kms_key_id="kmsKeyId"
135
+ ),
136
+ investigation_group_policy="investigationGroupPolicy",
137
+ is_cloud_trail_event_history_enabled=False,
138
+ retention_in_days=123,
139
+ role_arn="roleArn",
140
+ tag_key_boundaries=["tagKeyBoundaries"],
141
+ tags=[CfnTag(
142
+ key="key",
143
+ value="value"
144
+ )]
145
+ )
146
+ '''
147
+
148
+ def __init__(
149
+ self,
150
+ scope: _constructs_77d1e7e8.Construct,
151
+ id: builtins.str,
152
+ *,
153
+ name: builtins.str,
154
+ chatbot_notification_channels: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnInvestigationGroup.ChatbotNotificationChannelProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
155
+ cross_account_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnInvestigationGroup.CrossAccountConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
156
+ encryption_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnInvestigationGroup.EncryptionConfigMapProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
157
+ investigation_group_policy: typing.Optional[builtins.str] = None,
158
+ is_cloud_trail_event_history_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
159
+ retention_in_days: typing.Optional[jsii.Number] = None,
160
+ role_arn: typing.Optional[builtins.str] = None,
161
+ tag_key_boundaries: typing.Optional[typing.Sequence[builtins.str]] = None,
162
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
163
+ ) -> None:
164
+ '''Create a new ``AWS::AIOps::InvestigationGroup``.
165
+
166
+ :param scope: Scope in which this resource is defined.
167
+ :param id: Construct identifier for this resource (unique in its scope).
168
+ :param name: Specify either the name or the ARN of the investigation group that you want to view. This is used to set the name of the investigation group.
169
+ :param chatbot_notification_channels: Use this property to integrate CloudWatch investigations with chat applications. This property is an array. For the first string, specify the ARN of an Amazon SNS topic. For the array of strings, specify the ARNs of one or more chat applications configurations that you want to associate with that topic. For more information about these configuration ARNs, see `Getting started with Amazon Q in chat applications <https://docs.aws.amazon.com/chatbot/latest/adminguide/getting-started.html>`_ and `Resource type defined by AWS Chatbot <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awschatbot.html#awschatbot-resources-for-iam-policies>`_ .
170
+ :param cross_account_configurations: List of ``sourceRoleArn`` values that have been configured for cross-account access.
171
+ :param encryption_config: Specifies the customer managed AWS KMS key that the investigation group uses to encrypt data, if there is one. If not, the investigation group uses an AWS key to encrypt the data.
172
+ :param investigation_group_policy: Returns the JSON of the IAM resource policy associated with the specified investigation group in a string. For example, ``{\\"Version\\":\\"2012-10-17\\",\\"Statement\\":[{\\"Effect\\":\\"Allow\\",\\"Principal\\":{\\"Service\\":\\"aiops.alarms.cloudwatch.amazonaws.com\\"},\\"Action\\":[\\"aiops:CreateInvestigation\\",\\"aiops:CreateInvestigationEvent\\"],\\"Resource\\":\\"*\\",\\"Condition\\":{\\"StringEquals\\":{\\"aws:SourceAccount\\":\\"111122223333\\"},\\"ArnLike\\":{\\"aws:SourceArn\\":\\"arn:aws:cloudwatch:us-east-1:111122223333:alarm:*\\"}}}]}`` .
173
+ :param is_cloud_trail_event_history_enabled: Specify ``true`` to enable CloudWatch investigations to have access to change events that are recorded by CloudTrail. The default is ``true`` .
174
+ :param retention_in_days: Specifies how long that investigation data is kept.
175
+ :param role_arn: The ARN of the IAM role that the investigation group uses for permissions to gather data.
176
+ :param tag_key_boundaries: Displays the custom tag keys for custom applications in your system that you have specified in the investigation group. Resource tags help CloudWatch investigations narrow the search space when it is unable to discover definite relationships between resources.
177
+ :param tags: The list of key-value pairs to associate with the resource.
178
+ '''
179
+ if __debug__:
180
+ type_hints = typing.get_type_hints(_typecheckingstub__f390e65acdf4efe0289b1b8e5f17c031f7a88a13963effed34b7d4944b31dd7e)
181
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
182
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
183
+ props = CfnInvestigationGroupProps(
184
+ name=name,
185
+ chatbot_notification_channels=chatbot_notification_channels,
186
+ cross_account_configurations=cross_account_configurations,
187
+ encryption_config=encryption_config,
188
+ investigation_group_policy=investigation_group_policy,
189
+ is_cloud_trail_event_history_enabled=is_cloud_trail_event_history_enabled,
190
+ retention_in_days=retention_in_days,
191
+ role_arn=role_arn,
192
+ tag_key_boundaries=tag_key_boundaries,
193
+ tags=tags,
194
+ )
195
+
196
+ jsii.create(self.__class__, self, [scope, id, props])
197
+
198
+ @jsii.member(jsii_name="inspect")
199
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
200
+ '''Examines the CloudFormation resource and discloses attributes.
201
+
202
+ :param inspector: tree inspector to collect and process attributes.
203
+ '''
204
+ if __debug__:
205
+ type_hints = typing.get_type_hints(_typecheckingstub__a532233685b19239d88980a7d9b4a8384450db2dc5593ebca70b4c1bca8faf14)
206
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
207
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
208
+
209
+ @jsii.member(jsii_name="renderProperties")
210
+ def _render_properties(
211
+ self,
212
+ props: typing.Mapping[builtins.str, typing.Any],
213
+ ) -> typing.Mapping[builtins.str, typing.Any]:
214
+ '''
215
+ :param props: -
216
+ '''
217
+ if __debug__:
218
+ type_hints = typing.get_type_hints(_typecheckingstub__ada159a27791012fd3d77245257dddda16f3719a8e4bd5e53e293ff27dceacb7)
219
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
220
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
221
+
222
+ @jsii.python.classproperty
223
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
224
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
225
+ '''The CloudFormation resource type name for this resource class.'''
226
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
227
+
228
+ @builtins.property
229
+ @jsii.member(jsii_name="attrArn")
230
+ def attr_arn(self) -> builtins.str:
231
+ '''The Amazon Resource Name (ARN) of the investigation group.
232
+
233
+ :cloudformationAttribute: Arn
234
+ '''
235
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
236
+
237
+ @builtins.property
238
+ @jsii.member(jsii_name="attrCreatedAt")
239
+ def attr_created_at(self) -> builtins.str:
240
+ '''The date and time that the investigation group was created.
241
+
242
+ :cloudformationAttribute: CreatedAt
243
+ '''
244
+ return typing.cast(builtins.str, jsii.get(self, "attrCreatedAt"))
245
+
246
+ @builtins.property
247
+ @jsii.member(jsii_name="attrCreatedBy")
248
+ def attr_created_by(self) -> builtins.str:
249
+ '''The name of the user who created the investigation group.
250
+
251
+ :cloudformationAttribute: CreatedBy
252
+ '''
253
+ return typing.cast(builtins.str, jsii.get(self, "attrCreatedBy"))
254
+
255
+ @builtins.property
256
+ @jsii.member(jsii_name="attrLastModifiedAt")
257
+ def attr_last_modified_at(self) -> builtins.str:
258
+ '''The date and time that the investigation group was most recently modified.
259
+
260
+ :cloudformationAttribute: LastModifiedAt
261
+ '''
262
+ return typing.cast(builtins.str, jsii.get(self, "attrLastModifiedAt"))
263
+
264
+ @builtins.property
265
+ @jsii.member(jsii_name="attrLastModifiedBy")
266
+ def attr_last_modified_by(self) -> builtins.str:
267
+ '''The name of the user who created the investigation group.
268
+
269
+ :cloudformationAttribute: LastModifiedBy
270
+ '''
271
+ return typing.cast(builtins.str, jsii.get(self, "attrLastModifiedBy"))
272
+
273
+ @builtins.property
274
+ @jsii.member(jsii_name="cdkTagManager")
275
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
276
+ '''Tag Manager which manages the tags for this resource.'''
277
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
278
+
279
+ @builtins.property
280
+ @jsii.member(jsii_name="cfnProperties")
281
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
282
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
283
+
284
+ @builtins.property
285
+ @jsii.member(jsii_name="investigationGroupRef")
286
+ def investigation_group_ref(self) -> _InvestigationGroupReference_53553eea:
287
+ '''A reference to a InvestigationGroup resource.'''
288
+ return typing.cast(_InvestigationGroupReference_53553eea, jsii.get(self, "investigationGroupRef"))
289
+
290
+ @builtins.property
291
+ @jsii.member(jsii_name="name")
292
+ def name(self) -> builtins.str:
293
+ '''Specify either the name or the ARN of the investigation group that you want to view.'''
294
+ return typing.cast(builtins.str, jsii.get(self, "name"))
295
+
296
+ @name.setter
297
+ def name(self, value: builtins.str) -> None:
298
+ if __debug__:
299
+ type_hints = typing.get_type_hints(_typecheckingstub__68d7a3472d5ddc810dbc073636686c470b0fe6568b144fc7473b578e828715b5)
300
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
301
+ jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
302
+
303
+ @builtins.property
304
+ @jsii.member(jsii_name="chatbotNotificationChannels")
305
+ def chatbot_notification_channels(
306
+ self,
307
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.ChatbotNotificationChannelProperty"]]]]:
308
+ '''Use this property to integrate CloudWatch investigations with chat applications.'''
309
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.ChatbotNotificationChannelProperty"]]]], jsii.get(self, "chatbotNotificationChannels"))
310
+
311
+ @chatbot_notification_channels.setter
312
+ def chatbot_notification_channels(
313
+ self,
314
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.ChatbotNotificationChannelProperty"]]]],
315
+ ) -> None:
316
+ if __debug__:
317
+ type_hints = typing.get_type_hints(_typecheckingstub__5db4331534a87e764a8534aad930983f78144efc39dc99f450b39b9adabfe898)
318
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
319
+ jsii.set(self, "chatbotNotificationChannels", value) # pyright: ignore[reportArgumentType]
320
+
321
+ @builtins.property
322
+ @jsii.member(jsii_name="crossAccountConfigurations")
323
+ def cross_account_configurations(
324
+ self,
325
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.CrossAccountConfigurationProperty"]]]]:
326
+ '''List of ``sourceRoleArn`` values that have been configured for cross-account access.'''
327
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.CrossAccountConfigurationProperty"]]]], jsii.get(self, "crossAccountConfigurations"))
328
+
329
+ @cross_account_configurations.setter
330
+ def cross_account_configurations(
331
+ self,
332
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.CrossAccountConfigurationProperty"]]]],
333
+ ) -> None:
334
+ if __debug__:
335
+ type_hints = typing.get_type_hints(_typecheckingstub__cab3f68c7637d356559913c4b9be139738c64bd676003ea2810dd4ddafef47e5)
336
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
337
+ jsii.set(self, "crossAccountConfigurations", value) # pyright: ignore[reportArgumentType]
338
+
339
+ @builtins.property
340
+ @jsii.member(jsii_name="encryptionConfig")
341
+ def encryption_config(
342
+ self,
343
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.EncryptionConfigMapProperty"]]:
344
+ '''Specifies the customer managed AWS KMS key that the investigation group uses to encrypt data, if there is one.'''
345
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.EncryptionConfigMapProperty"]], jsii.get(self, "encryptionConfig"))
346
+
347
+ @encryption_config.setter
348
+ def encryption_config(
349
+ self,
350
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInvestigationGroup.EncryptionConfigMapProperty"]],
351
+ ) -> None:
352
+ if __debug__:
353
+ type_hints = typing.get_type_hints(_typecheckingstub__7f51c34e4f09d967ae3c411a2743d3d857ce2c925f1d1b67c9152dd736522694)
354
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
355
+ jsii.set(self, "encryptionConfig", value) # pyright: ignore[reportArgumentType]
356
+
357
+ @builtins.property
358
+ @jsii.member(jsii_name="investigationGroupPolicy")
359
+ def investigation_group_policy(self) -> typing.Optional[builtins.str]:
360
+ '''Returns the JSON of the IAM resource policy associated with the specified investigation group in a string.'''
361
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "investigationGroupPolicy"))
362
+
363
+ @investigation_group_policy.setter
364
+ def investigation_group_policy(self, value: typing.Optional[builtins.str]) -> None:
365
+ if __debug__:
366
+ type_hints = typing.get_type_hints(_typecheckingstub__a878340860e2c35de4d03b82df1e97245d5f40120fa110076a32f436fd31ddaf)
367
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
368
+ jsii.set(self, "investigationGroupPolicy", value) # pyright: ignore[reportArgumentType]
369
+
370
+ @builtins.property
371
+ @jsii.member(jsii_name="isCloudTrailEventHistoryEnabled")
372
+ def is_cloud_trail_event_history_enabled(
373
+ self,
374
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
375
+ '''Specify ``true`` to enable CloudWatch investigations to have access to change events that are recorded by CloudTrail.'''
376
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "isCloudTrailEventHistoryEnabled"))
377
+
378
+ @is_cloud_trail_event_history_enabled.setter
379
+ def is_cloud_trail_event_history_enabled(
380
+ self,
381
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
382
+ ) -> None:
383
+ if __debug__:
384
+ type_hints = typing.get_type_hints(_typecheckingstub__8fc3a119f870dceec4d1a3ba5b4f84971973ad9c990d3aa7c5bb5e2ff0005cba)
385
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
386
+ jsii.set(self, "isCloudTrailEventHistoryEnabled", value) # pyright: ignore[reportArgumentType]
387
+
388
+ @builtins.property
389
+ @jsii.member(jsii_name="retentionInDays")
390
+ def retention_in_days(self) -> typing.Optional[jsii.Number]:
391
+ '''Specifies how long that investigation data is kept.'''
392
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "retentionInDays"))
393
+
394
+ @retention_in_days.setter
395
+ def retention_in_days(self, value: typing.Optional[jsii.Number]) -> None:
396
+ if __debug__:
397
+ type_hints = typing.get_type_hints(_typecheckingstub__fb70ecd162c324b07d0ae455e2881185c11d02912ce9513cd8fd61e7de3c054c)
398
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
399
+ jsii.set(self, "retentionInDays", value) # pyright: ignore[reportArgumentType]
400
+
401
+ @builtins.property
402
+ @jsii.member(jsii_name="roleArn")
403
+ def role_arn(self) -> typing.Optional[builtins.str]:
404
+ '''The ARN of the IAM role that the investigation group uses for permissions to gather data.'''
405
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "roleArn"))
406
+
407
+ @role_arn.setter
408
+ def role_arn(self, value: typing.Optional[builtins.str]) -> None:
409
+ if __debug__:
410
+ type_hints = typing.get_type_hints(_typecheckingstub__c3eb82bc9999595315778658f89b708e57ad701088d012c3391ce1a4e6721195)
411
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
412
+ jsii.set(self, "roleArn", value) # pyright: ignore[reportArgumentType]
413
+
414
+ @builtins.property
415
+ @jsii.member(jsii_name="tagKeyBoundaries")
416
+ def tag_key_boundaries(self) -> typing.Optional[typing.List[builtins.str]]:
417
+ '''Displays the custom tag keys for custom applications in your system that you have specified in the investigation group.'''
418
+ return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "tagKeyBoundaries"))
419
+
420
+ @tag_key_boundaries.setter
421
+ def tag_key_boundaries(
422
+ self,
423
+ value: typing.Optional[typing.List[builtins.str]],
424
+ ) -> None:
425
+ if __debug__:
426
+ type_hints = typing.get_type_hints(_typecheckingstub__847e58d896c672f6db334949abc5da531a40f943b791ff6c76da0751ee7be4ea)
427
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
428
+ jsii.set(self, "tagKeyBoundaries", value) # pyright: ignore[reportArgumentType]
429
+
430
+ @builtins.property
431
+ @jsii.member(jsii_name="tags")
432
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
433
+ '''The list of key-value pairs to associate with the resource.'''
434
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
435
+
436
+ @tags.setter
437
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
438
+ if __debug__:
439
+ type_hints = typing.get_type_hints(_typecheckingstub__58e4b2d8c71fc2670bc24a5f274e0134fae9ffd7aeca95db0fed9e2d974499f7)
440
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
441
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
442
+
443
+ @jsii.data_type(
444
+ jsii_type="aws-cdk-lib.aws_aiops.CfnInvestigationGroup.ChatbotNotificationChannelProperty",
445
+ jsii_struct_bases=[],
446
+ name_mapping={
447
+ "chat_configuration_arns": "chatConfigurationArns",
448
+ "sns_topic_arn": "snsTopicArn",
449
+ },
450
+ )
451
+ class ChatbotNotificationChannelProperty:
452
+ def __init__(
453
+ self,
454
+ *,
455
+ chat_configuration_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
456
+ sns_topic_arn: typing.Optional[builtins.str] = None,
457
+ ) -> None:
458
+ '''Use this structure to integrate CloudWatch investigations with chat applications.
459
+
460
+ This structure is a string array. For the first string, specify the ARN of an Amazon SNS topic. For the array of strings, specify the ARNs of one or more chat applications configurations that you want to associate with that topic. For more information about these configuration ARNs, see `Getting started with Amazon Q in chat applications <https://docs.aws.amazon.com/chatbot/latest/adminguide/getting-started.html>`_ and `Resource type defined by AWS Chatbot <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awschatbot.html#awschatbot-resources-for-iam-policies>`_ .
461
+
462
+ :param chat_configuration_arns: Returns the Amazon Resource Name (ARN) of any third-party chat integrations configured for the account.
463
+ :param sns_topic_arn: Returns the ARN of an Amazon SNS topic used for third-party chat integrations.
464
+
465
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-chatbotnotificationchannel.html
466
+ :exampleMetadata: fixture=_generated
467
+
468
+ Example::
469
+
470
+ # The code below shows an example of how to instantiate this type.
471
+ # The values are placeholders you should change.
472
+ from aws_cdk import aws_aiops as aiops
473
+
474
+ chatbot_notification_channel_property = aiops.CfnInvestigationGroup.ChatbotNotificationChannelProperty(
475
+ chat_configuration_arns=["chatConfigurationArns"],
476
+ sns_topic_arn="snsTopicArn"
477
+ )
478
+ '''
479
+ if __debug__:
480
+ type_hints = typing.get_type_hints(_typecheckingstub__d67ba65a7634fe2bf96859c6a05258a6565faf2372426edac2b3d876dc0b9a61)
481
+ check_type(argname="argument chat_configuration_arns", value=chat_configuration_arns, expected_type=type_hints["chat_configuration_arns"])
482
+ check_type(argname="argument sns_topic_arn", value=sns_topic_arn, expected_type=type_hints["sns_topic_arn"])
483
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
484
+ if chat_configuration_arns is not None:
485
+ self._values["chat_configuration_arns"] = chat_configuration_arns
486
+ if sns_topic_arn is not None:
487
+ self._values["sns_topic_arn"] = sns_topic_arn
488
+
489
+ @builtins.property
490
+ def chat_configuration_arns(self) -> typing.Optional[typing.List[builtins.str]]:
491
+ '''Returns the Amazon Resource Name (ARN) of any third-party chat integrations configured for the account.
492
+
493
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-chatbotnotificationchannel.html#cfn-aiops-investigationgroup-chatbotnotificationchannel-chatconfigurationarns
494
+ '''
495
+ result = self._values.get("chat_configuration_arns")
496
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
497
+
498
+ @builtins.property
499
+ def sns_topic_arn(self) -> typing.Optional[builtins.str]:
500
+ '''Returns the ARN of an Amazon SNS topic used for third-party chat integrations.
501
+
502
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-chatbotnotificationchannel.html#cfn-aiops-investigationgroup-chatbotnotificationchannel-snstopicarn
503
+ '''
504
+ result = self._values.get("sns_topic_arn")
505
+ return typing.cast(typing.Optional[builtins.str], result)
506
+
507
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
508
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
509
+
510
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
511
+ return not (rhs == self)
512
+
513
+ def __repr__(self) -> str:
514
+ return "ChatbotNotificationChannelProperty(%s)" % ", ".join(
515
+ k + "=" + repr(v) for k, v in self._values.items()
516
+ )
517
+
518
+ @jsii.data_type(
519
+ jsii_type="aws-cdk-lib.aws_aiops.CfnInvestigationGroup.CrossAccountConfigurationProperty",
520
+ jsii_struct_bases=[],
521
+ name_mapping={"source_role_arn": "sourceRoleArn"},
522
+ )
523
+ class CrossAccountConfigurationProperty:
524
+ def __init__(
525
+ self,
526
+ *,
527
+ source_role_arn: typing.Optional[builtins.str] = None,
528
+ ) -> None:
529
+ '''This structure contains information about the cross-account configuration in the account.
530
+
531
+ :param source_role_arn: The ARN of an existing role which will be used to do investigations on your behalf.
532
+
533
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-crossaccountconfiguration.html
534
+ :exampleMetadata: fixture=_generated
535
+
536
+ Example::
537
+
538
+ # The code below shows an example of how to instantiate this type.
539
+ # The values are placeholders you should change.
540
+ from aws_cdk import aws_aiops as aiops
541
+
542
+ cross_account_configuration_property = aiops.CfnInvestigationGroup.CrossAccountConfigurationProperty(
543
+ source_role_arn="sourceRoleArn"
544
+ )
545
+ '''
546
+ if __debug__:
547
+ type_hints = typing.get_type_hints(_typecheckingstub__686ab8dd38f6db168aebbeef0e137fd1f90381f42a12046db10e4ba4ac3a3e3f)
548
+ check_type(argname="argument source_role_arn", value=source_role_arn, expected_type=type_hints["source_role_arn"])
549
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
550
+ if source_role_arn is not None:
551
+ self._values["source_role_arn"] = source_role_arn
552
+
553
+ @builtins.property
554
+ def source_role_arn(self) -> typing.Optional[builtins.str]:
555
+ '''The ARN of an existing role which will be used to do investigations on your behalf.
556
+
557
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-crossaccountconfiguration.html#cfn-aiops-investigationgroup-crossaccountconfiguration-sourcerolearn
558
+ '''
559
+ result = self._values.get("source_role_arn")
560
+ return typing.cast(typing.Optional[builtins.str], result)
561
+
562
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
563
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
564
+
565
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
566
+ return not (rhs == self)
567
+
568
+ def __repr__(self) -> str:
569
+ return "CrossAccountConfigurationProperty(%s)" % ", ".join(
570
+ k + "=" + repr(v) for k, v in self._values.items()
571
+ )
572
+
573
+ @jsii.data_type(
574
+ jsii_type="aws-cdk-lib.aws_aiops.CfnInvestigationGroup.EncryptionConfigMapProperty",
575
+ jsii_struct_bases=[],
576
+ name_mapping={
577
+ "encryption_configuration_type": "encryptionConfigurationType",
578
+ "kms_key_id": "kmsKeyId",
579
+ },
580
+ )
581
+ class EncryptionConfigMapProperty:
582
+ def __init__(
583
+ self,
584
+ *,
585
+ encryption_configuration_type: typing.Optional[builtins.str] = None,
586
+ kms_key_id: typing.Optional[builtins.str] = None,
587
+ ) -> None:
588
+ '''Use this structure if you want to use a customer managed AWS KMS key to encrypt your investigation data.
589
+
590
+ If you omit this parameter, CloudWatch investigations will use an AWS key to encrypt the data. For more information, see `Encryption of investigation data <https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/Investigations-Security.html#Investigations-KMS>`_ .
591
+
592
+ :param encryption_configuration_type: Displays whether investigation data is encrypted by a customer managed key or an AWS owned key.
593
+ :param kms_key_id: If the investigation group uses a customer managed key for encryption, this field displays the ID of that key.
594
+
595
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-encryptionconfigmap.html
596
+ :exampleMetadata: fixture=_generated
597
+
598
+ Example::
599
+
600
+ # The code below shows an example of how to instantiate this type.
601
+ # The values are placeholders you should change.
602
+ from aws_cdk import aws_aiops as aiops
603
+
604
+ encryption_config_map_property = aiops.CfnInvestigationGroup.EncryptionConfigMapProperty(
605
+ encryption_configuration_type="encryptionConfigurationType",
606
+ kms_key_id="kmsKeyId"
607
+ )
608
+ '''
609
+ if __debug__:
610
+ type_hints = typing.get_type_hints(_typecheckingstub__822047880bb03db9129836b4da0b735fe316364e02aa10f8c042ba4d22f3c20f)
611
+ check_type(argname="argument encryption_configuration_type", value=encryption_configuration_type, expected_type=type_hints["encryption_configuration_type"])
612
+ check_type(argname="argument kms_key_id", value=kms_key_id, expected_type=type_hints["kms_key_id"])
613
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
614
+ if encryption_configuration_type is not None:
615
+ self._values["encryption_configuration_type"] = encryption_configuration_type
616
+ if kms_key_id is not None:
617
+ self._values["kms_key_id"] = kms_key_id
618
+
619
+ @builtins.property
620
+ def encryption_configuration_type(self) -> typing.Optional[builtins.str]:
621
+ '''Displays whether investigation data is encrypted by a customer managed key or an AWS owned key.
622
+
623
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-encryptionconfigmap.html#cfn-aiops-investigationgroup-encryptionconfigmap-encryptionconfigurationtype
624
+ '''
625
+ result = self._values.get("encryption_configuration_type")
626
+ return typing.cast(typing.Optional[builtins.str], result)
627
+
628
+ @builtins.property
629
+ def kms_key_id(self) -> typing.Optional[builtins.str]:
630
+ '''If the investigation group uses a customer managed key for encryption, this field displays the ID of that key.
631
+
632
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-aiops-investigationgroup-encryptionconfigmap.html#cfn-aiops-investigationgroup-encryptionconfigmap-kmskeyid
633
+ '''
634
+ result = self._values.get("kms_key_id")
635
+ return typing.cast(typing.Optional[builtins.str], result)
636
+
637
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
638
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
639
+
640
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
641
+ return not (rhs == self)
642
+
643
+ def __repr__(self) -> str:
644
+ return "EncryptionConfigMapProperty(%s)" % ", ".join(
645
+ k + "=" + repr(v) for k, v in self._values.items()
646
+ )
647
+
648
+
649
+ @jsii.data_type(
650
+ jsii_type="aws-cdk-lib.aws_aiops.CfnInvestigationGroupProps",
651
+ jsii_struct_bases=[],
652
+ name_mapping={
653
+ "name": "name",
654
+ "chatbot_notification_channels": "chatbotNotificationChannels",
655
+ "cross_account_configurations": "crossAccountConfigurations",
656
+ "encryption_config": "encryptionConfig",
657
+ "investigation_group_policy": "investigationGroupPolicy",
658
+ "is_cloud_trail_event_history_enabled": "isCloudTrailEventHistoryEnabled",
659
+ "retention_in_days": "retentionInDays",
660
+ "role_arn": "roleArn",
661
+ "tag_key_boundaries": "tagKeyBoundaries",
662
+ "tags": "tags",
663
+ },
664
+ )
665
+ class CfnInvestigationGroupProps:
666
+ def __init__(
667
+ self,
668
+ *,
669
+ name: builtins.str,
670
+ chatbot_notification_channels: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.ChatbotNotificationChannelProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
671
+ cross_account_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.CrossAccountConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
672
+ encryption_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.EncryptionConfigMapProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
673
+ investigation_group_policy: typing.Optional[builtins.str] = None,
674
+ is_cloud_trail_event_history_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
675
+ retention_in_days: typing.Optional[jsii.Number] = None,
676
+ role_arn: typing.Optional[builtins.str] = None,
677
+ tag_key_boundaries: typing.Optional[typing.Sequence[builtins.str]] = None,
678
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
679
+ ) -> None:
680
+ '''Properties for defining a ``CfnInvestigationGroup``.
681
+
682
+ :param name: Specify either the name or the ARN of the investigation group that you want to view. This is used to set the name of the investigation group.
683
+ :param chatbot_notification_channels: Use this property to integrate CloudWatch investigations with chat applications. This property is an array. For the first string, specify the ARN of an Amazon SNS topic. For the array of strings, specify the ARNs of one or more chat applications configurations that you want to associate with that topic. For more information about these configuration ARNs, see `Getting started with Amazon Q in chat applications <https://docs.aws.amazon.com/chatbot/latest/adminguide/getting-started.html>`_ and `Resource type defined by AWS Chatbot <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awschatbot.html#awschatbot-resources-for-iam-policies>`_ .
684
+ :param cross_account_configurations: List of ``sourceRoleArn`` values that have been configured for cross-account access.
685
+ :param encryption_config: Specifies the customer managed AWS KMS key that the investigation group uses to encrypt data, if there is one. If not, the investigation group uses an AWS key to encrypt the data.
686
+ :param investigation_group_policy: Returns the JSON of the IAM resource policy associated with the specified investigation group in a string. For example, ``{\\"Version\\":\\"2012-10-17\\",\\"Statement\\":[{\\"Effect\\":\\"Allow\\",\\"Principal\\":{\\"Service\\":\\"aiops.alarms.cloudwatch.amazonaws.com\\"},\\"Action\\":[\\"aiops:CreateInvestigation\\",\\"aiops:CreateInvestigationEvent\\"],\\"Resource\\":\\"*\\",\\"Condition\\":{\\"StringEquals\\":{\\"aws:SourceAccount\\":\\"111122223333\\"},\\"ArnLike\\":{\\"aws:SourceArn\\":\\"arn:aws:cloudwatch:us-east-1:111122223333:alarm:*\\"}}}]}`` .
687
+ :param is_cloud_trail_event_history_enabled: Specify ``true`` to enable CloudWatch investigations to have access to change events that are recorded by CloudTrail. The default is ``true`` .
688
+ :param retention_in_days: Specifies how long that investigation data is kept.
689
+ :param role_arn: The ARN of the IAM role that the investigation group uses for permissions to gather data.
690
+ :param tag_key_boundaries: Displays the custom tag keys for custom applications in your system that you have specified in the investigation group. Resource tags help CloudWatch investigations narrow the search space when it is unable to discover definite relationships between resources.
691
+ :param tags: The list of key-value pairs to associate with the resource.
692
+
693
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html
694
+ :exampleMetadata: fixture=_generated
695
+
696
+ Example::
697
+
698
+ # The code below shows an example of how to instantiate this type.
699
+ # The values are placeholders you should change.
700
+ from aws_cdk import aws_aiops as aiops
701
+
702
+ cfn_investigation_group_props = aiops.CfnInvestigationGroupProps(
703
+ name="name",
704
+
705
+ # the properties below are optional
706
+ chatbot_notification_channels=[aiops.CfnInvestigationGroup.ChatbotNotificationChannelProperty(
707
+ chat_configuration_arns=["chatConfigurationArns"],
708
+ sns_topic_arn="snsTopicArn"
709
+ )],
710
+ cross_account_configurations=[aiops.CfnInvestigationGroup.CrossAccountConfigurationProperty(
711
+ source_role_arn="sourceRoleArn"
712
+ )],
713
+ encryption_config=aiops.CfnInvestigationGroup.EncryptionConfigMapProperty(
714
+ encryption_configuration_type="encryptionConfigurationType",
715
+ kms_key_id="kmsKeyId"
716
+ ),
717
+ investigation_group_policy="investigationGroupPolicy",
718
+ is_cloud_trail_event_history_enabled=False,
719
+ retention_in_days=123,
720
+ role_arn="roleArn",
721
+ tag_key_boundaries=["tagKeyBoundaries"],
722
+ tags=[CfnTag(
723
+ key="key",
724
+ value="value"
725
+ )]
726
+ )
727
+ '''
728
+ if __debug__:
729
+ type_hints = typing.get_type_hints(_typecheckingstub__2d8bd4c8e0b3c95e52387aa0647c4f184b5f07925a09f1e74881b8a0738d25a8)
730
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
731
+ check_type(argname="argument chatbot_notification_channels", value=chatbot_notification_channels, expected_type=type_hints["chatbot_notification_channels"])
732
+ check_type(argname="argument cross_account_configurations", value=cross_account_configurations, expected_type=type_hints["cross_account_configurations"])
733
+ check_type(argname="argument encryption_config", value=encryption_config, expected_type=type_hints["encryption_config"])
734
+ check_type(argname="argument investigation_group_policy", value=investigation_group_policy, expected_type=type_hints["investigation_group_policy"])
735
+ check_type(argname="argument is_cloud_trail_event_history_enabled", value=is_cloud_trail_event_history_enabled, expected_type=type_hints["is_cloud_trail_event_history_enabled"])
736
+ check_type(argname="argument retention_in_days", value=retention_in_days, expected_type=type_hints["retention_in_days"])
737
+ check_type(argname="argument role_arn", value=role_arn, expected_type=type_hints["role_arn"])
738
+ check_type(argname="argument tag_key_boundaries", value=tag_key_boundaries, expected_type=type_hints["tag_key_boundaries"])
739
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
740
+ self._values: typing.Dict[builtins.str, typing.Any] = {
741
+ "name": name,
742
+ }
743
+ if chatbot_notification_channels is not None:
744
+ self._values["chatbot_notification_channels"] = chatbot_notification_channels
745
+ if cross_account_configurations is not None:
746
+ self._values["cross_account_configurations"] = cross_account_configurations
747
+ if encryption_config is not None:
748
+ self._values["encryption_config"] = encryption_config
749
+ if investigation_group_policy is not None:
750
+ self._values["investigation_group_policy"] = investigation_group_policy
751
+ if is_cloud_trail_event_history_enabled is not None:
752
+ self._values["is_cloud_trail_event_history_enabled"] = is_cloud_trail_event_history_enabled
753
+ if retention_in_days is not None:
754
+ self._values["retention_in_days"] = retention_in_days
755
+ if role_arn is not None:
756
+ self._values["role_arn"] = role_arn
757
+ if tag_key_boundaries is not None:
758
+ self._values["tag_key_boundaries"] = tag_key_boundaries
759
+ if tags is not None:
760
+ self._values["tags"] = tags
761
+
762
+ @builtins.property
763
+ def name(self) -> builtins.str:
764
+ '''Specify either the name or the ARN of the investigation group that you want to view.
765
+
766
+ This is used to set the name of the investigation group.
767
+
768
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-name
769
+ '''
770
+ result = self._values.get("name")
771
+ assert result is not None, "Required property 'name' is missing"
772
+ return typing.cast(builtins.str, result)
773
+
774
+ @builtins.property
775
+ def chatbot_notification_channels(
776
+ self,
777
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.ChatbotNotificationChannelProperty]]]]:
778
+ '''Use this property to integrate CloudWatch investigations with chat applications.
779
+
780
+ This property is an array. For the first string, specify the ARN of an Amazon SNS topic. For the array of strings, specify the ARNs of one or more chat applications configurations that you want to associate with that topic. For more information about these configuration ARNs, see `Getting started with Amazon Q in chat applications <https://docs.aws.amazon.com/chatbot/latest/adminguide/getting-started.html>`_ and `Resource type defined by AWS Chatbot <https://docs.aws.amazon.com/service-authorization/latest/reference/list_awschatbot.html#awschatbot-resources-for-iam-policies>`_ .
781
+
782
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-chatbotnotificationchannels
783
+ '''
784
+ result = self._values.get("chatbot_notification_channels")
785
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.ChatbotNotificationChannelProperty]]]], result)
786
+
787
+ @builtins.property
788
+ def cross_account_configurations(
789
+ self,
790
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.CrossAccountConfigurationProperty]]]]:
791
+ '''List of ``sourceRoleArn`` values that have been configured for cross-account access.
792
+
793
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-crossaccountconfigurations
794
+ '''
795
+ result = self._values.get("cross_account_configurations")
796
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.CrossAccountConfigurationProperty]]]], result)
797
+
798
+ @builtins.property
799
+ def encryption_config(
800
+ self,
801
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.EncryptionConfigMapProperty]]:
802
+ '''Specifies the customer managed AWS KMS key that the investigation group uses to encrypt data, if there is one.
803
+
804
+ If not, the investigation group uses an AWS key to encrypt the data.
805
+
806
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-encryptionconfig
807
+ '''
808
+ result = self._values.get("encryption_config")
809
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.EncryptionConfigMapProperty]], result)
810
+
811
+ @builtins.property
812
+ def investigation_group_policy(self) -> typing.Optional[builtins.str]:
813
+ '''Returns the JSON of the IAM resource policy associated with the specified investigation group in a string.
814
+
815
+ For example, ``{\\"Version\\":\\"2012-10-17\\",\\"Statement\\":[{\\"Effect\\":\\"Allow\\",\\"Principal\\":{\\"Service\\":\\"aiops.alarms.cloudwatch.amazonaws.com\\"},\\"Action\\":[\\"aiops:CreateInvestigation\\",\\"aiops:CreateInvestigationEvent\\"],\\"Resource\\":\\"*\\",\\"Condition\\":{\\"StringEquals\\":{\\"aws:SourceAccount\\":\\"111122223333\\"},\\"ArnLike\\":{\\"aws:SourceArn\\":\\"arn:aws:cloudwatch:us-east-1:111122223333:alarm:*\\"}}}]}`` .
816
+
817
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-investigationgrouppolicy
818
+ '''
819
+ result = self._values.get("investigation_group_policy")
820
+ return typing.cast(typing.Optional[builtins.str], result)
821
+
822
+ @builtins.property
823
+ def is_cloud_trail_event_history_enabled(
824
+ self,
825
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
826
+ '''Specify ``true`` to enable CloudWatch investigations to have access to change events that are recorded by CloudTrail.
827
+
828
+ The default is ``true`` .
829
+
830
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-iscloudtraileventhistoryenabled
831
+ '''
832
+ result = self._values.get("is_cloud_trail_event_history_enabled")
833
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
834
+
835
+ @builtins.property
836
+ def retention_in_days(self) -> typing.Optional[jsii.Number]:
837
+ '''Specifies how long that investigation data is kept.
838
+
839
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-retentionindays
840
+ '''
841
+ result = self._values.get("retention_in_days")
842
+ return typing.cast(typing.Optional[jsii.Number], result)
843
+
844
+ @builtins.property
845
+ def role_arn(self) -> typing.Optional[builtins.str]:
846
+ '''The ARN of the IAM role that the investigation group uses for permissions to gather data.
847
+
848
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-rolearn
849
+ '''
850
+ result = self._values.get("role_arn")
851
+ return typing.cast(typing.Optional[builtins.str], result)
852
+
853
+ @builtins.property
854
+ def tag_key_boundaries(self) -> typing.Optional[typing.List[builtins.str]]:
855
+ '''Displays the custom tag keys for custom applications in your system that you have specified in the investigation group.
856
+
857
+ Resource tags help CloudWatch investigations narrow the search space when it is unable to discover definite relationships between resources.
858
+
859
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-tagkeyboundaries
860
+ '''
861
+ result = self._values.get("tag_key_boundaries")
862
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
863
+
864
+ @builtins.property
865
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
866
+ '''The list of key-value pairs to associate with the resource.
867
+
868
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-aiops-investigationgroup.html#cfn-aiops-investigationgroup-tags
869
+ '''
870
+ result = self._values.get("tags")
871
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
872
+
873
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
874
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
875
+
876
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
877
+ return not (rhs == self)
878
+
879
+ def __repr__(self) -> str:
880
+ return "CfnInvestigationGroupProps(%s)" % ", ".join(
881
+ k + "=" + repr(v) for k, v in self._values.items()
882
+ )
883
+
884
+
885
+ __all__ = [
886
+ "CfnInvestigationGroup",
887
+ "CfnInvestigationGroupProps",
888
+ ]
889
+
890
+ publication.publish()
891
+
892
+ def _typecheckingstub__f390e65acdf4efe0289b1b8e5f17c031f7a88a13963effed34b7d4944b31dd7e(
893
+ scope: _constructs_77d1e7e8.Construct,
894
+ id: builtins.str,
895
+ *,
896
+ name: builtins.str,
897
+ chatbot_notification_channels: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.ChatbotNotificationChannelProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
898
+ cross_account_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.CrossAccountConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
899
+ encryption_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.EncryptionConfigMapProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
900
+ investigation_group_policy: typing.Optional[builtins.str] = None,
901
+ is_cloud_trail_event_history_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
902
+ retention_in_days: typing.Optional[jsii.Number] = None,
903
+ role_arn: typing.Optional[builtins.str] = None,
904
+ tag_key_boundaries: typing.Optional[typing.Sequence[builtins.str]] = None,
905
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
906
+ ) -> None:
907
+ """Type checking stubs"""
908
+ pass
909
+
910
+ def _typecheckingstub__a532233685b19239d88980a7d9b4a8384450db2dc5593ebca70b4c1bca8faf14(
911
+ inspector: _TreeInspector_488e0dd5,
912
+ ) -> None:
913
+ """Type checking stubs"""
914
+ pass
915
+
916
+ def _typecheckingstub__ada159a27791012fd3d77245257dddda16f3719a8e4bd5e53e293ff27dceacb7(
917
+ props: typing.Mapping[builtins.str, typing.Any],
918
+ ) -> None:
919
+ """Type checking stubs"""
920
+ pass
921
+
922
+ def _typecheckingstub__68d7a3472d5ddc810dbc073636686c470b0fe6568b144fc7473b578e828715b5(
923
+ value: builtins.str,
924
+ ) -> None:
925
+ """Type checking stubs"""
926
+ pass
927
+
928
+ def _typecheckingstub__5db4331534a87e764a8534aad930983f78144efc39dc99f450b39b9adabfe898(
929
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.ChatbotNotificationChannelProperty]]]],
930
+ ) -> None:
931
+ """Type checking stubs"""
932
+ pass
933
+
934
+ def _typecheckingstub__cab3f68c7637d356559913c4b9be139738c64bd676003ea2810dd4ddafef47e5(
935
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.CrossAccountConfigurationProperty]]]],
936
+ ) -> None:
937
+ """Type checking stubs"""
938
+ pass
939
+
940
+ def _typecheckingstub__7f51c34e4f09d967ae3c411a2743d3d857ce2c925f1d1b67c9152dd736522694(
941
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnInvestigationGroup.EncryptionConfigMapProperty]],
942
+ ) -> None:
943
+ """Type checking stubs"""
944
+ pass
945
+
946
+ def _typecheckingstub__a878340860e2c35de4d03b82df1e97245d5f40120fa110076a32f436fd31ddaf(
947
+ value: typing.Optional[builtins.str],
948
+ ) -> None:
949
+ """Type checking stubs"""
950
+ pass
951
+
952
+ def _typecheckingstub__8fc3a119f870dceec4d1a3ba5b4f84971973ad9c990d3aa7c5bb5e2ff0005cba(
953
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
954
+ ) -> None:
955
+ """Type checking stubs"""
956
+ pass
957
+
958
+ def _typecheckingstub__fb70ecd162c324b07d0ae455e2881185c11d02912ce9513cd8fd61e7de3c054c(
959
+ value: typing.Optional[jsii.Number],
960
+ ) -> None:
961
+ """Type checking stubs"""
962
+ pass
963
+
964
+ def _typecheckingstub__c3eb82bc9999595315778658f89b708e57ad701088d012c3391ce1a4e6721195(
965
+ value: typing.Optional[builtins.str],
966
+ ) -> None:
967
+ """Type checking stubs"""
968
+ pass
969
+
970
+ def _typecheckingstub__847e58d896c672f6db334949abc5da531a40f943b791ff6c76da0751ee7be4ea(
971
+ value: typing.Optional[typing.List[builtins.str]],
972
+ ) -> None:
973
+ """Type checking stubs"""
974
+ pass
975
+
976
+ def _typecheckingstub__58e4b2d8c71fc2670bc24a5f274e0134fae9ffd7aeca95db0fed9e2d974499f7(
977
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
978
+ ) -> None:
979
+ """Type checking stubs"""
980
+ pass
981
+
982
+ def _typecheckingstub__d67ba65a7634fe2bf96859c6a05258a6565faf2372426edac2b3d876dc0b9a61(
983
+ *,
984
+ chat_configuration_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
985
+ sns_topic_arn: typing.Optional[builtins.str] = None,
986
+ ) -> None:
987
+ """Type checking stubs"""
988
+ pass
989
+
990
+ def _typecheckingstub__686ab8dd38f6db168aebbeef0e137fd1f90381f42a12046db10e4ba4ac3a3e3f(
991
+ *,
992
+ source_role_arn: typing.Optional[builtins.str] = None,
993
+ ) -> None:
994
+ """Type checking stubs"""
995
+ pass
996
+
997
+ def _typecheckingstub__822047880bb03db9129836b4da0b735fe316364e02aa10f8c042ba4d22f3c20f(
998
+ *,
999
+ encryption_configuration_type: typing.Optional[builtins.str] = None,
1000
+ kms_key_id: typing.Optional[builtins.str] = None,
1001
+ ) -> None:
1002
+ """Type checking stubs"""
1003
+ pass
1004
+
1005
+ def _typecheckingstub__2d8bd4c8e0b3c95e52387aa0647c4f184b5f07925a09f1e74881b8a0738d25a8(
1006
+ *,
1007
+ name: builtins.str,
1008
+ chatbot_notification_channels: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.ChatbotNotificationChannelProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
1009
+ cross_account_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.CrossAccountConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
1010
+ encryption_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInvestigationGroup.EncryptionConfigMapProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1011
+ investigation_group_policy: typing.Optional[builtins.str] = None,
1012
+ is_cloud_trail_event_history_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
1013
+ retention_in_days: typing.Optional[jsii.Number] = None,
1014
+ role_arn: typing.Optional[builtins.str] = None,
1015
+ tag_key_boundaries: typing.Optional[typing.Sequence[builtins.str]] = None,
1016
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1017
+ ) -> None:
1018
+ """Type checking stubs"""
1019
+ pass