aws-cdk-lib 2.195.0__py3-none-any.whl → 2.196.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 (100) hide show
  1. aws_cdk/__init__.py +433 -20
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.195.0.jsii.tgz → aws-cdk-lib@2.196.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +1 -1
  5. aws_cdk/aws_amazonmq/__init__.py +2 -2
  6. aws_cdk/aws_apigateway/__init__.py +148 -69
  7. aws_cdk/aws_apigatewayv2/__init__.py +155 -24
  8. aws_cdk/aws_appconfig/__init__.py +24 -0
  9. aws_cdk/aws_applicationautoscaling/__init__.py +6 -0
  10. aws_cdk/aws_appmesh/__init__.py +42 -0
  11. aws_cdk/aws_appsync/__init__.py +92 -20
  12. aws_cdk/aws_autoscaling/__init__.py +24 -0
  13. aws_cdk/aws_backup/__init__.py +53 -14
  14. aws_cdk/aws_batch/__init__.py +72 -0
  15. aws_cdk/aws_bedrock/__init__.py +620 -14
  16. aws_cdk/aws_budgets/__init__.py +569 -0
  17. aws_cdk/aws_certificatemanager/__init__.py +21 -0
  18. aws_cdk/aws_chatbot/__init__.py +6 -0
  19. aws_cdk/aws_cloudfront/__init__.py +87 -0
  20. aws_cdk/aws_cloudfront/experimental/__init__.py +6 -0
  21. aws_cdk/aws_cloudtrail/__init__.py +6 -0
  22. aws_cdk/aws_cloudwatch/__init__.py +18 -0
  23. aws_cdk/aws_cloudwatch_actions/__init__.py +75 -1
  24. aws_cdk/aws_codebuild/__init__.py +48 -0
  25. aws_cdk/aws_codecommit/__init__.py +6 -0
  26. aws_cdk/aws_codedeploy/__init__.py +63 -0
  27. aws_cdk/aws_codeguruprofiler/__init__.py +6 -0
  28. aws_cdk/aws_codepipeline/__init__.py +6 -0
  29. aws_cdk/aws_codepipeline_actions/__init__.py +4 -4
  30. aws_cdk/aws_codestarnotifications/__init__.py +6 -0
  31. aws_cdk/aws_cognito/__init__.py +91 -12
  32. aws_cdk/aws_cognito_identitypool/__init__.py +6 -0
  33. aws_cdk/aws_config/__init__.py +36 -0
  34. aws_cdk/aws_datazone/__init__.py +557 -14
  35. aws_cdk/aws_docdb/__init__.py +27 -3
  36. aws_cdk/aws_dsql/__init__.py +21 -13
  37. aws_cdk/aws_dynamodb/__init__.py +20 -8
  38. aws_cdk/aws_ec2/__init__.py +282 -21
  39. aws_cdk/aws_ecr/__init__.py +6 -0
  40. aws_cdk/aws_ecr_assets/__init__.py +6 -0
  41. aws_cdk/aws_ecs/__init__.py +112 -19
  42. aws_cdk/aws_ecs_patterns/__init__.py +58 -0
  43. aws_cdk/aws_efs/__init__.py +12 -0
  44. aws_cdk/aws_eks/__init__.py +42 -0
  45. aws_cdk/aws_elasticloadbalancing/__init__.py +6 -0
  46. aws_cdk/aws_elasticloadbalancingv2/__init__.py +112 -9
  47. aws_cdk/aws_elasticsearch/__init__.py +9 -0
  48. aws_cdk/aws_events/__init__.py +36 -0
  49. aws_cdk/aws_events_targets/__init__.py +10 -10
  50. aws_cdk/aws_fsx/__init__.py +6 -0
  51. aws_cdk/aws_globalaccelerator/__init__.py +18 -0
  52. aws_cdk/aws_iam/__init__.py +66 -0
  53. aws_cdk/aws_imagebuilder/__init__.py +21 -16
  54. aws_cdk/aws_inspector/__init__.py +6 -0
  55. aws_cdk/aws_kinesis/__init__.py +19 -1
  56. aws_cdk/aws_kinesisanalytics/__init__.py +9 -11
  57. aws_cdk/aws_kinesisanalyticsv2/__init__.py +9 -11
  58. aws_cdk/aws_kinesisfirehose/__init__.py +6 -0
  59. aws_cdk/aws_kms/__init__.py +16 -4
  60. aws_cdk/aws_lambda/__init__.py +76 -6
  61. aws_cdk/aws_lambda_nodejs/__init__.py +6 -0
  62. aws_cdk/aws_logs/__init__.py +155 -12
  63. aws_cdk/aws_opensearchservice/__init__.py +6 -0
  64. aws_cdk/aws_quicksight/__init__.py +22 -22
  65. aws_cdk/aws_rds/__init__.py +306 -30
  66. aws_cdk/aws_redshiftserverless/__init__.py +7 -7
  67. aws_cdk/aws_route53/__init__.py +723 -25
  68. aws_cdk/aws_s3/__init__.py +37 -10
  69. aws_cdk/aws_s3_deployment/__init__.py +6 -0
  70. aws_cdk/aws_sagemaker/__init__.py +199 -4
  71. aws_cdk/aws_scheduler/__init__.py +12 -0
  72. aws_cdk/aws_secretsmanager/__init__.py +24 -0
  73. aws_cdk/aws_servicecatalog/__init__.py +24 -0
  74. aws_cdk/aws_servicediscovery/__init__.py +48 -0
  75. aws_cdk/aws_ses/__init__.py +133 -33
  76. aws_cdk/aws_signer/__init__.py +6 -0
  77. aws_cdk/aws_sns/__init__.py +18 -0
  78. aws_cdk/aws_sns_subscriptions/__init__.py +6 -0
  79. aws_cdk/aws_sqs/__init__.py +12 -0
  80. aws_cdk/aws_ssm/__init__.py +12 -0
  81. aws_cdk/aws_ssmcontacts/__init__.py +53 -2
  82. aws_cdk/aws_ssmguiconnect/__init__.py +7 -7
  83. aws_cdk/aws_stepfunctions/__init__.py +153 -7
  84. aws_cdk/aws_stepfunctions_tasks/__init__.py +46 -10
  85. aws_cdk/aws_synthetics/__init__.py +32 -0
  86. aws_cdk/aws_verifiedpermissions/__init__.py +168 -3
  87. aws_cdk/aws_vpclattice/__init__.py +3 -1
  88. aws_cdk/aws_wisdom/__init__.py +6 -4
  89. aws_cdk/custom_resources/__init__.py +18 -0
  90. aws_cdk/cx_api/__init__.py +33 -0
  91. aws_cdk/lambda_layer_awscli/__init__.py +6 -0
  92. aws_cdk/lambda_layer_node_proxy_agent/__init__.py +6 -0
  93. aws_cdk/pipelines/__init__.py +10 -10
  94. aws_cdk/triggers/__init__.py +6 -0
  95. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/METADATA +83 -5
  96. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/RECORD +100 -100
  97. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/LICENSE +0 -0
  98. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/NOTICE +0 -0
  99. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/WHEEL +0 -0
  100. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/top_level.txt +0 -0
@@ -2044,6 +2044,12 @@ class PrivateCertificate(
2044
2044
 
2045
2045
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricDaysToExpiry", [props]))
2046
2046
 
2047
+ @jsii.python.classproperty
2048
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
2049
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
2050
+ '''Uniquely identifies this class.'''
2051
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
2052
+
2047
2053
  @builtins.property
2048
2054
  @jsii.member(jsii_name="certificateArn")
2049
2055
  def certificate_arn(self) -> builtins.str:
@@ -2318,6 +2324,12 @@ class Certificate(
2318
2324
 
2319
2325
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricDaysToExpiry", [props]))
2320
2326
 
2327
+ @jsii.python.classproperty
2328
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
2329
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
2330
+ '''Uniquely identifies this class.'''
2331
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
2332
+
2321
2333
  @builtins.property
2322
2334
  @jsii.member(jsii_name="certificateArn")
2323
2335
  def certificate_arn(self) -> builtins.str:
@@ -2502,6 +2514,15 @@ class DnsValidatedCertificate(
2502
2514
 
2503
2515
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricDaysToExpiry", [props]))
2504
2516
 
2517
+ @jsii.python.classproperty
2518
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
2519
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
2520
+ '''(deprecated) Uniquely identifies this class.
2521
+
2522
+ :stability: deprecated
2523
+ '''
2524
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
2525
+
2505
2526
  @builtins.property
2506
2527
  @jsii.member(jsii_name="certificateArn")
2507
2528
  def certificate_arn(self) -> builtins.str:
@@ -2288,6 +2288,12 @@ class SlackChannelConfiguration(
2288
2288
 
2289
2289
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metric", [metric_name, props]))
2290
2290
 
2291
+ @jsii.python.classproperty
2292
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
2293
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
2294
+ '''Uniquely identifies this class.'''
2295
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
2296
+
2291
2297
  @builtins.property
2292
2298
  @jsii.member(jsii_name="grantPrincipal")
2293
2299
  def grant_principal(self) -> _IPrincipal_539bb2fd:
@@ -21224,6 +21224,12 @@ class KeyGroup(
21224
21224
  check_type(argname="argument key_group_id", value=key_group_id, expected_type=type_hints["key_group_id"])
21225
21225
  return typing.cast(IKeyGroup, jsii.sinvoke(cls, "fromKeyGroupId", [scope, id, key_group_id]))
21226
21226
 
21227
+ @jsii.python.classproperty
21228
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
21229
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
21230
+ '''Uniquely identifies this class.'''
21231
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
21232
+
21227
21233
  @builtins.property
21228
21234
  @jsii.member(jsii_name="keyGroupId")
21229
21235
  def key_group_id(self) -> builtins.str:
@@ -21399,6 +21405,12 @@ class KeyValueStore(
21399
21405
  check_type(argname="argument key_value_store_arn", value=key_value_store_arn, expected_type=type_hints["key_value_store_arn"])
21400
21406
  return typing.cast(IKeyValueStore, jsii.sinvoke(cls, "fromKeyValueStoreArn", [scope, id, key_value_store_arn]))
21401
21407
 
21408
+ @jsii.python.classproperty
21409
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
21410
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
21411
+ '''Uniquely identifies this class.'''
21412
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
21413
+
21402
21414
  @builtins.property
21403
21415
  @jsii.member(jsii_name="keyValueStoreArn")
21404
21416
  def key_value_store_arn(self) -> builtins.str:
@@ -21948,6 +21960,12 @@ class OriginAccessIdentity(
21948
21960
  '''The ARN to include in S3 bucket policy to allow CloudFront access.'''
21949
21961
  return typing.cast(builtins.str, jsii.invoke(self, "arn", []))
21950
21962
 
21963
+ @jsii.python.classproperty
21964
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
21965
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
21966
+ '''Uniquely identifies this class.'''
21967
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
21968
+
21951
21969
  @builtins.property
21952
21970
  @jsii.member(jsii_name="cloudFrontOriginAccessIdentityS3CanonicalUserId")
21953
21971
  def cloud_front_origin_access_identity_s3_canonical_user_id(self) -> builtins.str:
@@ -23086,6 +23104,12 @@ class OriginRequestPolicy(
23086
23104
  '''This policy is designed for use with an origin that is an AWS Elemental MediaTailor endpoint.'''
23087
23105
  return typing.cast(IOriginRequestPolicy, jsii.sget(cls, "ELEMENTAL_MEDIA_TAILOR"))
23088
23106
 
23107
+ @jsii.python.classproperty
23108
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
23109
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
23110
+ '''Uniquely identifies this class.'''
23111
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
23112
+
23089
23113
  @jsii.python.classproperty
23090
23114
  @jsii.member(jsii_name="USER_AGENT_REFERER_HEADERS")
23091
23115
  def USER_AGENT_REFERER_HEADERS(cls) -> IOriginRequestPolicy:
@@ -23457,6 +23481,12 @@ class PublicKey(
23457
23481
  check_type(argname="argument public_key_id", value=public_key_id, expected_type=type_hints["public_key_id"])
23458
23482
  return typing.cast(IPublicKey, jsii.sinvoke(cls, "fromPublicKeyId", [scope, id, public_key_id]))
23459
23483
 
23484
+ @jsii.python.classproperty
23485
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
23486
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
23487
+ '''Uniquely identifies this class.'''
23488
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
23489
+
23460
23490
  @builtins.property
23461
23491
  @jsii.member(jsii_name="publicKeyId")
23462
23492
  def public_key_id(self) -> builtins.str:
@@ -23636,6 +23666,12 @@ class RealtimeLogConfig(
23636
23666
 
23637
23667
  jsii.create(self.__class__, self, [scope, id, props])
23638
23668
 
23669
+ @jsii.python.classproperty
23670
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
23671
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
23672
+ '''Uniquely identifies this class.'''
23673
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
23674
+
23639
23675
  @builtins.property
23640
23676
  @jsii.member(jsii_name="realtimeLogConfigArn")
23641
23677
  def realtime_log_config_arn(self) -> builtins.str:
@@ -24554,6 +24590,12 @@ class ResponseHeadersPolicy(
24554
24590
  '''Use this managed policy to allow CORS requests from any origin, including preflight requests, and add a set of security headers to all responses that CloudFront sends to viewers.'''
24555
24591
  return typing.cast(IResponseHeadersPolicy, jsii.sget(cls, "CORS_ALLOW_ALL_ORIGINS_WITH_PREFLIGHT_AND_SECURITY_HEADERS"))
24556
24592
 
24593
+ @jsii.python.classproperty
24594
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
24595
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
24596
+ '''Uniquely identifies this class.'''
24597
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
24598
+
24557
24599
  @jsii.python.classproperty
24558
24600
  @jsii.member(jsii_name="SECURITY_HEADERS")
24559
24601
  def SECURITY_HEADERS(cls) -> IResponseHeadersPolicy:
@@ -25487,6 +25529,12 @@ class S3OriginAccessControl(
25487
25529
  check_type(argname="argument origin_access_control_id", value=origin_access_control_id, expected_type=type_hints["origin_access_control_id"])
25488
25530
  return typing.cast(IOriginAccessControl, jsii.sinvoke(cls, "fromOriginAccessControlId", [scope, id, origin_access_control_id]))
25489
25531
 
25532
+ @jsii.python.classproperty
25533
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
25534
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
25535
+ '''Uniquely identifies this class.'''
25536
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
25537
+
25490
25538
  @builtins.property
25491
25539
  @jsii.member(jsii_name="originAccessControlId")
25492
25540
  def origin_access_control_id(self) -> builtins.str:
@@ -26552,6 +26600,12 @@ class VpcOrigin(
26552
26600
  check_type(argname="argument vpc_origin_id", value=vpc_origin_id, expected_type=type_hints["vpc_origin_id"])
26553
26601
  return typing.cast(IVpcOrigin, jsii.sinvoke(cls, "fromVpcOriginId", [scope, id, vpc_origin_id]))
26554
26602
 
26603
+ @jsii.python.classproperty
26604
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
26605
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
26606
+ '''Uniquely identifies this class.'''
26607
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
26608
+
26555
26609
  @builtins.property
26556
26610
  @jsii.member(jsii_name="cdkTagManager")
26557
26611
  def cdk_tag_manager(self) -> _TagManager_0a598cb3:
@@ -27289,6 +27343,12 @@ class CachePolicy(
27289
27343
  '''Designed for use with an origin that is an AWS Elemental MediaPackage endpoint.'''
27290
27344
  return typing.cast(ICachePolicy, jsii.sget(cls, "ELEMENTAL_MEDIA_PACKAGE"))
27291
27345
 
27346
+ @jsii.python.classproperty
27347
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
27348
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
27349
+ '''Uniquely identifies this class.'''
27350
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
27351
+
27292
27352
  @jsii.python.classproperty
27293
27353
  @jsii.member(jsii_name="USE_ORIGIN_CACHE_CONTROL_HEADERS")
27294
27354
  def USE_ORIGIN_CACHE_CONTROL_HEADERS(cls) -> ICachePolicy:
@@ -27486,6 +27546,15 @@ class CloudFrontWebDistribution(
27486
27546
  check_type(argname="argument identity", value=identity, expected_type=type_hints["identity"])
27487
27547
  return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantCreateInvalidation", [identity]))
27488
27548
 
27549
+ @jsii.python.classproperty
27550
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
27551
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
27552
+ '''(deprecated) Uniquely identifies this class.
27553
+
27554
+ :stability: deprecated
27555
+ '''
27556
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
27557
+
27489
27558
  @builtins.property
27490
27559
  @jsii.member(jsii_name="distributionArn")
27491
27560
  def distribution_arn(self) -> builtins.str:
@@ -28466,6 +28535,12 @@ class Distribution(
28466
28535
 
28467
28536
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricTotalErrorRate", [props]))
28468
28537
 
28538
+ @jsii.python.classproperty
28539
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
28540
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
28541
+ '''Uniquely identifies this class.'''
28542
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
28543
+
28469
28544
  @builtins.property
28470
28545
  @jsii.member(jsii_name="distributionArn")
28471
28546
  def distribution_arn(self) -> builtins.str:
@@ -28581,6 +28656,12 @@ class Function(
28581
28656
 
28582
28657
  return typing.cast(IFunction, jsii.sinvoke(cls, "fromFunctionAttributes", [scope, id, attrs]))
28583
28658
 
28659
+ @jsii.python.classproperty
28660
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
28661
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
28662
+ '''Uniquely identifies this class.'''
28663
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
28664
+
28584
28665
  @builtins.property
28585
28666
  @jsii.member(jsii_name="functionArn")
28586
28667
  def function_arn(self) -> builtins.str:
@@ -28705,6 +28786,12 @@ class FunctionUrlOriginAccessControl(
28705
28786
  check_type(argname="argument origin_access_control_id", value=origin_access_control_id, expected_type=type_hints["origin_access_control_id"])
28706
28787
  return typing.cast(IOriginAccessControl, jsii.sinvoke(cls, "fromOriginAccessControlId", [scope, id, origin_access_control_id]))
28707
28788
 
28789
+ @jsii.python.classproperty
28790
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
28791
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
28792
+ '''Uniquely identifies this class.'''
28793
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
28794
+
28708
28795
  @builtins.property
28709
28796
  @jsii.member(jsii_name="originAccessControlId")
28710
28797
  def origin_access_control_id(self) -> builtins.str:
@@ -853,6 +853,12 @@ class EdgeFunction(
853
853
 
854
854
  return typing.cast(_Metric_e396a4dc, jsii.invoke(self, "metricThrottles", [props]))
855
855
 
856
+ @jsii.python.classproperty
857
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
858
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
859
+ '''Uniquely identifies this class.'''
860
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
861
+
856
862
  @builtins.property
857
863
  @jsii.member(jsii_name="architecture")
858
864
  def architecture(self) -> _Architecture_12d5a53f:
@@ -4760,6 +4760,12 @@ class Trail(
4760
4760
 
4761
4761
  return typing.cast(None, jsii.invoke(self, "logAllS3DataEvents", [options]))
4762
4762
 
4763
+ @jsii.python.classproperty
4764
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
4765
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
4766
+ '''Uniquely identifies this class.'''
4767
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
4768
+
4763
4769
  @builtins.property
4764
4770
  @jsii.member(jsii_name="trailArn")
4765
4771
  def trail_arn(self) -> builtins.str:
@@ -7180,6 +7180,12 @@ class Dashboard(
7180
7180
  check_type(argname="argument widgets", value=widgets, expected_type=typing.Tuple[type_hints["widgets"], ...]) # pyright: ignore [reportGeneralTypeIssues]
7181
7181
  return typing.cast(None, jsii.invoke(self, "addWidgets", [*widgets]))
7182
7182
 
7183
+ @jsii.python.classproperty
7184
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
7185
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
7186
+ '''Uniquely identifies this class.'''
7187
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
7188
+
7183
7189
  @builtins.property
7184
7190
  @jsii.member(jsii_name="dashboardArn")
7185
7191
  def dashboard_arn(self) -> builtins.str:
@@ -14829,6 +14835,12 @@ class CompositeAlarm(
14829
14835
  check_type(argname="argument composite_alarm_name", value=composite_alarm_name, expected_type=type_hints["composite_alarm_name"])
14830
14836
  return typing.cast(IAlarm, jsii.sinvoke(cls, "fromCompositeAlarmName", [scope, id, composite_alarm_name]))
14831
14837
 
14838
+ @jsii.python.classproperty
14839
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
14840
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
14841
+ '''Uniquely identifies this class.'''
14842
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
14843
+
14832
14844
  @builtins.property
14833
14845
  @jsii.member(jsii_name="alarmArn")
14834
14846
  def alarm_arn(self) -> builtins.str:
@@ -15008,6 +15020,12 @@ class Alarm(
15008
15020
  '''
15009
15021
  return typing.cast(HorizontalAnnotation, jsii.invoke(self, "toAnnotation", []))
15010
15022
 
15023
+ @jsii.python.classproperty
15024
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
15025
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
15026
+ '''Uniquely identifies this class.'''
15027
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
15028
+
15011
15029
  @builtins.property
15012
15030
  @jsii.member(jsii_name="alarmArn")
15013
15031
  def alarm_arn(self) -> builtins.str:
@@ -313,14 +313,19 @@ class LambdaAction(
313
313
  def __init__(
314
314
  self,
315
315
  lambda_function: typing.Union[_IFunction_6adb0ab8, _IVersion_faf7234e, _IAlias_c8fe45f4],
316
+ *,
317
+ use_unique_permission_id: typing.Optional[builtins.bool] = None,
316
318
  ) -> None:
317
319
  '''
318
320
  :param lambda_function: -
321
+ :param use_unique_permission_id: Whether to generate unique Lambda Permission id. Use this parameter to resolve id collision in case of multiple alarms triggering the same action Default: - false
319
322
  '''
320
323
  if __debug__:
321
324
  type_hints = typing.get_type_hints(_typecheckingstub__2693adec8362e537633b2584509df8d0d77cb381732395de1707d1edfe2c3c9e)
322
325
  check_type(argname="argument lambda_function", value=lambda_function, expected_type=type_hints["lambda_function"])
323
- jsii.create(self.__class__, self, [lambda_function])
326
+ props = LambdaActionProps(use_unique_permission_id=use_unique_permission_id)
327
+
328
+ jsii.create(self.__class__, self, [lambda_function, props])
324
329
 
325
330
  @jsii.member(jsii_name="bind")
326
331
  def bind(
@@ -342,6 +347,65 @@ class LambdaAction(
342
347
  return typing.cast(_AlarmActionConfig_f831c655, jsii.invoke(self, "bind", [scope, alarm]))
343
348
 
344
349
 
350
+ @jsii.data_type(
351
+ jsii_type="aws-cdk-lib.aws_cloudwatch_actions.LambdaActionProps",
352
+ jsii_struct_bases=[],
353
+ name_mapping={"use_unique_permission_id": "useUniquePermissionId"},
354
+ )
355
+ class LambdaActionProps:
356
+ def __init__(
357
+ self,
358
+ *,
359
+ use_unique_permission_id: typing.Optional[builtins.bool] = None,
360
+ ) -> None:
361
+ '''Properties for Lambda Alarm Action.
362
+
363
+ :param use_unique_permission_id: Whether to generate unique Lambda Permission id. Use this parameter to resolve id collision in case of multiple alarms triggering the same action Default: - false
364
+
365
+ :exampleMetadata: fixture=_generated
366
+
367
+ Example::
368
+
369
+ # The code below shows an example of how to instantiate this type.
370
+ # The values are placeholders you should change.
371
+ from aws_cdk import aws_cloudwatch_actions as cloudwatch_actions
372
+
373
+ lambda_action_props = cloudwatch_actions.LambdaActionProps(
374
+ use_unique_permission_id=False
375
+ )
376
+ '''
377
+ if __debug__:
378
+ type_hints = typing.get_type_hints(_typecheckingstub__2be134df5b4b042a1cf75cbb9e29a273c25a1bdf15dc683b2cbba3452447846a)
379
+ check_type(argname="argument use_unique_permission_id", value=use_unique_permission_id, expected_type=type_hints["use_unique_permission_id"])
380
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
381
+ if use_unique_permission_id is not None:
382
+ self._values["use_unique_permission_id"] = use_unique_permission_id
383
+
384
+ @builtins.property
385
+ def use_unique_permission_id(self) -> typing.Optional[builtins.bool]:
386
+ '''Whether to generate unique Lambda Permission id.
387
+
388
+ Use this parameter to resolve id collision in case of multiple alarms triggering the same action
389
+
390
+ :default: - false
391
+
392
+ :see: https://github.com/aws/aws-cdk/issues/33958
393
+ '''
394
+ result = self._values.get("use_unique_permission_id")
395
+ return typing.cast(typing.Optional[builtins.bool], result)
396
+
397
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
398
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
399
+
400
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
401
+ return not (rhs == self)
402
+
403
+ def __repr__(self) -> str:
404
+ return "LambdaActionProps(%s)" % ", ".join(
405
+ k + "=" + repr(v) for k, v in self._values.items()
406
+ )
407
+
408
+
345
409
  @jsii.enum(jsii_type="aws-cdk-lib.aws_cloudwatch_actions.OpsItemCategory")
346
410
  class OpsItemCategory(enum.Enum):
347
411
  '''Types of OpsItem category available.
@@ -542,6 +606,7 @@ __all__ = [
542
606
  "Ec2Action",
543
607
  "Ec2InstanceAction",
544
608
  "LambdaAction",
609
+ "LambdaActionProps",
545
610
  "OpsItemCategory",
546
611
  "OpsItemSeverity",
547
612
  "SnsAction",
@@ -592,6 +657,8 @@ def _typecheckingstub__617684dcf0b429d0176779c30669a734e5e356a2d0dbb98bf321e897c
592
657
 
593
658
  def _typecheckingstub__2693adec8362e537633b2584509df8d0d77cb381732395de1707d1edfe2c3c9e(
594
659
  lambda_function: typing.Union[_IFunction_6adb0ab8, _IVersion_faf7234e, _IAlias_c8fe45f4],
660
+ *,
661
+ use_unique_permission_id: typing.Optional[builtins.bool] = None,
595
662
  ) -> None:
596
663
  """Type checking stubs"""
597
664
  pass
@@ -603,6 +670,13 @@ def _typecheckingstub__2856bb69373ffd5b6a7628782cc0fb8ab9fd20450269ca5c709a08e9b
603
670
  """Type checking stubs"""
604
671
  pass
605
672
 
673
+ def _typecheckingstub__2be134df5b4b042a1cf75cbb9e29a273c25a1bdf15dc683b2cbba3452447846a(
674
+ *,
675
+ use_unique_permission_id: typing.Optional[builtins.bool] = None,
676
+ ) -> None:
677
+ """Type checking stubs"""
678
+ pass
679
+
606
680
  def _typecheckingstub__d45c9fa069d1e0b882f975c29c8eb30315e60025b85741889c42ee16c1f229ca(
607
681
  topic: _ITopic_9eca4852,
608
682
  ) -> None:
@@ -1392,6 +1392,12 @@ class BitBucketSourceCredentials(
1392
1392
 
1393
1393
  jsii.create(self.__class__, self, [scope, id, props])
1394
1394
 
1395
+ @jsii.python.classproperty
1396
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
1397
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
1398
+ '''Uniquely identifies this class.'''
1399
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
1400
+
1395
1401
 
1396
1402
  @jsii.data_type(
1397
1403
  jsii_type="aws-cdk-lib.aws_codebuild.BitBucketSourceCredentialsProps",
@@ -9960,6 +9966,12 @@ class GitHubEnterpriseSourceCredentials(
9960
9966
 
9961
9967
  jsii.create(self.__class__, self, [scope, id, props])
9962
9968
 
9969
+ @jsii.python.classproperty
9970
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
9971
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
9972
+ '''Uniquely identifies this class.'''
9973
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
9974
+
9963
9975
 
9964
9976
  @jsii.data_type(
9965
9977
  jsii_type="aws-cdk-lib.aws_codebuild.GitHubEnterpriseSourceCredentialsProps",
@@ -10054,6 +10066,12 @@ class GitHubSourceCredentials(
10054
10066
 
10055
10067
  jsii.create(self.__class__, self, [scope, id, props])
10056
10068
 
10069
+ @jsii.python.classproperty
10070
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
10071
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
10072
+ '''Uniquely identifies this class.'''
10073
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
10074
+
10057
10075
 
10058
10076
  @jsii.data_type(
10059
10077
  jsii_type="aws-cdk-lib.aws_codebuild.GitHubSourceCredentialsProps",
@@ -14626,6 +14644,12 @@ class Project(
14626
14644
 
14627
14645
  return typing.cast(_Rule_334ed2b5, jsii.invoke(self, "onStateChange", [id, options]))
14628
14646
 
14647
+ @jsii.python.classproperty
14648
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
14649
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
14650
+ '''Uniquely identifies this class.'''
14651
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
14652
+
14629
14653
  @builtins.property
14630
14654
  @jsii.member(jsii_name="connections")
14631
14655
  def connections(self) -> _Connections_0f31fce8:
@@ -15481,6 +15505,12 @@ class ReportGroup(
15481
15505
  check_type(argname="argument identity", value=identity, expected_type=type_hints["identity"])
15482
15506
  return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantWrite", [identity]))
15483
15507
 
15508
+ @jsii.python.classproperty
15509
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
15510
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
15511
+ '''Uniquely identifies this class.'''
15512
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
15513
+
15484
15514
  @builtins.property
15485
15515
  @jsii.member(jsii_name="reportGroupArn")
15486
15516
  def report_group_arn(self) -> builtins.str:
@@ -16500,6 +16530,12 @@ class UntrustedCodeBoundaryPolicy(
16500
16530
 
16501
16531
  jsii.create(self.__class__, self, [scope, id, props])
16502
16532
 
16533
+ @jsii.python.classproperty
16534
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
16535
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
16536
+ '''Uniquely identifies this class.'''
16537
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
16538
+
16503
16539
 
16504
16540
  @jsii.data_type(
16505
16541
  jsii_type="aws-cdk-lib.aws_codebuild.UntrustedCodeBoundaryPolicyProps",
@@ -17431,6 +17467,12 @@ class Fleet(
17431
17467
  check_type(argname="argument fleet_arn", value=fleet_arn, expected_type=type_hints["fleet_arn"])
17432
17468
  return typing.cast(IFleet, jsii.sinvoke(cls, "fromFleetArn", [scope, id, fleet_arn]))
17433
17469
 
17470
+ @jsii.python.classproperty
17471
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
17472
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
17473
+ '''Uniquely identifies this class.'''
17474
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
17475
+
17434
17476
  @builtins.property
17435
17477
  @jsii.member(jsii_name="computeType")
17436
17478
  def compute_type(self) -> FleetComputeType:
@@ -18434,6 +18476,12 @@ class PipelineProject(
18434
18476
 
18435
18477
  jsii.create(self.__class__, self, [scope, id, props])
18436
18478
 
18479
+ @jsii.python.classproperty
18480
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
18481
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
18482
+ '''Uniquely identifies this class.'''
18483
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
18484
+
18437
18485
 
18438
18486
  @jsii.data_type(
18439
18487
  jsii_type="aws-cdk-lib.aws_codebuild.S3SourceProps",
@@ -3292,6 +3292,12 @@ class Repository(
3292
3292
 
3293
3293
  return typing.cast(_Rule_334ed2b5, jsii.invoke(self, "onStateChange", [id, options]))
3294
3294
 
3295
+ @jsii.python.classproperty
3296
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
3297
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
3298
+ '''Uniquely identifies this class.'''
3299
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
3300
+
3295
3301
  @builtins.property
3296
3302
  @jsii.member(jsii_name="repositoryArn")
3297
3303
  def repository_arn(self) -> builtins.str:
@@ -7167,6 +7167,12 @@ class LambdaApplication(
7167
7167
  check_type(argname="argument lambda_application_name", value=lambda_application_name, expected_type=type_hints["lambda_application_name"])
7168
7168
  return typing.cast(ILambdaApplication, jsii.sinvoke(cls, "fromLambdaApplicationName", [scope, id, lambda_application_name]))
7169
7169
 
7170
+ @jsii.python.classproperty
7171
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
7172
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
7173
+ '''Uniquely identifies this class.'''
7174
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
7175
+
7170
7176
  @builtins.property
7171
7177
  @jsii.member(jsii_name="applicationArn")
7172
7178
  def application_arn(self) -> builtins.str:
@@ -7522,6 +7528,12 @@ class LambdaDeploymentGroup(
7522
7528
  check_type(argname="argument grantee", value=grantee, expected_type=type_hints["grantee"])
7523
7529
  return typing.cast(_Grant_a7ae64f8, jsii.invoke(self, "grantPutLifecycleEventHookExecutionStatus", [grantee]))
7524
7530
 
7531
+ @jsii.python.classproperty
7532
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
7533
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
7534
+ '''Uniquely identifies this class.'''
7535
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
7536
+
7525
7537
  @builtins.property
7526
7538
  @jsii.member(jsii_name="application")
7527
7539
  def application(self) -> ILambdaApplication:
@@ -8204,6 +8216,12 @@ class ServerApplication(
8204
8216
  check_type(argname="argument server_application_name", value=server_application_name, expected_type=type_hints["server_application_name"])
8205
8217
  return typing.cast(IServerApplication, jsii.sinvoke(cls, "fromServerApplicationName", [scope, id, server_application_name]))
8206
8218
 
8219
+ @jsii.python.classproperty
8220
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
8221
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
8222
+ '''Uniquely identifies this class.'''
8223
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
8224
+
8207
8225
  @builtins.property
8208
8226
  @jsii.member(jsii_name="applicationArn")
8209
8227
  def application_arn(self) -> builtins.str:
@@ -8493,6 +8511,12 @@ class ServerDeploymentGroup(
8493
8511
  check_type(argname="argument asg", value=asg, expected_type=type_hints["asg"])
8494
8512
  return typing.cast(None, jsii.invoke(self, "addAutoScalingGroup", [asg]))
8495
8513
 
8514
+ @jsii.python.classproperty
8515
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
8516
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
8517
+ '''Uniquely identifies this class.'''
8518
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
8519
+
8496
8520
  @builtins.property
8497
8521
  @jsii.member(jsii_name="application")
8498
8522
  def application(self) -> IServerApplication:
@@ -9529,6 +9553,15 @@ class CustomLambdaDeploymentConfig(
9529
9553
 
9530
9554
  jsii.create(self.__class__, self, [scope, id, props])
9531
9555
 
9556
+ @jsii.python.classproperty
9557
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
9558
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
9559
+ '''(deprecated) Uniquely identifies this class.
9560
+
9561
+ :stability: deprecated
9562
+ '''
9563
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
9564
+
9532
9565
  @builtins.property
9533
9566
  @jsii.member(jsii_name="deploymentConfigArn")
9534
9567
  def deployment_config_arn(self) -> builtins.str:
@@ -9641,6 +9674,12 @@ class EcsApplication(
9641
9674
  check_type(argname="argument ecs_application_name", value=ecs_application_name, expected_type=type_hints["ecs_application_name"])
9642
9675
  return typing.cast(IEcsApplication, jsii.sinvoke(cls, "fromEcsApplicationName", [scope, id, ecs_application_name]))
9643
9676
 
9677
+ @jsii.python.classproperty
9678
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
9679
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
9680
+ '''Uniquely identifies this class.'''
9681
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
9682
+
9644
9683
  @builtins.property
9645
9684
  @jsii.member(jsii_name="applicationArn")
9646
9685
  def application_arn(self) -> builtins.str:
@@ -9774,6 +9813,12 @@ class EcsDeploymentConfig(
9774
9813
  '''CodeDeploy predefined deployment configuration that shifts 10 percent of traffic every three minutes until all traffic is shifted.'''
9775
9814
  return typing.cast(IEcsDeploymentConfig, jsii.sget(cls, "LINEAR_10PERCENT_EVERY_3MINUTES"))
9776
9815
 
9816
+ @jsii.python.classproperty
9817
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
9818
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
9819
+ '''Uniquely identifies this class.'''
9820
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
9821
+
9777
9822
 
9778
9823
  @jsii.implements(IEcsDeploymentGroup)
9779
9824
  class EcsDeploymentGroup(
@@ -9910,6 +9955,12 @@ class EcsDeploymentGroup(
9910
9955
  check_type(argname="argument alarm", value=alarm, expected_type=type_hints["alarm"])
9911
9956
  return typing.cast(None, jsii.invoke(self, "addAlarm", [alarm]))
9912
9957
 
9958
+ @jsii.python.classproperty
9959
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
9960
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
9961
+ '''Uniquely identifies this class.'''
9962
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
9963
+
9913
9964
  @builtins.property
9914
9965
  @jsii.member(jsii_name="application")
9915
9966
  def application(self) -> IEcsApplication:
@@ -10114,6 +10165,12 @@ class LambdaDeploymentConfig(
10114
10165
  '''CodeDeploy predefined deployment configuration that shifts 10 percent of traffic every three minutes until all traffic is shifted.'''
10115
10166
  return typing.cast(ILambdaDeploymentConfig, jsii.sget(cls, "LINEAR_10PERCENT_EVERY_3MINUTES"))
10116
10167
 
10168
+ @jsii.python.classproperty
10169
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
10170
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
10171
+ '''Uniquely identifies this class.'''
10172
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
10173
+
10117
10174
 
10118
10175
  @jsii.implements(IServerDeploymentConfig)
10119
10176
  class ServerDeploymentConfig(
@@ -10213,6 +10270,12 @@ class ServerDeploymentConfig(
10213
10270
  '''
10214
10271
  return typing.cast(IServerDeploymentConfig, jsii.sget(cls, "ONE_AT_A_TIME"))
10215
10272
 
10273
+ @jsii.python.classproperty
10274
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
10275
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
10276
+ '''Uniquely identifies this class.'''
10277
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
10278
+
10216
10279
 
10217
10280
  class TimeBasedCanaryTrafficRouting(
10218
10281
  TrafficRouting,