aws-cdk-lib 2.194.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 (108) hide show
  1. aws_cdk/__init__.py +435 -20
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.194.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 +208 -70
  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 +1201 -18
  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 +277 -120
  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 +114 -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 +215 -10
  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 +1013 -100
  35. aws_cdk/aws_docdb/__init__.py +27 -3
  36. aws_cdk/aws_dsql/__init__.py +29 -12
  37. aws_cdk/aws_dynamodb/__init__.py +25 -11
  38. aws_cdk/aws_ec2/__init__.py +408 -23
  39. aws_cdk/aws_ecr/__init__.py +22 -14
  40. aws_cdk/aws_ecr_assets/__init__.py +6 -0
  41. aws_cdk/aws_ecs/__init__.py +116 -34
  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 +8 -3
  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 +181 -26
  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 +7 -7
  57. aws_cdk/aws_kinesisanalyticsv2/__init__.py +7 -7
  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_medialive/__init__.py +4 -6
  64. aws_cdk/aws_mediatailor/__init__.py +115 -0
  65. aws_cdk/aws_oam/__init__.py +43 -10
  66. aws_cdk/aws_opensearchservice/__init__.py +12 -0
  67. aws_cdk/aws_qbusiness/__init__.py +2 -2
  68. aws_cdk/aws_quicksight/__init__.py +22 -22
  69. aws_cdk/aws_rds/__init__.py +347 -36
  70. aws_cdk/aws_redshiftserverless/__init__.py +7 -7
  71. aws_cdk/aws_route53/__init__.py +735 -33
  72. aws_cdk/aws_route53_targets/__init__.py +62 -1
  73. aws_cdk/aws_route53profiles/__init__.py +1 -1
  74. aws_cdk/aws_s3/__init__.py +37 -10
  75. aws_cdk/aws_s3_deployment/__init__.py +6 -0
  76. aws_cdk/aws_s3_notifications/__init__.py +5 -5
  77. aws_cdk/aws_sagemaker/__init__.py +452 -8
  78. aws_cdk/aws_scheduler/__init__.py +12 -0
  79. aws_cdk/aws_secretsmanager/__init__.py +24 -0
  80. aws_cdk/aws_servicecatalog/__init__.py +24 -0
  81. aws_cdk/aws_servicediscovery/__init__.py +48 -0
  82. aws_cdk/aws_ses/__init__.py +133 -33
  83. aws_cdk/aws_signer/__init__.py +6 -0
  84. aws_cdk/aws_sns/__init__.py +18 -0
  85. aws_cdk/aws_sns_subscriptions/__init__.py +6 -0
  86. aws_cdk/aws_sqs/__init__.py +12 -0
  87. aws_cdk/aws_ssm/__init__.py +12 -0
  88. aws_cdk/aws_ssmcontacts/__init__.py +53 -2
  89. aws_cdk/aws_ssmguiconnect/__init__.py +544 -0
  90. aws_cdk/aws_stepfunctions/__init__.py +153 -7
  91. aws_cdk/aws_stepfunctions_tasks/__init__.py +46 -10
  92. aws_cdk/aws_synthetics/__init__.py +32 -0
  93. aws_cdk/aws_verifiedpermissions/__init__.py +168 -3
  94. aws_cdk/aws_vpclattice/__init__.py +3 -1
  95. aws_cdk/aws_wisdom/__init__.py +6 -4
  96. aws_cdk/cloud_assembly_schema/__init__.py +7 -1
  97. aws_cdk/custom_resources/__init__.py +18 -0
  98. aws_cdk/cx_api/__init__.py +33 -0
  99. aws_cdk/lambda_layer_awscli/__init__.py +6 -0
  100. aws_cdk/lambda_layer_node_proxy_agent/__init__.py +6 -0
  101. aws_cdk/pipelines/__init__.py +10 -10
  102. aws_cdk/triggers/__init__.py +6 -0
  103. {aws_cdk_lib-2.194.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/METADATA +84 -6
  104. {aws_cdk_lib-2.194.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/RECORD +108 -107
  105. {aws_cdk_lib-2.194.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/LICENSE +0 -0
  106. {aws_cdk_lib-2.194.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/NOTICE +0 -0
  107. {aws_cdk_lib-2.194.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/WHEEL +0 -0
  108. {aws_cdk_lib-2.194.0.dist-info → aws_cdk_lib-2.196.0.dist-info}/top_level.txt +0 -0
@@ -621,8 +621,8 @@ instance around:
621
621
  #
622
622
  class Stack1(cdk.Stack):
623
623
 
624
- def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None):
625
- super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation)
624
+ def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None, propertyInjectors=None):
625
+ super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation, propertyInjectors=propertyInjectors)
626
626
 
627
627
  self.vpc = ec2.Vpc(self, "VPC")
628
628
 
@@ -630,8 +630,8 @@ class Stack1(cdk.Stack):
630
630
  # Stack2 consumes the VPC
631
631
  #
632
632
  class Stack2(cdk.Stack):
633
- def __init__(self, scope, id, *, vpc, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None):
634
- super().__init__(scope, id, vpc=vpc, description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation)
633
+ def __init__(self, scope, id, *, vpc, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None, propertyInjectors=None):
634
+ super().__init__(scope, id, vpc=vpc, description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation, propertyInjectors=propertyInjectors)
635
635
 
636
636
  # Pass the VPC to a construct that needs it
637
637
  ConstructThatTakesAVpc(self, "Construct",
@@ -8173,6 +8173,9 @@ class CfnClientVpnEndpoint(
8173
8173
  # the properties below are optional
8174
8174
  banner_text="bannerText"
8175
8175
  ),
8176
+ client_route_enforcement_options=ec2.CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty(
8177
+ enforced=False
8178
+ ),
8176
8179
  description="description",
8177
8180
  disconnect_on_session_timeout=False,
8178
8181
  dns_servers=["dnsServers"],
@@ -8204,6 +8207,7 @@ class CfnClientVpnEndpoint(
8204
8207
  server_certificate_arn: builtins.str,
8205
8208
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClientVpnEndpoint.ClientConnectOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
8206
8209
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
8210
+ client_route_enforcement_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
8207
8211
  description: typing.Optional[builtins.str] = None,
8208
8212
  disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
8209
8213
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -8225,8 +8229,9 @@ class CfnClientVpnEndpoint(
8225
8229
  :param server_certificate_arn: The ARN of the server certificate. For more information, see the `AWS Certificate Manager User Guide <https://docs.aws.amazon.com/acm/latest/userguide/>`_ .
8226
8230
  :param client_connect_options: The options for managing connection authorization for new client connections.
8227
8231
  :param client_login_banner_options: Options for enabling a customizable text banner that will be displayed on AWS provided clients when a VPN session is established.
8232
+ :param client_route_enforcement_options: Client route enforcement is a feature of the Client VPN service that helps enforce administrator defined routes on devices connected through the VPN. T his feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel. Client route enforcement works by monitoring the route table of a connected device for routing policy changes to the VPN connection. If the feature detects any VPN routing policy modifications, it will automatically force an update to the route table, reverting it back to the expected route configurations.
8228
8233
  :param description: A brief description of the Client VPN endpoint.
8229
- :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached. If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``false`` .
8234
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached. If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``true`` .
8230
8235
  :param dns_servers: Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.
8231
8236
  :param security_group_ids: The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.
8232
8237
  :param self_service_portal: Specify whether to enable the self-service portal for the Client VPN endpoint. Default Value: ``enabled``
@@ -8248,6 +8253,7 @@ class CfnClientVpnEndpoint(
8248
8253
  server_certificate_arn=server_certificate_arn,
8249
8254
  client_connect_options=client_connect_options,
8250
8255
  client_login_banner_options=client_login_banner_options,
8256
+ client_route_enforcement_options=client_route_enforcement_options,
8251
8257
  description=description,
8252
8258
  disconnect_on_session_timeout=disconnect_on_session_timeout,
8253
8259
  dns_servers=dns_servers,
@@ -8404,6 +8410,24 @@ class CfnClientVpnEndpoint(
8404
8410
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8405
8411
  jsii.set(self, "clientLoginBannerOptions", value) # pyright: ignore[reportArgumentType]
8406
8412
 
8413
+ @builtins.property
8414
+ @jsii.member(jsii_name="clientRouteEnforcementOptions")
8415
+ def client_route_enforcement_options(
8416
+ self,
8417
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty"]]:
8418
+ '''Client route enforcement is a feature of the Client VPN service that helps enforce administrator defined routes on devices connected through the VPN.'''
8419
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty"]], jsii.get(self, "clientRouteEnforcementOptions"))
8420
+
8421
+ @client_route_enforcement_options.setter
8422
+ def client_route_enforcement_options(
8423
+ self,
8424
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty"]],
8425
+ ) -> None:
8426
+ if __debug__:
8427
+ type_hints = typing.get_type_hints(_typecheckingstub__b7449176e28b63826ef826a7cc608350858f54ad63967741bedbe6e29e4548e0)
8428
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8429
+ jsii.set(self, "clientRouteEnforcementOptions", value) # pyright: ignore[reportArgumentType]
8430
+
8407
8431
  @builtins.property
8408
8432
  @jsii.member(jsii_name="description")
8409
8433
  def description(self) -> typing.Optional[builtins.str]:
@@ -8909,6 +8933,73 @@ class CfnClientVpnEndpoint(
8909
8933
  k + "=" + repr(v) for k, v in self._values.items()
8910
8934
  )
8911
8935
 
8936
+ @jsii.data_type(
8937
+ jsii_type="aws-cdk-lib.aws_ec2.CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty",
8938
+ jsii_struct_bases=[],
8939
+ name_mapping={"enforced": "enforced"},
8940
+ )
8941
+ class ClientRouteEnforcementOptionsProperty:
8942
+ def __init__(
8943
+ self,
8944
+ *,
8945
+ enforced: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
8946
+ ) -> None:
8947
+ '''Client Route Enforcement is a feature of Client VPN that helps enforce administrator defined routes on devices connected through the VPN.
8948
+
8949
+ This feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel.
8950
+
8951
+ Client Route Enforcement works by monitoring the route table of a connected device for routing policy changes to the VPN connection. If the feature detects any VPN routing policy modifications, it will automatically force an update to the route table, reverting it back to the expected route configurations.
8952
+
8953
+ :param enforced: Enable or disable Client Route Enforcement. The state can either be ``true`` (enabled) or ``false`` (disabled). The default is ``false`` . Valid values: ``true | false`` Default value: ``false``
8954
+
8955
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientrouteenforcementoptions.html
8956
+ :exampleMetadata: fixture=_generated
8957
+
8958
+ Example::
8959
+
8960
+ # The code below shows an example of how to instantiate this type.
8961
+ # The values are placeholders you should change.
8962
+ from aws_cdk import aws_ec2 as ec2
8963
+
8964
+ client_route_enforcement_options_property = ec2.CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty(
8965
+ enforced=False
8966
+ )
8967
+ '''
8968
+ if __debug__:
8969
+ type_hints = typing.get_type_hints(_typecheckingstub__b6a34038d1c5e331979b92a9cd810c8c4993fdf3bdc4b6a567ffbfa48ba19f4e)
8970
+ check_type(argname="argument enforced", value=enforced, expected_type=type_hints["enforced"])
8971
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
8972
+ if enforced is not None:
8973
+ self._values["enforced"] = enforced
8974
+
8975
+ @builtins.property
8976
+ def enforced(
8977
+ self,
8978
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
8979
+ '''Enable or disable Client Route Enforcement.
8980
+
8981
+ The state can either be ``true`` (enabled) or ``false`` (disabled). The default is ``false`` .
8982
+
8983
+ Valid values: ``true | false``
8984
+
8985
+ Default value: ``false``
8986
+
8987
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-clientvpnendpoint-clientrouteenforcementoptions.html#cfn-ec2-clientvpnendpoint-clientrouteenforcementoptions-enforced
8988
+ '''
8989
+ result = self._values.get("enforced")
8990
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
8991
+
8992
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
8993
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
8994
+
8995
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
8996
+ return not (rhs == self)
8997
+
8998
+ def __repr__(self) -> str:
8999
+ return "ClientRouteEnforcementOptionsProperty(%s)" % ", ".join(
9000
+ k + "=" + repr(v) for k, v in self._values.items()
9001
+ )
9002
+
8912
9003
  @jsii.data_type(
8913
9004
  jsii_type="aws-cdk-lib.aws_ec2.CfnClientVpnEndpoint.ConnectionLogOptionsProperty",
8914
9005
  jsii_struct_bases=[],
@@ -9218,6 +9309,7 @@ class CfnClientVpnEndpoint(
9218
9309
  "server_certificate_arn": "serverCertificateArn",
9219
9310
  "client_connect_options": "clientConnectOptions",
9220
9311
  "client_login_banner_options": "clientLoginBannerOptions",
9312
+ "client_route_enforcement_options": "clientRouteEnforcementOptions",
9221
9313
  "description": "description",
9222
9314
  "disconnect_on_session_timeout": "disconnectOnSessionTimeout",
9223
9315
  "dns_servers": "dnsServers",
@@ -9241,6 +9333,7 @@ class CfnClientVpnEndpointProps:
9241
9333
  server_certificate_arn: builtins.str,
9242
9334
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9243
9335
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9336
+ client_route_enforcement_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9244
9337
  description: typing.Optional[builtins.str] = None,
9245
9338
  disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
9246
9339
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -9261,8 +9354,9 @@ class CfnClientVpnEndpointProps:
9261
9354
  :param server_certificate_arn: The ARN of the server certificate. For more information, see the `AWS Certificate Manager User Guide <https://docs.aws.amazon.com/acm/latest/userguide/>`_ .
9262
9355
  :param client_connect_options: The options for managing connection authorization for new client connections.
9263
9356
  :param client_login_banner_options: Options for enabling a customizable text banner that will be displayed on AWS provided clients when a VPN session is established.
9357
+ :param client_route_enforcement_options: Client route enforcement is a feature of the Client VPN service that helps enforce administrator defined routes on devices connected through the VPN. T his feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel. Client route enforcement works by monitoring the route table of a connected device for routing policy changes to the VPN connection. If the feature detects any VPN routing policy modifications, it will automatically force an update to the route table, reverting it back to the expected route configurations.
9264
9358
  :param description: A brief description of the Client VPN endpoint.
9265
- :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached. If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``false`` .
9359
+ :param disconnect_on_session_timeout: Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached. If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``true`` .
9266
9360
  :param dns_servers: Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address configured on the device is used for the DNS server.
9267
9361
  :param security_group_ids: The IDs of one or more security groups to apply to the target network. You must also specify the ID of the VPC that contains the security groups.
9268
9362
  :param self_service_portal: Specify whether to enable the self-service portal for the Client VPN endpoint. Default Value: ``enabled``
@@ -9323,6 +9417,9 @@ class CfnClientVpnEndpointProps:
9323
9417
  # the properties below are optional
9324
9418
  banner_text="bannerText"
9325
9419
  ),
9420
+ client_route_enforcement_options=ec2.CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty(
9421
+ enforced=False
9422
+ ),
9326
9423
  description="description",
9327
9424
  disconnect_on_session_timeout=False,
9328
9425
  dns_servers=["dnsServers"],
@@ -9350,6 +9447,7 @@ class CfnClientVpnEndpointProps:
9350
9447
  check_type(argname="argument server_certificate_arn", value=server_certificate_arn, expected_type=type_hints["server_certificate_arn"])
9351
9448
  check_type(argname="argument client_connect_options", value=client_connect_options, expected_type=type_hints["client_connect_options"])
9352
9449
  check_type(argname="argument client_login_banner_options", value=client_login_banner_options, expected_type=type_hints["client_login_banner_options"])
9450
+ check_type(argname="argument client_route_enforcement_options", value=client_route_enforcement_options, expected_type=type_hints["client_route_enforcement_options"])
9353
9451
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
9354
9452
  check_type(argname="argument disconnect_on_session_timeout", value=disconnect_on_session_timeout, expected_type=type_hints["disconnect_on_session_timeout"])
9355
9453
  check_type(argname="argument dns_servers", value=dns_servers, expected_type=type_hints["dns_servers"])
@@ -9371,6 +9469,8 @@ class CfnClientVpnEndpointProps:
9371
9469
  self._values["client_connect_options"] = client_connect_options
9372
9470
  if client_login_banner_options is not None:
9373
9471
  self._values["client_login_banner_options"] = client_login_banner_options
9472
+ if client_route_enforcement_options is not None:
9473
+ self._values["client_route_enforcement_options"] = client_route_enforcement_options
9374
9474
  if description is not None:
9375
9475
  self._values["description"] = description
9376
9476
  if disconnect_on_session_timeout is not None:
@@ -9471,6 +9571,21 @@ class CfnClientVpnEndpointProps:
9471
9571
  result = self._values.get("client_login_banner_options")
9472
9572
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty]], result)
9473
9573
 
9574
+ @builtins.property
9575
+ def client_route_enforcement_options(
9576
+ self,
9577
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty]]:
9578
+ '''Client route enforcement is a feature of the Client VPN service that helps enforce administrator defined routes on devices connected through the VPN.
9579
+
9580
+ T his feature helps improve your security posture by ensuring that network traffic originating from a connected client is not inadvertently sent outside the VPN tunnel.
9581
+
9582
+ Client route enforcement works by monitoring the route table of a connected device for routing policy changes to the VPN connection. If the feature detects any VPN routing policy modifications, it will automatically force an update to the route table, reverting it back to the expected route configurations.
9583
+
9584
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-clientrouteenforcementoptions
9585
+ '''
9586
+ result = self._values.get("client_route_enforcement_options")
9587
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty]], result)
9588
+
9474
9589
  @builtins.property
9475
9590
  def description(self) -> typing.Optional[builtins.str]:
9476
9591
  '''A brief description of the Client VPN endpoint.
@@ -9486,7 +9601,7 @@ class CfnClientVpnEndpointProps:
9486
9601
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
9487
9602
  '''Indicates whether the client VPN session is disconnected after the maximum ``sessionTimeoutHours`` is reached.
9488
9603
 
9489
- If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``false`` .
9604
+ If ``true`` , users are prompted to reconnect client VPN. If ``false`` , client VPN attempts to reconnect automatically. The default value is ``true`` .
9490
9605
 
9491
9606
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-clientvpnendpoint.html#cfn-ec2-clientvpnendpoint-disconnectonsessiontimeout
9492
9607
  '''
@@ -34623,6 +34738,7 @@ class CfnNetworkInsightsAnalysis(
34623
34738
  # the properties below are optional
34624
34739
  additional_accounts=["additionalAccounts"],
34625
34740
  filter_in_arns=["filterInArns"],
34741
+ filter_out_arns=["filterOutArns"],
34626
34742
  tags=[CfnTag(
34627
34743
  key="key",
34628
34744
  value="value"
@@ -34638,6 +34754,7 @@ class CfnNetworkInsightsAnalysis(
34638
34754
  network_insights_path_id: builtins.str,
34639
34755
  additional_accounts: typing.Optional[typing.Sequence[builtins.str]] = None,
34640
34756
  filter_in_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
34757
+ filter_out_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
34641
34758
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
34642
34759
  ) -> None:
34643
34760
  '''
@@ -34646,6 +34763,7 @@ class CfnNetworkInsightsAnalysis(
34646
34763
  :param network_insights_path_id: The ID of the path.
34647
34764
  :param additional_accounts: The member accounts that contain resources that the path can traverse.
34648
34765
  :param filter_in_arns: The Amazon Resource Names (ARN) of the resources that the path must traverse.
34766
+ :param filter_out_arns:
34649
34767
  :param tags: The tags to apply.
34650
34768
  '''
34651
34769
  if __debug__:
@@ -34656,6 +34774,7 @@ class CfnNetworkInsightsAnalysis(
34656
34774
  network_insights_path_id=network_insights_path_id,
34657
34775
  additional_accounts=additional_accounts,
34658
34776
  filter_in_arns=filter_in_arns,
34777
+ filter_out_arns=filter_out_arns,
34659
34778
  tags=tags,
34660
34779
  )
34661
34780
 
@@ -34845,6 +34964,21 @@ class CfnNetworkInsightsAnalysis(
34845
34964
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
34846
34965
  jsii.set(self, "filterInArns", value) # pyright: ignore[reportArgumentType]
34847
34966
 
34967
+ @builtins.property
34968
+ @jsii.member(jsii_name="filterOutArns")
34969
+ def filter_out_arns(self) -> typing.Optional[typing.List[builtins.str]]:
34970
+ return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "filterOutArns"))
34971
+
34972
+ @filter_out_arns.setter
34973
+ def filter_out_arns(
34974
+ self,
34975
+ value: typing.Optional[typing.List[builtins.str]],
34976
+ ) -> None:
34977
+ if __debug__:
34978
+ type_hints = typing.get_type_hints(_typecheckingstub__a3e2782a8511eec581f257080a1a098ac8d87ebc507433291c01b4f61ad401ff)
34979
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
34980
+ jsii.set(self, "filterOutArns", value) # pyright: ignore[reportArgumentType]
34981
+
34848
34982
  @builtins.property
34849
34983
  @jsii.member(jsii_name="tagsRaw")
34850
34984
  def tags_raw(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
@@ -37877,6 +38011,7 @@ class CfnNetworkInsightsAnalysis(
37877
38011
  "network_insights_path_id": "networkInsightsPathId",
37878
38012
  "additional_accounts": "additionalAccounts",
37879
38013
  "filter_in_arns": "filterInArns",
38014
+ "filter_out_arns": "filterOutArns",
37880
38015
  "tags": "tags",
37881
38016
  },
37882
38017
  )
@@ -37887,6 +38022,7 @@ class CfnNetworkInsightsAnalysisProps:
37887
38022
  network_insights_path_id: builtins.str,
37888
38023
  additional_accounts: typing.Optional[typing.Sequence[builtins.str]] = None,
37889
38024
  filter_in_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
38025
+ filter_out_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
37890
38026
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
37891
38027
  ) -> None:
37892
38028
  '''Properties for defining a ``CfnNetworkInsightsAnalysis``.
@@ -37894,6 +38030,7 @@ class CfnNetworkInsightsAnalysisProps:
37894
38030
  :param network_insights_path_id: The ID of the path.
37895
38031
  :param additional_accounts: The member accounts that contain resources that the path can traverse.
37896
38032
  :param filter_in_arns: The Amazon Resource Names (ARN) of the resources that the path must traverse.
38033
+ :param filter_out_arns:
37897
38034
  :param tags: The tags to apply.
37898
38035
 
37899
38036
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html
@@ -37911,6 +38048,7 @@ class CfnNetworkInsightsAnalysisProps:
37911
38048
  # the properties below are optional
37912
38049
  additional_accounts=["additionalAccounts"],
37913
38050
  filter_in_arns=["filterInArns"],
38051
+ filter_out_arns=["filterOutArns"],
37914
38052
  tags=[CfnTag(
37915
38053
  key="key",
37916
38054
  value="value"
@@ -37922,6 +38060,7 @@ class CfnNetworkInsightsAnalysisProps:
37922
38060
  check_type(argname="argument network_insights_path_id", value=network_insights_path_id, expected_type=type_hints["network_insights_path_id"])
37923
38061
  check_type(argname="argument additional_accounts", value=additional_accounts, expected_type=type_hints["additional_accounts"])
37924
38062
  check_type(argname="argument filter_in_arns", value=filter_in_arns, expected_type=type_hints["filter_in_arns"])
38063
+ check_type(argname="argument filter_out_arns", value=filter_out_arns, expected_type=type_hints["filter_out_arns"])
37925
38064
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
37926
38065
  self._values: typing.Dict[builtins.str, typing.Any] = {
37927
38066
  "network_insights_path_id": network_insights_path_id,
@@ -37930,6 +38069,8 @@ class CfnNetworkInsightsAnalysisProps:
37930
38069
  self._values["additional_accounts"] = additional_accounts
37931
38070
  if filter_in_arns is not None:
37932
38071
  self._values["filter_in_arns"] = filter_in_arns
38072
+ if filter_out_arns is not None:
38073
+ self._values["filter_out_arns"] = filter_out_arns
37933
38074
  if tags is not None:
37934
38075
  self._values["tags"] = tags
37935
38076
 
@@ -37961,6 +38102,14 @@ class CfnNetworkInsightsAnalysisProps:
37961
38102
  result = self._values.get("filter_in_arns")
37962
38103
  return typing.cast(typing.Optional[typing.List[builtins.str]], result)
37963
38104
 
38105
+ @builtins.property
38106
+ def filter_out_arns(self) -> typing.Optional[typing.List[builtins.str]]:
38107
+ '''
38108
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-networkinsightsanalysis.html#cfn-ec2-networkinsightsanalysis-filteroutarns
38109
+ '''
38110
+ result = self._values.get("filter_out_arns")
38111
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
38112
+
37964
38113
  @builtins.property
37965
38114
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
37966
38115
  '''The tags to apply.
@@ -54863,8 +55012,8 @@ class CfnTransitGateway(
54863
55012
  :param amazon_side_asn: A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for 16-bit ASNs. The default is 64512.
54864
55013
  :param association_default_route_table_id: The ID of the default association route table.
54865
55014
  :param auto_accept_shared_attachments: Enable or disable automatic acceptance of attachment requests. Disabled by default.
54866
- :param default_route_table_association: Enable or disable automatic association with the default association route table. Enabled by default.
54867
- :param default_route_table_propagation: Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default.
55015
+ :param default_route_table_association: Enable or disable automatic association with the default association route table. Enabled by default. If ``DefaultRouteTableAssociation`` is set to enable, AWS Transit Gateway will create the default transit gateway route table.
55016
+ :param default_route_table_propagation: Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default. If ``DefaultRouteTablePropagation`` is set to enable, AWS Transit Gateway will create the default transit gateway route table.
54868
55017
  :param description: The description of the transit gateway.
54869
55018
  :param dns_support: Enable or disable DNS support. Enabled by default.
54870
55019
  :param multicast_support: Indicates whether multicast is enabled on the transit gateway.
@@ -57172,8 +57321,8 @@ class CfnTransitGatewayPeeringAttachment(
57172
57321
  :param scope: Scope in which this resource is defined.
57173
57322
  :param id: Construct identifier for this resource (unique in its scope).
57174
57323
  :param peer_account_id: The ID of the AWS account that owns the transit gateway.
57175
- :param peer_region: The Region of the transit gateway.
57176
- :param peer_transit_gateway_id: The ID of the transit gateway.
57324
+ :param peer_region: The Region where the transit gateway that you want to create the peer for is located.
57325
+ :param peer_transit_gateway_id: The ID of the transit gateway in the PeerRegion.
57177
57326
  :param transit_gateway_id: The ID of the transit gateway peering attachment.
57178
57327
  :param tags: The tags for the transit gateway peering attachment.
57179
57328
  '''
@@ -57301,7 +57450,7 @@ class CfnTransitGatewayPeeringAttachment(
57301
57450
  @builtins.property
57302
57451
  @jsii.member(jsii_name="peerRegion")
57303
57452
  def peer_region(self) -> builtins.str:
57304
- '''The Region of the transit gateway.'''
57453
+ '''The Region where the transit gateway that you want to create the peer for is located.'''
57305
57454
  return typing.cast(builtins.str, jsii.get(self, "peerRegion"))
57306
57455
 
57307
57456
  @peer_region.setter
@@ -57314,7 +57463,7 @@ class CfnTransitGatewayPeeringAttachment(
57314
57463
  @builtins.property
57315
57464
  @jsii.member(jsii_name="peerTransitGatewayId")
57316
57465
  def peer_transit_gateway_id(self) -> builtins.str:
57317
- '''The ID of the transit gateway.'''
57466
+ '''The ID of the transit gateway in the PeerRegion.'''
57318
57467
  return typing.cast(builtins.str, jsii.get(self, "peerTransitGatewayId"))
57319
57468
 
57320
57469
  @peer_transit_gateway_id.setter
@@ -57445,8 +57594,8 @@ class CfnTransitGatewayPeeringAttachmentProps:
57445
57594
  '''Properties for defining a ``CfnTransitGatewayPeeringAttachment``.
57446
57595
 
57447
57596
  :param peer_account_id: The ID of the AWS account that owns the transit gateway.
57448
- :param peer_region: The Region of the transit gateway.
57449
- :param peer_transit_gateway_id: The ID of the transit gateway.
57597
+ :param peer_region: The Region where the transit gateway that you want to create the peer for is located.
57598
+ :param peer_transit_gateway_id: The ID of the transit gateway in the PeerRegion.
57450
57599
  :param transit_gateway_id: The ID of the transit gateway peering attachment.
57451
57600
  :param tags: The tags for the transit gateway peering attachment.
57452
57601
 
@@ -57500,7 +57649,7 @@ class CfnTransitGatewayPeeringAttachmentProps:
57500
57649
 
57501
57650
  @builtins.property
57502
57651
  def peer_region(self) -> builtins.str:
57503
- '''The Region of the transit gateway.
57652
+ '''The Region where the transit gateway that you want to create the peer for is located.
57504
57653
 
57505
57654
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaypeeringattachment.html#cfn-ec2-transitgatewaypeeringattachment-peerregion
57506
57655
  '''
@@ -57510,7 +57659,7 @@ class CfnTransitGatewayPeeringAttachmentProps:
57510
57659
 
57511
57660
  @builtins.property
57512
57661
  def peer_transit_gateway_id(self) -> builtins.str:
57513
- '''The ID of the transit gateway.
57662
+ '''The ID of the transit gateway in the PeerRegion.
57514
57663
 
57515
57664
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgatewaypeeringattachment.html#cfn-ec2-transitgatewaypeeringattachment-peertransitgatewayid
57516
57665
  '''
@@ -57591,8 +57740,8 @@ class CfnTransitGatewayProps:
57591
57740
  :param amazon_side_asn: A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for 16-bit ASNs. The default is 64512.
57592
57741
  :param association_default_route_table_id: The ID of the default association route table.
57593
57742
  :param auto_accept_shared_attachments: Enable or disable automatic acceptance of attachment requests. Disabled by default.
57594
- :param default_route_table_association: Enable or disable automatic association with the default association route table. Enabled by default.
57595
- :param default_route_table_propagation: Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default.
57743
+ :param default_route_table_association: Enable or disable automatic association with the default association route table. Enabled by default. If ``DefaultRouteTableAssociation`` is set to enable, AWS Transit Gateway will create the default transit gateway route table.
57744
+ :param default_route_table_propagation: Enable or disable automatic propagation of routes to the default propagation route table. Enabled by default. If ``DefaultRouteTablePropagation`` is set to enable, AWS Transit Gateway will create the default transit gateway route table.
57596
57745
  :param description: The description of the transit gateway.
57597
57746
  :param dns_support: Enable or disable DNS support. Enabled by default.
57598
57747
  :param multicast_support: Indicates whether multicast is enabled on the transit gateway.
@@ -57708,7 +57857,7 @@ class CfnTransitGatewayProps:
57708
57857
  def default_route_table_association(self) -> typing.Optional[builtins.str]:
57709
57858
  '''Enable or disable automatic association with the default association route table.
57710
57859
 
57711
- Enabled by default.
57860
+ Enabled by default. If ``DefaultRouteTableAssociation`` is set to enable, AWS Transit Gateway will create the default transit gateway route table.
57712
57861
 
57713
57862
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-defaultroutetableassociation
57714
57863
  '''
@@ -57719,7 +57868,7 @@ class CfnTransitGatewayProps:
57719
57868
  def default_route_table_propagation(self) -> typing.Optional[builtins.str]:
57720
57869
  '''Enable or disable automatic propagation of routes to the default propagation route table.
57721
57870
 
57722
- Enabled by default.
57871
+ Enabled by default. If ``DefaultRouteTablePropagation`` is set to enable, AWS Transit Gateway will create the default transit gateway route table.
57723
57872
 
57724
57873
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-transitgateway.html#cfn-ec2-transitgateway-defaultroutetablepropagation
57725
57874
  '''
@@ -69559,6 +69708,7 @@ class CfnVolume(
69559
69708
  value="value"
69560
69709
  )],
69561
69710
  throughput=123,
69711
+ volume_initialization_rate=123,
69562
69712
  volume_type="volumeType"
69563
69713
  )
69564
69714
  '''
@@ -69579,6 +69729,7 @@ class CfnVolume(
69579
69729
  snapshot_id: typing.Optional[builtins.str] = None,
69580
69730
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
69581
69731
  throughput: typing.Optional[jsii.Number] = None,
69732
+ volume_initialization_rate: typing.Optional[jsii.Number] = None,
69582
69733
  volume_type: typing.Optional[builtins.str] = None,
69583
69734
  ) -> None:
69584
69735
  '''
@@ -69595,6 +69746,7 @@ class CfnVolume(
69595
69746
  :param snapshot_id: The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
69596
69747
  :param tags: The tags to apply to the volume during creation.
69597
69748
  :param throughput: The throughput to provision for a volume, with a maximum of 1,000 MiB/s. This parameter is valid only for ``gp3`` volumes. The default value is 125. Valid Range: Minimum value of 125. Maximum value of 1000.
69749
+ :param volume_initialization_rate: Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as *volume initialization* . Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation. This parameter is supported only for volumes created from snapshots. Omit this parameter if: - You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation. .. epigraph:: If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore. - You want to create a volume that is initialized at the default rate. For more information, see `Initialize Amazon EBS volumes <https://docs.aws.amazon.com/ebs/latest/userguide/initalize-volume.html>`_ in the *Amazon EC2 User Guide* . Valid range: 100 - 300 MiB/s
69598
69750
  :param volume_type: The volume type. This parameter can be one of the following values:. - General Purpose SSD: ``gp2`` | ``gp3`` - Provisioned IOPS SSD: ``io1`` | ``io2`` - Throughput Optimized HDD: ``st1`` - Cold HDD: ``sc1`` - Magnetic: ``standard`` For more information, see `Amazon EBS volume types <https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html>`_ . Default: ``gp2``
69599
69751
  '''
69600
69752
  if __debug__:
@@ -69613,6 +69765,7 @@ class CfnVolume(
69613
69765
  snapshot_id=snapshot_id,
69614
69766
  tags=tags,
69615
69767
  throughput=throughput,
69768
+ volume_initialization_rate=volume_initialization_rate,
69616
69769
  volume_type=volume_type,
69617
69770
  )
69618
69771
 
@@ -69826,6 +69979,19 @@ class CfnVolume(
69826
69979
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
69827
69980
  jsii.set(self, "throughput", value) # pyright: ignore[reportArgumentType]
69828
69981
 
69982
+ @builtins.property
69983
+ @jsii.member(jsii_name="volumeInitializationRate")
69984
+ def volume_initialization_rate(self) -> typing.Optional[jsii.Number]:
69985
+ '''Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume.'''
69986
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "volumeInitializationRate"))
69987
+
69988
+ @volume_initialization_rate.setter
69989
+ def volume_initialization_rate(self, value: typing.Optional[jsii.Number]) -> None:
69990
+ if __debug__:
69991
+ type_hints = typing.get_type_hints(_typecheckingstub__0d794c400059825fc6340b04289a28489cba2b85515b159862a7fc5730b4181b)
69992
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
69993
+ jsii.set(self, "volumeInitializationRate", value) # pyright: ignore[reportArgumentType]
69994
+
69829
69995
  @builtins.property
69830
69996
  @jsii.member(jsii_name="volumeType")
69831
69997
  def volume_type(self) -> typing.Optional[builtins.str]:
@@ -70089,6 +70255,7 @@ class CfnVolumeAttachmentProps:
70089
70255
  "snapshot_id": "snapshotId",
70090
70256
  "tags": "tags",
70091
70257
  "throughput": "throughput",
70258
+ "volume_initialization_rate": "volumeInitializationRate",
70092
70259
  "volume_type": "volumeType",
70093
70260
  },
70094
70261
  )
@@ -70107,6 +70274,7 @@ class CfnVolumeProps:
70107
70274
  snapshot_id: typing.Optional[builtins.str] = None,
70108
70275
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
70109
70276
  throughput: typing.Optional[jsii.Number] = None,
70277
+ volume_initialization_rate: typing.Optional[jsii.Number] = None,
70110
70278
  volume_type: typing.Optional[builtins.str] = None,
70111
70279
  ) -> None:
70112
70280
  '''Properties for defining a ``CfnVolume``.
@@ -70122,6 +70290,7 @@ class CfnVolumeProps:
70122
70290
  :param snapshot_id: The snapshot from which to create the volume. You must specify either a snapshot ID or a volume size.
70123
70291
  :param tags: The tags to apply to the volume during creation.
70124
70292
  :param throughput: The throughput to provision for a volume, with a maximum of 1,000 MiB/s. This parameter is valid only for ``gp3`` volumes. The default value is 125. Valid Range: Minimum value of 125. Maximum value of 1000.
70293
+ :param volume_initialization_rate: Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume. This is also known as *volume initialization* . Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation. This parameter is supported only for volumes created from snapshots. Omit this parameter if: - You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation. .. epigraph:: If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore. - You want to create a volume that is initialized at the default rate. For more information, see `Initialize Amazon EBS volumes <https://docs.aws.amazon.com/ebs/latest/userguide/initalize-volume.html>`_ in the *Amazon EC2 User Guide* . Valid range: 100 - 300 MiB/s
70125
70294
  :param volume_type: The volume type. This parameter can be one of the following values:. - General Purpose SSD: ``gp2`` | ``gp3`` - Provisioned IOPS SSD: ``io1`` | ``io2`` - Throughput Optimized HDD: ``st1`` - Cold HDD: ``sc1`` - Magnetic: ``standard`` For more information, see `Amazon EBS volume types <https://docs.aws.amazon.com/ebs/latest/userguide/ebs-volume-types.html>`_ . Default: ``gp2``
70126
70295
 
70127
70296
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html
@@ -70150,6 +70319,7 @@ class CfnVolumeProps:
70150
70319
  value="value"
70151
70320
  )],
70152
70321
  throughput=123,
70322
+ volume_initialization_rate=123,
70153
70323
  volume_type="volumeType"
70154
70324
  )
70155
70325
  '''
@@ -70166,6 +70336,7 @@ class CfnVolumeProps:
70166
70336
  check_type(argname="argument snapshot_id", value=snapshot_id, expected_type=type_hints["snapshot_id"])
70167
70337
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
70168
70338
  check_type(argname="argument throughput", value=throughput, expected_type=type_hints["throughput"])
70339
+ check_type(argname="argument volume_initialization_rate", value=volume_initialization_rate, expected_type=type_hints["volume_initialization_rate"])
70169
70340
  check_type(argname="argument volume_type", value=volume_type, expected_type=type_hints["volume_type"])
70170
70341
  self._values: typing.Dict[builtins.str, typing.Any] = {
70171
70342
  "availability_zone": availability_zone,
@@ -70190,6 +70361,8 @@ class CfnVolumeProps:
70190
70361
  self._values["tags"] = tags
70191
70362
  if throughput is not None:
70192
70363
  self._values["throughput"] = throughput
70364
+ if volume_initialization_rate is not None:
70365
+ self._values["volume_initialization_rate"] = volume_initialization_rate
70193
70366
  if volume_type is not None:
70194
70367
  self._values["volume_type"] = volume_type
70195
70368
 
@@ -70348,6 +70521,31 @@ class CfnVolumeProps:
70348
70521
  result = self._values.get("throughput")
70349
70522
  return typing.cast(typing.Optional[jsii.Number], result)
70350
70523
 
70524
+ @builtins.property
70525
+ def volume_initialization_rate(self) -> typing.Optional[jsii.Number]:
70526
+ '''Specifies the Amazon EBS Provisioned Rate for Volume Initialization (volume initialization rate), in MiB/s, at which to download the snapshot blocks from Amazon S3 to the volume.
70527
+
70528
+ This is also known as *volume initialization* . Specifying a volume initialization rate ensures that the volume is initialized at a predictable and consistent rate after creation.
70529
+
70530
+ This parameter is supported only for volumes created from snapshots. Omit this parameter if:
70531
+
70532
+ - You want to create the volume using fast snapshot restore. You must specify a snapshot that is enabled for fast snapshot restore. In this case, the volume is fully initialized at creation.
70533
+
70534
+ .. epigraph::
70535
+
70536
+ If you specify a snapshot that is enabled for fast snapshot restore and a volume initialization rate, the volume will be initialized at the specified rate instead of fast snapshot restore.
70537
+
70538
+ - You want to create a volume that is initialized at the default rate.
70539
+
70540
+ For more information, see `Initialize Amazon EBS volumes <https://docs.aws.amazon.com/ebs/latest/userguide/initalize-volume.html>`_ in the *Amazon EC2 User Guide* .
70541
+
70542
+ Valid range: 100 - 300 MiB/s
70543
+
70544
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-volume.html#cfn-ec2-volume-volumeinitializationrate
70545
+ '''
70546
+ result = self._values.get("volume_initialization_rate")
70547
+ return typing.cast(typing.Optional[jsii.Number], result)
70548
+
70351
70549
  @builtins.property
70352
70550
  def volume_type(self) -> typing.Optional[builtins.str]:
70353
70551
  '''The volume type. This parameter can be one of the following values:.
@@ -70437,6 +70635,12 @@ class ClientVpnAuthorizationRule(
70437
70635
 
70438
70636
  jsii.create(self.__class__, self, [scope, id, props])
70439
70637
 
70638
+ @jsii.python.classproperty
70639
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
70640
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
70641
+ '''Uniquely identifies this class.'''
70642
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
70643
+
70440
70644
 
70441
70645
  @jsii.data_type(
70442
70646
  jsii_type="aws-cdk-lib.aws_ec2.ClientVpnAuthorizationRuleOptions",
@@ -71514,6 +71718,12 @@ class ClientVpnRoute(
71514
71718
 
71515
71719
  jsii.create(self.__class__, self, [scope, id, props])
71516
71720
 
71721
+ @jsii.python.classproperty
71722
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
71723
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
71724
+ '''Uniquely identifies this class.'''
71725
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
71726
+
71517
71727
 
71518
71728
  @jsii.data_type(
71519
71729
  jsii_type="aws-cdk-lib.aws_ec2.ClientVpnRouteOptions",
@@ -79230,6 +79440,12 @@ class Instance(
79230
79440
 
79231
79441
  return typing.cast(None, jsii.invoke(self, "applyCloudFormationInit", [init, options]))
79232
79442
 
79443
+ @jsii.python.classproperty
79444
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
79445
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
79446
+ '''Uniquely identifies this class.'''
79447
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
79448
+
79233
79449
  @builtins.property
79234
79450
  @jsii.member(jsii_name="connections")
79235
79451
  def connections(self) -> "Connections":
@@ -79552,6 +79768,10 @@ class InstanceClass(enum.Enum):
79552
79768
  '''Memory optimized instances with Graviton4 processors.'''
79553
79769
  R8G = "R8G"
79554
79770
  '''Memory optimized instances with Graviton4 processors.'''
79771
+ MEMORY8_GRAVITON4_NVME_DRIVE = "MEMORY8_GRAVITON4_NVME_DRIVE"
79772
+ '''Memory optimized instances, 8th generation with Graviton4 processors and local NVME drive.'''
79773
+ R8GD = "R8GD"
79774
+ '''Memory optimized instances, 8th generation with Graviton4 processors and local NVME drive.'''
79555
79775
  COMPUTE3 = "COMPUTE3"
79556
79776
  '''Compute optimized instances, 3rd generation.'''
79557
79777
  C3 = "C3"
@@ -79628,6 +79848,10 @@ class InstanceClass(enum.Enum):
79628
79848
 
79629
79849
  This instance class is currently only available in US East (Ohio), US East (N. Virginia), US West (Oregon), and Europe (Ireland).
79630
79850
  '''
79851
+ COMPUTE8_GRAVITON4_NVME_DRIVE = "COMPUTE8_GRAVITON4_NVME_DRIVE"
79852
+ '''Compute optimized instances for high performance computing, 8th generation with Graviton4 processors and local NVME drive.'''
79853
+ C8GD = "C8GD"
79854
+ '''Compute optimized instances for high performance computing, 8th generation with Graviton4 processors and local NVME drive.'''
79631
79855
  COMPUTE6_GRAVITON2_HIGH_NETWORK_BANDWIDTH = "COMPUTE6_GRAVITON2_HIGH_NETWORK_BANDWIDTH"
79632
79856
  '''Compute optimized instances for high performance computing, 6th generation with Graviton2 processors and high network bandwidth capabilities.'''
79633
79857
  C6GN = "C6GN"
@@ -79910,6 +80134,10 @@ class InstanceClass(enum.Enum):
79910
80134
 
79911
80135
  This instance class is currently only available in US East (Ohio), US East (N. Virginia), US West (Oregon), and Europe (Ireland).
79912
80136
  '''
80137
+ STANDARD8_GRAVITON4_NVME_DRIVE = "STANDARD8_GRAVITON4_NVME_DRIVE"
80138
+ '''Standard instances, 8th generation with Graviton4 processors and local NVME drive.'''
80139
+ M8GD = "M8GD"
80140
+ '''Standard instances, 8th generation with Graviton4 processors and local NVME drive.'''
79913
80141
  STANDARD7_INTEL = "STANDARD7_INTEL"
79914
80142
  '''Standard instances with high memory and compute capacity based on Intel Xeon Scalable (Sapphire Rapids) processors, 7th generation.'''
79915
80143
  M7I = "M7I"
@@ -83898,6 +84126,12 @@ class KeyPair(
83898
84126
  check_type(argname="argument key_pair_name", value=key_pair_name, expected_type=type_hints["key_pair_name"])
83899
84127
  return typing.cast(IKeyPair, jsii.sinvoke(cls, "fromKeyPairName", [scope, id, key_pair_name]))
83900
84128
 
84129
+ @jsii.python.classproperty
84130
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
84131
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
84132
+ '''Uniquely identifies this class.'''
84133
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
84134
+
83901
84135
  @builtins.property
83902
84136
  @jsii.member(jsii_name="format")
83903
84137
  def format(self) -> "KeyPairFormat":
@@ -84442,6 +84676,12 @@ class LaunchTemplate(
84442
84676
  check_type(argname="argument security_group", value=security_group, expected_type=type_hints["security_group"])
84443
84677
  return typing.cast(None, jsii.invoke(self, "addSecurityGroup", [security_group]))
84444
84678
 
84679
+ @jsii.python.classproperty
84680
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
84681
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
84682
+ '''Uniquely identifies this class.'''
84683
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
84684
+
84445
84685
  @builtins.property
84446
84686
  @jsii.member(jsii_name="connections")
84447
84687
  def connections(self) -> "Connections":
@@ -87719,6 +87959,12 @@ class NetworkAcl(
87719
87959
 
87720
87960
  return typing.cast(None, jsii.invoke(self, "associateWithSubnet", [id, selection]))
87721
87961
 
87962
+ @jsii.python.classproperty
87963
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
87964
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
87965
+ '''Uniquely identifies this class.'''
87966
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
87967
+
87722
87968
  @builtins.property
87723
87969
  @jsii.member(jsii_name="networkAclId")
87724
87970
  def network_acl_id(self) -> builtins.str:
@@ -87811,6 +88057,12 @@ class NetworkAclEntry(
87811
88057
 
87812
88058
  jsii.create(self.__class__, self, [scope, id, props])
87813
88059
 
88060
+ @jsii.python.classproperty
88061
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
88062
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
88063
+ '''Uniquely identifies this class.'''
88064
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
88065
+
87814
88066
  @builtins.property
87815
88067
  @jsii.member(jsii_name="networkAcl")
87816
88068
  def network_acl(self) -> INetworkAcl:
@@ -88159,7 +88411,7 @@ class Peer(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_ec2.Peer"):
88159
88411
 
88160
88412
  cluster = msk.Cluster(self, "Cluster",
88161
88413
  cluster_name="myCluster",
88162
- kafka_version=msk.KafkaVersion.V3_8_X,
88414
+ kafka_version=msk.KafkaVersion.V3_9_X,
88163
88415
  vpc=vpc
88164
88416
  )
88165
88417
 
@@ -88323,6 +88575,12 @@ class PlacementGroup(
88323
88575
  check_type(argname="argument placement_group_name", value=placement_group_name, expected_type=type_hints["placement_group_name"])
88324
88576
  return typing.cast(IPlacementGroup, jsii.sinvoke(cls, "fromPlacementGroupName", [scope, id, placement_group_name]))
88325
88577
 
88578
+ @jsii.python.classproperty
88579
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
88580
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
88581
+ '''Uniquely identifies this class.'''
88582
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
88583
+
88326
88584
  @builtins.property
88327
88585
  @jsii.member(jsii_name="placementGroupName")
88328
88586
  def placement_group_name(self) -> builtins.str:
@@ -88559,7 +88817,7 @@ class Port(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.aws_ec2.Port"):
88559
88817
 
88560
88818
  cluster = msk.Cluster(self, "Cluster",
88561
88819
  cluster_name="myCluster",
88562
- kafka_version=msk.KafkaVersion.V3_8_X,
88820
+ kafka_version=msk.KafkaVersion.V3_9_X,
88563
88821
  vpc=vpc
88564
88822
  )
88565
88823
 
@@ -89043,6 +89301,12 @@ class PrefixList(
89043
89301
  check_type(argname="argument prefix_list_id", value=prefix_list_id, expected_type=type_hints["prefix_list_id"])
89044
89302
  return typing.cast(IPrefixList, jsii.sinvoke(cls, "fromPrefixListId", [scope, id, prefix_list_id]))
89045
89303
 
89304
+ @jsii.python.classproperty
89305
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
89306
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
89307
+ '''Uniquely identifies this class.'''
89308
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
89309
+
89046
89310
  @builtins.property
89047
89311
  @jsii.member(jsii_name="addressFamily")
89048
89312
  def address_family(self) -> builtins.str:
@@ -90288,6 +90552,12 @@ class SecurityGroup(
90288
90552
  '''Produce the ingress rule JSON for the given connection.'''
90289
90553
  return typing.cast(typing.Any, jsii.invoke(self, "toIngressRuleConfig", []))
90290
90554
 
90555
+ @jsii.python.classproperty
90556
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
90557
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
90558
+ '''Uniquely identifies this class.'''
90559
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
90560
+
90291
90561
  @builtins.property
90292
90562
  @jsii.member(jsii_name="allowAllIpv6Outbound")
90293
90563
  def allow_all_ipv6_outbound(self) -> builtins.bool:
@@ -91202,6 +91472,12 @@ class Subnet(
91202
91472
  check_type(argname="argument network_acl", value=network_acl, expected_type=type_hints["network_acl"])
91203
91473
  return typing.cast(None, jsii.invoke(self, "associateNetworkAcl", [id, network_acl]))
91204
91474
 
91475
+ @jsii.python.classproperty
91476
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
91477
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
91478
+ '''Uniquely identifies this class.'''
91479
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
91480
+
91205
91481
  @builtins.property
91206
91482
  @jsii.member(jsii_name="availabilityZone")
91207
91483
  def availability_zone(self) -> builtins.str:
@@ -91805,6 +92081,12 @@ class SubnetNetworkAclAssociation(
91805
92081
  check_type(argname="argument subnet_network_acl_association_association_id", value=subnet_network_acl_association_association_id, expected_type=type_hints["subnet_network_acl_association_association_id"])
91806
92082
  return typing.cast(ISubnetNetworkAclAssociation, jsii.sinvoke(cls, "fromSubnetNetworkAclAssociationAssociationId", [scope, id, subnet_network_acl_association_association_id]))
91807
92083
 
92084
+ @jsii.python.classproperty
92085
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
92086
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
92087
+ '''Uniquely identifies this class.'''
92088
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
92089
+
91808
92090
  @builtins.property
91809
92091
  @jsii.member(jsii_name="networkAcl")
91810
92092
  def network_acl(self) -> INetworkAcl:
@@ -93019,6 +93301,12 @@ class Volume(
93019
93301
 
93020
93302
  return typing.cast(None, jsii.invoke(self, "validateProps", [props]))
93021
93303
 
93304
+ @jsii.python.classproperty
93305
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
93306
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
93307
+ '''Uniquely identifies this class.'''
93308
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
93309
+
93022
93310
  @builtins.property
93023
93311
  @jsii.member(jsii_name="availabilityZone")
93024
93312
  def availability_zone(self) -> builtins.str:
@@ -94004,6 +94292,12 @@ class Vpc(
94004
94292
  '''
94005
94293
  return typing.cast(typing.List[SubnetConfiguration], jsii.sget(cls, "DEFAULT_SUBNETS_NO_NAT"))
94006
94294
 
94295
+ @jsii.python.classproperty
94296
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
94297
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
94298
+ '''Uniquely identifies this class.'''
94299
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
94300
+
94007
94301
  @builtins.property
94008
94302
  @jsii.member(jsii_name="availabilityZones")
94009
94303
  def availability_zones(self) -> typing.List[builtins.str]:
@@ -94707,6 +95001,12 @@ class VpcEndpointService(
94707
95001
  '''The default value for a VPC Endpoint Service name prefix, useful if you do not have a synthesize-time region literal available (all you have is ``{ "Ref": "AWS::Region" }``).'''
94708
95002
  return typing.cast(builtins.str, jsii.sget(cls, "DEFAULT_PREFIX"))
94709
95003
 
95004
+ @jsii.python.classproperty
95005
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
95006
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
95007
+ '''Uniquely identifies this class.'''
95008
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
95009
+
94710
95010
  @builtins.property
94711
95011
  @jsii.member(jsii_name="acceptanceRequired")
94712
95012
  def acceptance_required(self) -> builtins.bool:
@@ -96396,6 +96696,12 @@ class VpnGateway(
96396
96696
 
96397
96697
  jsii.create(self.__class__, self, [scope, id, props])
96398
96698
 
96699
+ @jsii.python.classproperty
96700
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
96701
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
96702
+ '''Uniquely identifies this class.'''
96703
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
96704
+
96399
96705
  @builtins.property
96400
96706
  @jsii.member(jsii_name="gatewayId")
96401
96707
  def gateway_id(self) -> builtins.str:
@@ -97727,6 +98033,12 @@ class BastionHostLinux(
97727
98033
  check_type(argname="argument peer", value=peer, expected_type=typing.Tuple[type_hints["peer"], ...]) # pyright: ignore [reportGeneralTypeIssues]
97728
98034
  return typing.cast(None, jsii.invoke(self, "allowSshAccessFrom", [*peer]))
97729
98035
 
98036
+ @jsii.python.classproperty
98037
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
98038
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
98039
+ '''Uniquely identifies this class.'''
98040
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
98041
+
97730
98042
  @builtins.property
97731
98043
  @jsii.member(jsii_name="connections")
97732
98044
  def connections(self) -> "Connections":
@@ -98712,6 +99024,12 @@ class FlowLog(
98712
99024
  check_type(argname="argument flow_log_id", value=flow_log_id, expected_type=type_hints["flow_log_id"])
98713
99025
  return typing.cast(IFlowLog, jsii.sinvoke(cls, "fromFlowLogId", [scope, id, flow_log_id]))
98714
99026
 
99027
+ @jsii.python.classproperty
99028
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
99029
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
99030
+ '''Uniquely identifies this class.'''
99031
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
99032
+
98715
99033
  @builtins.property
98716
99034
  @jsii.member(jsii_name="flowLogId")
98717
99035
  def flow_log_id(self) -> builtins.str:
@@ -100029,6 +100347,12 @@ class InterfaceVpcEndpoint(
100029
100347
 
100030
100348
  return typing.cast(IInterfaceVpcEndpoint, jsii.sinvoke(cls, "fromInterfaceVpcEndpointAttributes", [scope, id, attrs]))
100031
100349
 
100350
+ @jsii.python.classproperty
100351
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
100352
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
100353
+ '''Uniquely identifies this class.'''
100354
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
100355
+
100032
100356
  @builtins.property
100033
100357
  @jsii.member(jsii_name="connections")
100034
100358
  def connections(self) -> Connections:
@@ -100695,6 +101019,12 @@ class PrivateSubnet(
100695
101019
 
100696
101020
  return typing.cast(IPrivateSubnet, jsii.sinvoke(cls, "fromPrivateSubnetAttributes", [scope, id, attrs]))
100697
101021
 
101022
+ @jsii.python.classproperty
101023
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
101024
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
101025
+ '''Uniquely identifies this class.'''
101026
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
101027
+
100698
101028
 
100699
101029
  @jsii.data_type(
100700
101030
  jsii_type="aws-cdk-lib.aws_ec2.PrivateSubnetAttributes",
@@ -101050,6 +101380,12 @@ class PublicSubnet(
101050
101380
  check_type(argname="argument eip_allocation_id", value=eip_allocation_id, expected_type=type_hints["eip_allocation_id"])
101051
101381
  return typing.cast(CfnNatGateway, jsii.invoke(self, "addNatGateway", [eip_allocation_id]))
101052
101382
 
101383
+ @jsii.python.classproperty
101384
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
101385
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
101386
+ '''Uniquely identifies this class.'''
101387
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
101388
+
101053
101389
 
101054
101390
  @jsii.data_type(
101055
101391
  jsii_type="aws-cdk-lib.aws_ec2.PublicSubnetAttributes",
@@ -101566,6 +101902,12 @@ class VpnConnection(
101566
101902
 
101567
101903
  return typing.cast(_Metric_e396a4dc, jsii.sinvoke(cls, "metricAllTunnelState", [props]))
101568
101904
 
101905
+ @jsii.python.classproperty
101906
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
101907
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
101908
+ '''Uniquely identifies this class.'''
101909
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
101910
+
101569
101911
  @builtins.property
101570
101912
  @jsii.member(jsii_name="customerGatewayAsn")
101571
101913
  def customer_gateway_asn(self) -> jsii.Number:
@@ -102250,6 +102592,12 @@ class ClientVpnEndpoint(
102250
102592
 
102251
102593
  return typing.cast(ClientVpnRoute, jsii.invoke(self, "addRoute", [id, props]))
102252
102594
 
102595
+ @jsii.python.classproperty
102596
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
102597
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
102598
+ '''Uniquely identifies this class.'''
102599
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
102600
+
102253
102601
  @builtins.property
102254
102602
  @jsii.member(jsii_name="connections")
102255
102603
  def connections(self) -> Connections:
@@ -102353,6 +102701,12 @@ class GatewayVpcEndpoint(
102353
102701
  check_type(argname="argument gateway_vpc_endpoint_id", value=gateway_vpc_endpoint_id, expected_type=type_hints["gateway_vpc_endpoint_id"])
102354
102702
  return typing.cast(IGatewayVpcEndpoint, jsii.sinvoke(cls, "fromGatewayVpcEndpointId", [scope, id, gateway_vpc_endpoint_id]))
102355
102703
 
102704
+ @jsii.python.classproperty
102705
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
102706
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
102707
+ '''Uniquely identifies this class.'''
102708
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
102709
+
102356
102710
  @builtins.property
102357
102711
  @jsii.member(jsii_name="vpcEndpointCreationTimestamp")
102358
102712
  def vpc_endpoint_creation_timestamp(self) -> builtins.str:
@@ -103550,6 +103904,7 @@ def _typecheckingstub__1880bffa9253aaedfa6af6175da6262a96ea34dadf82dc678a1eef91c
103550
103904
  server_certificate_arn: builtins.str,
103551
103905
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
103552
103906
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
103907
+ client_route_enforcement_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
103553
103908
  description: typing.Optional[builtins.str] = None,
103554
103909
  disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
103555
103910
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -103613,6 +103968,12 @@ def _typecheckingstub__497c1bea9e9caa987aeafc2d4334f07cd2d9664a3f3cd38bebd561170
103613
103968
  """Type checking stubs"""
103614
103969
  pass
103615
103970
 
103971
+ def _typecheckingstub__b7449176e28b63826ef826a7cc608350858f54ad63967741bedbe6e29e4548e0(
103972
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty]],
103973
+ ) -> None:
103974
+ """Type checking stubs"""
103975
+ pass
103976
+
103616
103977
  def _typecheckingstub__bb1d5fb0102c1b6de24ad13acfc13837ec5422291e23048395fe03350aea2188(
103617
103978
  value: typing.Optional[builtins.str],
103618
103979
  ) -> None:
@@ -103712,6 +104073,13 @@ def _typecheckingstub__907ff3a3bd097ac37a720bbc18cf4e29748beb226ddf13641e4835016
103712
104073
  """Type checking stubs"""
103713
104074
  pass
103714
104075
 
104076
+ def _typecheckingstub__b6a34038d1c5e331979b92a9cd810c8c4993fdf3bdc4b6a567ffbfa48ba19f4e(
104077
+ *,
104078
+ enforced: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
104079
+ ) -> None:
104080
+ """Type checking stubs"""
104081
+ pass
104082
+
103715
104083
  def _typecheckingstub__2c142e5322bb8bda4ace9616736c0e12d7c7b9b219932b4168a975e68d0d9395(
103716
104084
  *,
103717
104085
  enabled: typing.Union[builtins.bool, _IResolvable_da3f097b],
@@ -103752,6 +104120,7 @@ def _typecheckingstub__05994467e800c33b4a01e884b4b20bef2569d710f5dc323617cd814e5
103752
104120
  server_certificate_arn: builtins.str,
103753
104121
  client_connect_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientConnectOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
103754
104122
  client_login_banner_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientLoginBannerOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
104123
+ client_route_enforcement_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnClientVpnEndpoint.ClientRouteEnforcementOptionsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
103755
104124
  description: typing.Optional[builtins.str] = None,
103756
104125
  disconnect_on_session_timeout: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
103757
104126
  dns_servers: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -107215,6 +107584,7 @@ def _typecheckingstub__678aad296e8f8e492a0d5ebb106e185ee0e54a22ad01e148f0ae03d00
107215
107584
  network_insights_path_id: builtins.str,
107216
107585
  additional_accounts: typing.Optional[typing.Sequence[builtins.str]] = None,
107217
107586
  filter_in_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
107587
+ filter_out_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
107218
107588
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
107219
107589
  ) -> None:
107220
107590
  """Type checking stubs"""
@@ -107250,6 +107620,12 @@ def _typecheckingstub__5fc330fa3d4b736d5224dcb5d8f30fe938109a4316d70b31bac388cd1
107250
107620
  """Type checking stubs"""
107251
107621
  pass
107252
107622
 
107623
+ def _typecheckingstub__a3e2782a8511eec581f257080a1a098ac8d87ebc507433291c01b4f61ad401ff(
107624
+ value: typing.Optional[typing.List[builtins.str]],
107625
+ ) -> None:
107626
+ """Type checking stubs"""
107627
+ pass
107628
+
107253
107629
  def _typecheckingstub__9412010e2d8bad87553154226eb22ca797b6afeb1de0474359133f2783db6f65(
107254
107630
  value: typing.Optional[typing.List[_CfnTag_f6864754]],
107255
107631
  ) -> None:
@@ -107458,6 +107834,7 @@ def _typecheckingstub__a33d492e092024ce4f03ae533f82763ceee950f76808ddc3b6329ed54
107458
107834
  network_insights_path_id: builtins.str,
107459
107835
  additional_accounts: typing.Optional[typing.Sequence[builtins.str]] = None,
107460
107836
  filter_in_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
107837
+ filter_out_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
107461
107838
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
107462
107839
  ) -> None:
107463
107840
  """Type checking stubs"""
@@ -112544,6 +112921,7 @@ def _typecheckingstub__915a70f35b9237e059cd8fc78c5da31e1d4f2476ed4857c7ac173e559
112544
112921
  snapshot_id: typing.Optional[builtins.str] = None,
112545
112922
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
112546
112923
  throughput: typing.Optional[jsii.Number] = None,
112924
+ volume_initialization_rate: typing.Optional[jsii.Number] = None,
112547
112925
  volume_type: typing.Optional[builtins.str] = None,
112548
112926
  ) -> None:
112549
112927
  """Type checking stubs"""
@@ -112627,6 +113005,12 @@ def _typecheckingstub__52b794f14acdf16af1459720ad364d41f271215d47cf0e4717dd83ce0
112627
113005
  """Type checking stubs"""
112628
113006
  pass
112629
113007
 
113008
+ def _typecheckingstub__0d794c400059825fc6340b04289a28489cba2b85515b159862a7fc5730b4181b(
113009
+ value: typing.Optional[jsii.Number],
113010
+ ) -> None:
113011
+ """Type checking stubs"""
113012
+ pass
113013
+
112630
113014
  def _typecheckingstub__45764f3b57b9177d923e13cf91fbc29ed9c80eeebc001d4bd7c1600d28437ee6(
112631
113015
  value: typing.Optional[builtins.str],
112632
113016
  ) -> None:
@@ -112696,6 +113080,7 @@ def _typecheckingstub__df1f84bfc2d41a9f2d283d6a706150686c01c8f45a742c92af54cbee7
112696
113080
  snapshot_id: typing.Optional[builtins.str] = None,
112697
113081
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
112698
113082
  throughput: typing.Optional[jsii.Number] = None,
113083
+ volume_initialization_rate: typing.Optional[jsii.Number] = None,
112699
113084
  volume_type: typing.Optional[builtins.str] = None,
112700
113085
  ) -> None:
112701
113086
  """Type checking stubs"""