aws-cdk-lib 2.187.0__py3-none-any.whl → 2.188.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 (53) hide show
  1. aws_cdk/__init__.py +22 -3
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.187.0.jsii.tgz → aws-cdk-lib@2.188.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amplify/__init__.py +21 -9
  5. aws_cdk/aws_apigateway/__init__.py +25 -19
  6. aws_cdk/aws_apigatewayv2/__init__.py +88 -0
  7. aws_cdk/aws_appconfig/__init__.py +30 -14
  8. aws_cdk/aws_arczonalshift/__init__.py +4 -4
  9. aws_cdk/aws_bedrock/__init__.py +605 -10
  10. aws_cdk/aws_budgets/__init__.py +8 -8
  11. aws_cdk/aws_cassandra/__init__.py +3 -1
  12. aws_cdk/aws_ce/__init__.py +2 -2
  13. aws_cdk/aws_cloudformation/__init__.py +3 -3
  14. aws_cdk/aws_codebuild/__init__.py +23 -1
  15. aws_cdk/aws_codepipeline/__init__.py +47 -32
  16. aws_cdk/aws_codepipeline_actions/__init__.py +2786 -1042
  17. aws_cdk/aws_codestarnotifications/__init__.py +16 -16
  18. aws_cdk/aws_cognito/__init__.py +8 -2
  19. aws_cdk/aws_ec2/__init__.py +2091 -227
  20. aws_cdk/aws_eks/__init__.py +112 -10
  21. aws_cdk/aws_events_targets/__init__.py +136 -0
  22. aws_cdk/aws_gamelift/__init__.py +5 -5
  23. aws_cdk/aws_iam/__init__.py +6 -4
  24. aws_cdk/aws_identitystore/__init__.py +15 -13
  25. aws_cdk/aws_kinesisfirehose/__init__.py +38 -0
  26. aws_cdk/aws_lambda_event_sources/__init__.py +22 -22
  27. aws_cdk/aws_lex/__init__.py +21 -17
  28. aws_cdk/aws_logs/__init__.py +18 -0
  29. aws_cdk/aws_logs_destinations/__init__.py +146 -0
  30. aws_cdk/aws_notifications/__init__.py +4 -4
  31. aws_cdk/aws_omics/__init__.py +9 -1
  32. aws_cdk/aws_opensearchserverless/__init__.py +31 -23
  33. aws_cdk/aws_organizations/__init__.py +1 -1
  34. aws_cdk/aws_pcaconnectorad/__init__.py +3 -2
  35. aws_cdk/aws_quicksight/__init__.py +35 -22
  36. aws_cdk/aws_rds/__init__.py +84 -0
  37. aws_cdk/aws_route53/__init__.py +3 -3
  38. aws_cdk/aws_route53recoverycontrol/__init__.py +4 -6
  39. aws_cdk/aws_rum/__init__.py +13 -10
  40. aws_cdk/aws_s3/__init__.py +3 -6
  41. aws_cdk/aws_sagemaker/__init__.py +41 -0
  42. aws_cdk/aws_ssmincidents/__init__.py +10 -10
  43. aws_cdk/aws_systemsmanagersap/__init__.py +17 -7
  44. aws_cdk/aws_transfer/__init__.py +19 -10
  45. aws_cdk/aws_wafv2/__init__.py +80 -35
  46. aws_cdk/cx_api/__init__.py +23 -2
  47. aws_cdk/pipelines/__init__.py +32 -0
  48. {aws_cdk_lib-2.187.0.dist-info → aws_cdk_lib-2.188.0.dist-info}/METADATA +1 -1
  49. {aws_cdk_lib-2.187.0.dist-info → aws_cdk_lib-2.188.0.dist-info}/RECORD +53 -53
  50. {aws_cdk_lib-2.187.0.dist-info → aws_cdk_lib-2.188.0.dist-info}/LICENSE +0 -0
  51. {aws_cdk_lib-2.187.0.dist-info → aws_cdk_lib-2.188.0.dist-info}/NOTICE +0 -0
  52. {aws_cdk_lib-2.187.0.dist-info → aws_cdk_lib-2.188.0.dist-info}/WHEEL +0 -0
  53. {aws_cdk_lib-2.187.0.dist-info → aws_cdk_lib-2.188.0.dist-info}/top_level.txt +0 -0
@@ -20455,6 +20455,12 @@ class CfnInstance(
20455
20455
  associate_public_ip_address=False,
20456
20456
  delete_on_termination=False,
20457
20457
  description="description",
20458
+ ena_srd_specification=ec2.CfnInstance.EnaSrdSpecificationProperty(
20459
+ ena_srd_enabled=False,
20460
+ ena_srd_udp_specification=ec2.CfnInstance.EnaSrdUdpSpecificationProperty(
20461
+ ena_srd_udp_enabled=False
20462
+ )
20463
+ ),
20458
20464
  group_set=["groupSet"],
20459
20465
  ipv6_address_count=123,
20460
20466
  ipv6_addresses=[ec2.CfnInstance.InstanceIpv6AddressProperty(
@@ -22120,6 +22126,150 @@ class CfnInstance(
22120
22126
  k + "=" + repr(v) for k, v in self._values.items()
22121
22127
  )
22122
22128
 
22129
+ @jsii.data_type(
22130
+ jsii_type="aws-cdk-lib.aws_ec2.CfnInstance.EnaSrdSpecificationProperty",
22131
+ jsii_struct_bases=[],
22132
+ name_mapping={
22133
+ "ena_srd_enabled": "enaSrdEnabled",
22134
+ "ena_srd_udp_specification": "enaSrdUdpSpecification",
22135
+ },
22136
+ )
22137
+ class EnaSrdSpecificationProperty:
22138
+ def __init__(
22139
+ self,
22140
+ *,
22141
+ ena_srd_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
22142
+ ena_srd_udp_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnInstance.EnaSrdUdpSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
22143
+ ) -> None:
22144
+ '''ENA Express uses AWS Scalable Reliable Datagram (SRD) technology to increase the maximum bandwidth used per stream and minimize tail latency of network traffic between EC2 instances.
22145
+
22146
+ With ENA Express, you can communicate between two EC2 instances in the same subnet within the same account, or in different accounts. Both sending and receiving instances must have ENA Express enabled.
22147
+
22148
+ To improve the reliability of network packet delivery, ENA Express reorders network packets on the receiving end by default. However, some UDP-based applications are designed to handle network packets that are out of order to reduce the overhead for packet delivery at the network layer. When ENA Express is enabled, you can specify whether UDP network traffic uses it.
22149
+
22150
+ :param ena_srd_enabled: Indicates whether ENA Express is enabled for the network interface.
22151
+ :param ena_srd_udp_specification: Configures ENA Express for UDP network traffic.
22152
+
22153
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-enasrdspecification.html
22154
+ :exampleMetadata: fixture=_generated
22155
+
22156
+ Example::
22157
+
22158
+ # The code below shows an example of how to instantiate this type.
22159
+ # The values are placeholders you should change.
22160
+ from aws_cdk import aws_ec2 as ec2
22161
+
22162
+ ena_srd_specification_property = ec2.CfnInstance.EnaSrdSpecificationProperty(
22163
+ ena_srd_enabled=False,
22164
+ ena_srd_udp_specification=ec2.CfnInstance.EnaSrdUdpSpecificationProperty(
22165
+ ena_srd_udp_enabled=False
22166
+ )
22167
+ )
22168
+ '''
22169
+ if __debug__:
22170
+ type_hints = typing.get_type_hints(_typecheckingstub__cb5cfa1ad0a955752d0fe5cf1fa975e214907046a3adab82f42c2cb294897482)
22171
+ check_type(argname="argument ena_srd_enabled", value=ena_srd_enabled, expected_type=type_hints["ena_srd_enabled"])
22172
+ check_type(argname="argument ena_srd_udp_specification", value=ena_srd_udp_specification, expected_type=type_hints["ena_srd_udp_specification"])
22173
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
22174
+ if ena_srd_enabled is not None:
22175
+ self._values["ena_srd_enabled"] = ena_srd_enabled
22176
+ if ena_srd_udp_specification is not None:
22177
+ self._values["ena_srd_udp_specification"] = ena_srd_udp_specification
22178
+
22179
+ @builtins.property
22180
+ def ena_srd_enabled(
22181
+ self,
22182
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
22183
+ '''Indicates whether ENA Express is enabled for the network interface.
22184
+
22185
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-enasrdspecification.html#cfn-ec2-instance-enasrdspecification-enasrdenabled
22186
+ '''
22187
+ result = self._values.get("ena_srd_enabled")
22188
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
22189
+
22190
+ @builtins.property
22191
+ def ena_srd_udp_specification(
22192
+ self,
22193
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInstance.EnaSrdUdpSpecificationProperty"]]:
22194
+ '''Configures ENA Express for UDP network traffic.
22195
+
22196
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-enasrdspecification.html#cfn-ec2-instance-enasrdspecification-enasrdudpspecification
22197
+ '''
22198
+ result = self._values.get("ena_srd_udp_specification")
22199
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInstance.EnaSrdUdpSpecificationProperty"]], result)
22200
+
22201
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
22202
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
22203
+
22204
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
22205
+ return not (rhs == self)
22206
+
22207
+ def __repr__(self) -> str:
22208
+ return "EnaSrdSpecificationProperty(%s)" % ", ".join(
22209
+ k + "=" + repr(v) for k, v in self._values.items()
22210
+ )
22211
+
22212
+ @jsii.data_type(
22213
+ jsii_type="aws-cdk-lib.aws_ec2.CfnInstance.EnaSrdUdpSpecificationProperty",
22214
+ jsii_struct_bases=[],
22215
+ name_mapping={"ena_srd_udp_enabled": "enaSrdUdpEnabled"},
22216
+ )
22217
+ class EnaSrdUdpSpecificationProperty:
22218
+ def __init__(
22219
+ self,
22220
+ *,
22221
+ ena_srd_udp_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
22222
+ ) -> None:
22223
+ '''ENA Express is compatible with both TCP and UDP transport protocols.
22224
+
22225
+ When it's enabled, TCP traffic automatically uses it. However, some UDP-based applications are designed to handle network packets that are out of order, without a need for retransmission, such as live video broadcasting or other near-real-time applications. For UDP traffic, you can specify whether to use ENA Express, based on your application environment needs.
22226
+
22227
+ :param ena_srd_udp_enabled: Indicates whether UDP traffic to and from the instance uses ENA Express. To specify this setting, you must first enable ENA Express.
22228
+
22229
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-enasrdudpspecification.html
22230
+ :exampleMetadata: fixture=_generated
22231
+
22232
+ Example::
22233
+
22234
+ # The code below shows an example of how to instantiate this type.
22235
+ # The values are placeholders you should change.
22236
+ from aws_cdk import aws_ec2 as ec2
22237
+
22238
+ ena_srd_udp_specification_property = ec2.CfnInstance.EnaSrdUdpSpecificationProperty(
22239
+ ena_srd_udp_enabled=False
22240
+ )
22241
+ '''
22242
+ if __debug__:
22243
+ type_hints = typing.get_type_hints(_typecheckingstub__2ca233cf2c335cfa3da294e921b5541acd4aaf5e78b3618e6108270995e3e826)
22244
+ check_type(argname="argument ena_srd_udp_enabled", value=ena_srd_udp_enabled, expected_type=type_hints["ena_srd_udp_enabled"])
22245
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
22246
+ if ena_srd_udp_enabled is not None:
22247
+ self._values["ena_srd_udp_enabled"] = ena_srd_udp_enabled
22248
+
22249
+ @builtins.property
22250
+ def ena_srd_udp_enabled(
22251
+ self,
22252
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
22253
+ '''Indicates whether UDP traffic to and from the instance uses ENA Express.
22254
+
22255
+ To specify this setting, you must first enable ENA Express.
22256
+
22257
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-enasrdudpspecification.html#cfn-ec2-instance-enasrdudpspecification-enasrdudpenabled
22258
+ '''
22259
+ result = self._values.get("ena_srd_udp_enabled")
22260
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
22261
+
22262
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
22263
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
22264
+
22265
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
22266
+ return not (rhs == self)
22267
+
22268
+ def __repr__(self) -> str:
22269
+ return "EnaSrdUdpSpecificationProperty(%s)" % ", ".join(
22270
+ k + "=" + repr(v) for k, v in self._values.items()
22271
+ )
22272
+
22123
22273
  @jsii.data_type(
22124
22274
  jsii_type="aws-cdk-lib.aws_ec2.CfnInstance.EnclaveOptionsProperty",
22125
22275
  jsii_struct_bases=[],
@@ -22469,6 +22619,7 @@ class CfnInstance(
22469
22619
  "associate_public_ip_address": "associatePublicIpAddress",
22470
22620
  "delete_on_termination": "deleteOnTermination",
22471
22621
  "description": "description",
22622
+ "ena_srd_specification": "enaSrdSpecification",
22472
22623
  "group_set": "groupSet",
22473
22624
  "ipv6_address_count": "ipv6AddressCount",
22474
22625
  "ipv6_addresses": "ipv6Addresses",
@@ -22488,6 +22639,7 @@ class CfnInstance(
22488
22639
  associate_public_ip_address: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
22489
22640
  delete_on_termination: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
22490
22641
  description: typing.Optional[builtins.str] = None,
22642
+ ena_srd_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnInstance.EnaSrdSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
22491
22643
  group_set: typing.Optional[typing.Sequence[builtins.str]] = None,
22492
22644
  ipv6_address_count: typing.Optional[jsii.Number] = None,
22493
22645
  ipv6_addresses: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnInstance.InstanceIpv6AddressProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -22508,6 +22660,7 @@ class CfnInstance(
22508
22660
  :param associate_public_ip_address: Indicates whether to assign a public IPv4 address to an instance. Applies only if creating a network interface when launching an instance. The network interface must be the primary network interface. If launching into a default subnet, the default value is ``true`` . AWS charges for all public IPv4 addresses, including public IPv4 addresses associated with running instances and Elastic IP addresses. For more information, see the *Public IPv4 Address* tab on the `VPC pricing page <https://docs.aws.amazon.com/vpc/pricing/>`_ .
22509
22661
  :param delete_on_termination: Indicates whether the network interface is deleted when the instance is terminated. Applies only if creating a network interface when launching an instance.
22510
22662
  :param description: The description of the network interface. Applies only if creating a network interface when launching an instance.
22663
+ :param ena_srd_specification: Specifies the ENA Express settings for the network interface that's attached to the instance.
22511
22664
  :param group_set: The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
22512
22665
  :param ipv6_address_count: A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.
22513
22666
  :param ipv6_addresses: The IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.
@@ -22534,6 +22687,12 @@ class CfnInstance(
22534
22687
  associate_public_ip_address=False,
22535
22688
  delete_on_termination=False,
22536
22689
  description="description",
22690
+ ena_srd_specification=ec2.CfnInstance.EnaSrdSpecificationProperty(
22691
+ ena_srd_enabled=False,
22692
+ ena_srd_udp_specification=ec2.CfnInstance.EnaSrdUdpSpecificationProperty(
22693
+ ena_srd_udp_enabled=False
22694
+ )
22695
+ ),
22537
22696
  group_set=["groupSet"],
22538
22697
  ipv6_address_count=123,
22539
22698
  ipv6_addresses=[ec2.CfnInstance.InstanceIpv6AddressProperty(
@@ -22556,6 +22715,7 @@ class CfnInstance(
22556
22715
  check_type(argname="argument associate_public_ip_address", value=associate_public_ip_address, expected_type=type_hints["associate_public_ip_address"])
22557
22716
  check_type(argname="argument delete_on_termination", value=delete_on_termination, expected_type=type_hints["delete_on_termination"])
22558
22717
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
22718
+ check_type(argname="argument ena_srd_specification", value=ena_srd_specification, expected_type=type_hints["ena_srd_specification"])
22559
22719
  check_type(argname="argument group_set", value=group_set, expected_type=type_hints["group_set"])
22560
22720
  check_type(argname="argument ipv6_address_count", value=ipv6_address_count, expected_type=type_hints["ipv6_address_count"])
22561
22721
  check_type(argname="argument ipv6_addresses", value=ipv6_addresses, expected_type=type_hints["ipv6_addresses"])
@@ -22575,6 +22735,8 @@ class CfnInstance(
22575
22735
  self._values["delete_on_termination"] = delete_on_termination
22576
22736
  if description is not None:
22577
22737
  self._values["description"] = description
22738
+ if ena_srd_specification is not None:
22739
+ self._values["ena_srd_specification"] = ena_srd_specification
22578
22740
  if group_set is not None:
22579
22741
  self._values["group_set"] = group_set
22580
22742
  if ipv6_address_count is not None:
@@ -22658,6 +22820,17 @@ class CfnInstance(
22658
22820
  result = self._values.get("description")
22659
22821
  return typing.cast(typing.Optional[builtins.str], result)
22660
22822
 
22823
+ @builtins.property
22824
+ def ena_srd_specification(
22825
+ self,
22826
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInstance.EnaSrdSpecificationProperty"]]:
22827
+ '''Specifies the ENA Express settings for the network interface that's attached to the instance.
22828
+
22829
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-instance-networkinterface.html#cfn-ec2-instance-networkinterface-enasrdspecification
22830
+ '''
22831
+ result = self._values.get("ena_srd_specification")
22832
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnInstance.EnaSrdSpecificationProperty"]], result)
22833
+
22661
22834
  @builtins.property
22662
22835
  def group_set(self) -> typing.Optional[typing.List[builtins.str]]:
22663
22836
  '''The IDs of the security groups for the network interface.
@@ -23754,6 +23927,12 @@ class CfnInstanceProps:
23754
23927
  associate_public_ip_address=False,
23755
23928
  delete_on_termination=False,
23756
23929
  description="description",
23930
+ ena_srd_specification=ec2.CfnInstance.EnaSrdSpecificationProperty(
23931
+ ena_srd_enabled=False,
23932
+ ena_srd_udp_specification=ec2.CfnInstance.EnaSrdUdpSpecificationProperty(
23933
+ ena_srd_udp_enabled=False
23934
+ )
23935
+ ),
23757
23936
  group_set=["groupSet"],
23758
23937
  ipv6_address_count=123,
23759
23938
  ipv6_addresses=[ec2.CfnInstance.InstanceIpv6AddressProperty(
@@ -41663,87 +41842,1521 @@ class CfnRoute(
41663
41842
  '''The ID of a VPC endpoint.'''
41664
41843
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "vpcEndpointId"))
41665
41844
 
41666
- @vpc_endpoint_id.setter
41667
- def vpc_endpoint_id(self, value: typing.Optional[builtins.str]) -> None:
41845
+ @vpc_endpoint_id.setter
41846
+ def vpc_endpoint_id(self, value: typing.Optional[builtins.str]) -> None:
41847
+ if __debug__:
41848
+ type_hints = typing.get_type_hints(_typecheckingstub__9b3588c8e5a495d9ab8a2699ed72f7253e15605bba594e43b65e5892bcbf1ca0)
41849
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
41850
+ jsii.set(self, "vpcEndpointId", value) # pyright: ignore[reportArgumentType]
41851
+
41852
+ @builtins.property
41853
+ @jsii.member(jsii_name="vpcPeeringConnectionId")
41854
+ def vpc_peering_connection_id(self) -> typing.Optional[builtins.str]:
41855
+ '''The ID of a VPC peering connection.'''
41856
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "vpcPeeringConnectionId"))
41857
+
41858
+ @vpc_peering_connection_id.setter
41859
+ def vpc_peering_connection_id(self, value: typing.Optional[builtins.str]) -> None:
41860
+ if __debug__:
41861
+ type_hints = typing.get_type_hints(_typecheckingstub__46892d5dd1581aee0dcf6410687f88cfaffdfdd18c726880534edc8f86e9919a)
41862
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
41863
+ jsii.set(self, "vpcPeeringConnectionId", value) # pyright: ignore[reportArgumentType]
41864
+
41865
+
41866
+ @jsii.data_type(
41867
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteProps",
41868
+ jsii_struct_bases=[],
41869
+ name_mapping={
41870
+ "route_table_id": "routeTableId",
41871
+ "carrier_gateway_id": "carrierGatewayId",
41872
+ "core_network_arn": "coreNetworkArn",
41873
+ "destination_cidr_block": "destinationCidrBlock",
41874
+ "destination_ipv6_cidr_block": "destinationIpv6CidrBlock",
41875
+ "destination_prefix_list_id": "destinationPrefixListId",
41876
+ "egress_only_internet_gateway_id": "egressOnlyInternetGatewayId",
41877
+ "gateway_id": "gatewayId",
41878
+ "instance_id": "instanceId",
41879
+ "local_gateway_id": "localGatewayId",
41880
+ "nat_gateway_id": "natGatewayId",
41881
+ "network_interface_id": "networkInterfaceId",
41882
+ "transit_gateway_id": "transitGatewayId",
41883
+ "vpc_endpoint_id": "vpcEndpointId",
41884
+ "vpc_peering_connection_id": "vpcPeeringConnectionId",
41885
+ },
41886
+ )
41887
+ class CfnRouteProps:
41888
+ def __init__(
41889
+ self,
41890
+ *,
41891
+ route_table_id: builtins.str,
41892
+ carrier_gateway_id: typing.Optional[builtins.str] = None,
41893
+ core_network_arn: typing.Optional[builtins.str] = None,
41894
+ destination_cidr_block: typing.Optional[builtins.str] = None,
41895
+ destination_ipv6_cidr_block: typing.Optional[builtins.str] = None,
41896
+ destination_prefix_list_id: typing.Optional[builtins.str] = None,
41897
+ egress_only_internet_gateway_id: typing.Optional[builtins.str] = None,
41898
+ gateway_id: typing.Optional[builtins.str] = None,
41899
+ instance_id: typing.Optional[builtins.str] = None,
41900
+ local_gateway_id: typing.Optional[builtins.str] = None,
41901
+ nat_gateway_id: typing.Optional[builtins.str] = None,
41902
+ network_interface_id: typing.Optional[builtins.str] = None,
41903
+ transit_gateway_id: typing.Optional[builtins.str] = None,
41904
+ vpc_endpoint_id: typing.Optional[builtins.str] = None,
41905
+ vpc_peering_connection_id: typing.Optional[builtins.str] = None,
41906
+ ) -> None:
41907
+ '''Properties for defining a ``CfnRoute``.
41908
+
41909
+ :param route_table_id: The ID of the route table for the route.
41910
+ :param carrier_gateway_id: The ID of the carrier gateway. You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.
41911
+ :param core_network_arn: The Amazon Resource Name (ARN) of the core network.
41912
+ :param destination_cidr_block: The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify ``100.68.0.18/18`` , we modify it to ``100.68.0.0/18`` .
41913
+ :param destination_ipv6_cidr_block: The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
41914
+ :param destination_prefix_list_id: The ID of a prefix list used for the destination match.
41915
+ :param egress_only_internet_gateway_id: [IPv6 traffic only] The ID of an egress-only internet gateway.
41916
+ :param gateway_id: The ID of an internet gateway or virtual private gateway attached to your VPC.
41917
+ :param instance_id: The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.
41918
+ :param local_gateway_id: The ID of the local gateway.
41919
+ :param nat_gateway_id: [IPv4 traffic only] The ID of a NAT gateway.
41920
+ :param network_interface_id: The ID of a network interface.
41921
+ :param transit_gateway_id: The ID of a transit gateway.
41922
+ :param vpc_endpoint_id: The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.
41923
+ :param vpc_peering_connection_id: The ID of a VPC peering connection.
41924
+
41925
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html
41926
+ :exampleMetadata: fixture=_generated
41927
+
41928
+ Example::
41929
+
41930
+ # The code below shows an example of how to instantiate this type.
41931
+ # The values are placeholders you should change.
41932
+ from aws_cdk import aws_ec2 as ec2
41933
+
41934
+ cfn_route_props = ec2.CfnRouteProps(
41935
+ route_table_id="routeTableId",
41936
+
41937
+ # the properties below are optional
41938
+ carrier_gateway_id="carrierGatewayId",
41939
+ core_network_arn="coreNetworkArn",
41940
+ destination_cidr_block="destinationCidrBlock",
41941
+ destination_ipv6_cidr_block="destinationIpv6CidrBlock",
41942
+ destination_prefix_list_id="destinationPrefixListId",
41943
+ egress_only_internet_gateway_id="egressOnlyInternetGatewayId",
41944
+ gateway_id="gatewayId",
41945
+ instance_id="instanceId",
41946
+ local_gateway_id="localGatewayId",
41947
+ nat_gateway_id="natGatewayId",
41948
+ network_interface_id="networkInterfaceId",
41949
+ transit_gateway_id="transitGatewayId",
41950
+ vpc_endpoint_id="vpcEndpointId",
41951
+ vpc_peering_connection_id="vpcPeeringConnectionId"
41952
+ )
41953
+ '''
41954
+ if __debug__:
41955
+ type_hints = typing.get_type_hints(_typecheckingstub__f90e7814d59b7c562ab4b24d54461eba6a4c88fbd5451ba2b2b0adf8441a452e)
41956
+ check_type(argname="argument route_table_id", value=route_table_id, expected_type=type_hints["route_table_id"])
41957
+ check_type(argname="argument carrier_gateway_id", value=carrier_gateway_id, expected_type=type_hints["carrier_gateway_id"])
41958
+ check_type(argname="argument core_network_arn", value=core_network_arn, expected_type=type_hints["core_network_arn"])
41959
+ check_type(argname="argument destination_cidr_block", value=destination_cidr_block, expected_type=type_hints["destination_cidr_block"])
41960
+ check_type(argname="argument destination_ipv6_cidr_block", value=destination_ipv6_cidr_block, expected_type=type_hints["destination_ipv6_cidr_block"])
41961
+ check_type(argname="argument destination_prefix_list_id", value=destination_prefix_list_id, expected_type=type_hints["destination_prefix_list_id"])
41962
+ check_type(argname="argument egress_only_internet_gateway_id", value=egress_only_internet_gateway_id, expected_type=type_hints["egress_only_internet_gateway_id"])
41963
+ check_type(argname="argument gateway_id", value=gateway_id, expected_type=type_hints["gateway_id"])
41964
+ check_type(argname="argument instance_id", value=instance_id, expected_type=type_hints["instance_id"])
41965
+ check_type(argname="argument local_gateway_id", value=local_gateway_id, expected_type=type_hints["local_gateway_id"])
41966
+ check_type(argname="argument nat_gateway_id", value=nat_gateway_id, expected_type=type_hints["nat_gateway_id"])
41967
+ check_type(argname="argument network_interface_id", value=network_interface_id, expected_type=type_hints["network_interface_id"])
41968
+ check_type(argname="argument transit_gateway_id", value=transit_gateway_id, expected_type=type_hints["transit_gateway_id"])
41969
+ check_type(argname="argument vpc_endpoint_id", value=vpc_endpoint_id, expected_type=type_hints["vpc_endpoint_id"])
41970
+ check_type(argname="argument vpc_peering_connection_id", value=vpc_peering_connection_id, expected_type=type_hints["vpc_peering_connection_id"])
41971
+ self._values: typing.Dict[builtins.str, typing.Any] = {
41972
+ "route_table_id": route_table_id,
41973
+ }
41974
+ if carrier_gateway_id is not None:
41975
+ self._values["carrier_gateway_id"] = carrier_gateway_id
41976
+ if core_network_arn is not None:
41977
+ self._values["core_network_arn"] = core_network_arn
41978
+ if destination_cidr_block is not None:
41979
+ self._values["destination_cidr_block"] = destination_cidr_block
41980
+ if destination_ipv6_cidr_block is not None:
41981
+ self._values["destination_ipv6_cidr_block"] = destination_ipv6_cidr_block
41982
+ if destination_prefix_list_id is not None:
41983
+ self._values["destination_prefix_list_id"] = destination_prefix_list_id
41984
+ if egress_only_internet_gateway_id is not None:
41985
+ self._values["egress_only_internet_gateway_id"] = egress_only_internet_gateway_id
41986
+ if gateway_id is not None:
41987
+ self._values["gateway_id"] = gateway_id
41988
+ if instance_id is not None:
41989
+ self._values["instance_id"] = instance_id
41990
+ if local_gateway_id is not None:
41991
+ self._values["local_gateway_id"] = local_gateway_id
41992
+ if nat_gateway_id is not None:
41993
+ self._values["nat_gateway_id"] = nat_gateway_id
41994
+ if network_interface_id is not None:
41995
+ self._values["network_interface_id"] = network_interface_id
41996
+ if transit_gateway_id is not None:
41997
+ self._values["transit_gateway_id"] = transit_gateway_id
41998
+ if vpc_endpoint_id is not None:
41999
+ self._values["vpc_endpoint_id"] = vpc_endpoint_id
42000
+ if vpc_peering_connection_id is not None:
42001
+ self._values["vpc_peering_connection_id"] = vpc_peering_connection_id
42002
+
42003
+ @builtins.property
42004
+ def route_table_id(self) -> builtins.str:
42005
+ '''The ID of the route table for the route.
42006
+
42007
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-routetableid
42008
+ '''
42009
+ result = self._values.get("route_table_id")
42010
+ assert result is not None, "Required property 'route_table_id' is missing"
42011
+ return typing.cast(builtins.str, result)
42012
+
42013
+ @builtins.property
42014
+ def carrier_gateway_id(self) -> typing.Optional[builtins.str]:
42015
+ '''The ID of the carrier gateway.
42016
+
42017
+ You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.
42018
+
42019
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-carriergatewayid
42020
+ '''
42021
+ result = self._values.get("carrier_gateway_id")
42022
+ return typing.cast(typing.Optional[builtins.str], result)
42023
+
42024
+ @builtins.property
42025
+ def core_network_arn(self) -> typing.Optional[builtins.str]:
42026
+ '''The Amazon Resource Name (ARN) of the core network.
42027
+
42028
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-corenetworkarn
42029
+ '''
42030
+ result = self._values.get("core_network_arn")
42031
+ return typing.cast(typing.Optional[builtins.str], result)
42032
+
42033
+ @builtins.property
42034
+ def destination_cidr_block(self) -> typing.Optional[builtins.str]:
42035
+ '''The IPv4 CIDR address block used for the destination match.
42036
+
42037
+ Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify ``100.68.0.18/18`` , we modify it to ``100.68.0.0/18`` .
42038
+
42039
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationcidrblock
42040
+ '''
42041
+ result = self._values.get("destination_cidr_block")
42042
+ return typing.cast(typing.Optional[builtins.str], result)
42043
+
42044
+ @builtins.property
42045
+ def destination_ipv6_cidr_block(self) -> typing.Optional[builtins.str]:
42046
+ '''The IPv6 CIDR block used for the destination match.
42047
+
42048
+ Routing decisions are based on the most specific match.
42049
+
42050
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationipv6cidrblock
42051
+ '''
42052
+ result = self._values.get("destination_ipv6_cidr_block")
42053
+ return typing.cast(typing.Optional[builtins.str], result)
42054
+
42055
+ @builtins.property
42056
+ def destination_prefix_list_id(self) -> typing.Optional[builtins.str]:
42057
+ '''The ID of a prefix list used for the destination match.
42058
+
42059
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationprefixlistid
42060
+ '''
42061
+ result = self._values.get("destination_prefix_list_id")
42062
+ return typing.cast(typing.Optional[builtins.str], result)
42063
+
42064
+ @builtins.property
42065
+ def egress_only_internet_gateway_id(self) -> typing.Optional[builtins.str]:
42066
+ '''[IPv6 traffic only] The ID of an egress-only internet gateway.
42067
+
42068
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-egressonlyinternetgatewayid
42069
+ '''
42070
+ result = self._values.get("egress_only_internet_gateway_id")
42071
+ return typing.cast(typing.Optional[builtins.str], result)
42072
+
42073
+ @builtins.property
42074
+ def gateway_id(self) -> typing.Optional[builtins.str]:
42075
+ '''The ID of an internet gateway or virtual private gateway attached to your VPC.
42076
+
42077
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-gatewayid
42078
+ '''
42079
+ result = self._values.get("gateway_id")
42080
+ return typing.cast(typing.Optional[builtins.str], result)
42081
+
42082
+ @builtins.property
42083
+ def instance_id(self) -> typing.Optional[builtins.str]:
42084
+ '''The ID of a NAT instance in your VPC.
42085
+
42086
+ The operation fails if you specify an instance ID unless exactly one network interface is attached.
42087
+
42088
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-instanceid
42089
+ '''
42090
+ result = self._values.get("instance_id")
42091
+ return typing.cast(typing.Optional[builtins.str], result)
42092
+
42093
+ @builtins.property
42094
+ def local_gateway_id(self) -> typing.Optional[builtins.str]:
42095
+ '''The ID of the local gateway.
42096
+
42097
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-localgatewayid
42098
+ '''
42099
+ result = self._values.get("local_gateway_id")
42100
+ return typing.cast(typing.Optional[builtins.str], result)
42101
+
42102
+ @builtins.property
42103
+ def nat_gateway_id(self) -> typing.Optional[builtins.str]:
42104
+ '''[IPv4 traffic only] The ID of a NAT gateway.
42105
+
42106
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-natgatewayid
42107
+ '''
42108
+ result = self._values.get("nat_gateway_id")
42109
+ return typing.cast(typing.Optional[builtins.str], result)
42110
+
42111
+ @builtins.property
42112
+ def network_interface_id(self) -> typing.Optional[builtins.str]:
42113
+ '''The ID of a network interface.
42114
+
42115
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-networkinterfaceid
42116
+ '''
42117
+ result = self._values.get("network_interface_id")
42118
+ return typing.cast(typing.Optional[builtins.str], result)
42119
+
42120
+ @builtins.property
42121
+ def transit_gateway_id(self) -> typing.Optional[builtins.str]:
42122
+ '''The ID of a transit gateway.
42123
+
42124
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-transitgatewayid
42125
+ '''
42126
+ result = self._values.get("transit_gateway_id")
42127
+ return typing.cast(typing.Optional[builtins.str], result)
42128
+
42129
+ @builtins.property
42130
+ def vpc_endpoint_id(self) -> typing.Optional[builtins.str]:
42131
+ '''The ID of a VPC endpoint.
42132
+
42133
+ Supported for Gateway Load Balancer endpoints only.
42134
+
42135
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-vpcendpointid
42136
+ '''
42137
+ result = self._values.get("vpc_endpoint_id")
42138
+ return typing.cast(typing.Optional[builtins.str], result)
42139
+
42140
+ @builtins.property
42141
+ def vpc_peering_connection_id(self) -> typing.Optional[builtins.str]:
42142
+ '''The ID of a VPC peering connection.
42143
+
42144
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-vpcpeeringconnectionid
42145
+ '''
42146
+ result = self._values.get("vpc_peering_connection_id")
42147
+ return typing.cast(typing.Optional[builtins.str], result)
42148
+
42149
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
42150
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
42151
+
42152
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
42153
+ return not (rhs == self)
42154
+
42155
+ def __repr__(self) -> str:
42156
+ return "CfnRouteProps(%s)" % ", ".join(
42157
+ k + "=" + repr(v) for k, v in self._values.items()
42158
+ )
42159
+
42160
+
42161
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
42162
+ class CfnRouteServer(
42163
+ _CfnResource_9df397a6,
42164
+ metaclass=jsii.JSIIMeta,
42165
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServer",
42166
+ ):
42167
+ '''VPC Route Server.
42168
+
42169
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html
42170
+ :cloudformationResource: AWS::EC2::RouteServer
42171
+ :exampleMetadata: fixture=_generated
42172
+
42173
+ Example::
42174
+
42175
+ # The code below shows an example of how to instantiate this type.
42176
+ # The values are placeholders you should change.
42177
+ from aws_cdk import aws_ec2 as ec2
42178
+
42179
+ cfn_route_server = ec2.CfnRouteServer(self, "MyCfnRouteServer",
42180
+ amazon_side_asn=123,
42181
+
42182
+ # the properties below are optional
42183
+ persist_routes="persistRoutes",
42184
+ persist_routes_duration=123,
42185
+ sns_notifications_enabled=False,
42186
+ tags=[CfnTag(
42187
+ key="key",
42188
+ value="value"
42189
+ )]
42190
+ )
42191
+ '''
42192
+
42193
+ def __init__(
42194
+ self,
42195
+ scope: _constructs_77d1e7e8.Construct,
42196
+ id: builtins.str,
42197
+ *,
42198
+ amazon_side_asn: jsii.Number,
42199
+ persist_routes: typing.Optional[builtins.str] = None,
42200
+ persist_routes_duration: typing.Optional[jsii.Number] = None,
42201
+ sns_notifications_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
42202
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
42203
+ ) -> None:
42204
+ '''
42205
+ :param scope: Scope in which this resource is defined.
42206
+ :param id: Construct identifier for this resource (unique in its scope).
42207
+ :param amazon_side_asn: The Amazon-side ASN of the Route Server.
42208
+ :param persist_routes: Whether to enable persistent routes.
42209
+ :param persist_routes_duration: The duration of persistent routes in minutes.
42210
+ :param sns_notifications_enabled: Whether to enable SNS notifications.
42211
+ :param tags: An array of key-value pairs to apply to this resource.
42212
+ '''
42213
+ if __debug__:
42214
+ type_hints = typing.get_type_hints(_typecheckingstub__e744a2467360e6327da0cb79726e11e01d594dbeec11f2982a422bcb176447d5)
42215
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
42216
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
42217
+ props = CfnRouteServerProps(
42218
+ amazon_side_asn=amazon_side_asn,
42219
+ persist_routes=persist_routes,
42220
+ persist_routes_duration=persist_routes_duration,
42221
+ sns_notifications_enabled=sns_notifications_enabled,
42222
+ tags=tags,
42223
+ )
42224
+
42225
+ jsii.create(self.__class__, self, [scope, id, props])
42226
+
42227
+ @jsii.member(jsii_name="inspect")
42228
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
42229
+ '''Examines the CloudFormation resource and discloses attributes.
42230
+
42231
+ :param inspector: tree inspector to collect and process attributes.
42232
+ '''
42233
+ if __debug__:
42234
+ type_hints = typing.get_type_hints(_typecheckingstub__3d4e9ce25bdead6fc034e09d4bd133ca6d8a9bdb28edabd76818abeb5861c650)
42235
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
42236
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
42237
+
42238
+ @jsii.member(jsii_name="renderProperties")
42239
+ def _render_properties(
42240
+ self,
42241
+ props: typing.Mapping[builtins.str, typing.Any],
42242
+ ) -> typing.Mapping[builtins.str, typing.Any]:
42243
+ '''
42244
+ :param props: -
42245
+ '''
42246
+ if __debug__:
42247
+ type_hints = typing.get_type_hints(_typecheckingstub__e93eb022fd962b1a573488d55ae2a6f533460dcd1478ae568a1ca2cbaec1166c)
42248
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
42249
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
42250
+
42251
+ @jsii.python.classproperty
42252
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
42253
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
42254
+ '''The CloudFormation resource type name for this resource class.'''
42255
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
42256
+
42257
+ @builtins.property
42258
+ @jsii.member(jsii_name="attrArn")
42259
+ def attr_arn(self) -> builtins.str:
42260
+ '''The Amazon Resource Name (ARN) of the Route Server.
42261
+
42262
+ :cloudformationAttribute: Arn
42263
+ '''
42264
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
42265
+
42266
+ @builtins.property
42267
+ @jsii.member(jsii_name="attrId")
42268
+ def attr_id(self) -> builtins.str:
42269
+ '''The ID of the Route Server.
42270
+
42271
+ :cloudformationAttribute: Id
42272
+ '''
42273
+ return typing.cast(builtins.str, jsii.get(self, "attrId"))
42274
+
42275
+ @builtins.property
42276
+ @jsii.member(jsii_name="cdkTagManager")
42277
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
42278
+ '''Tag Manager which manages the tags for this resource.'''
42279
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
42280
+
42281
+ @builtins.property
42282
+ @jsii.member(jsii_name="cfnProperties")
42283
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
42284
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
42285
+
42286
+ @builtins.property
42287
+ @jsii.member(jsii_name="amazonSideAsn")
42288
+ def amazon_side_asn(self) -> jsii.Number:
42289
+ '''The Amazon-side ASN of the Route Server.'''
42290
+ return typing.cast(jsii.Number, jsii.get(self, "amazonSideAsn"))
42291
+
42292
+ @amazon_side_asn.setter
42293
+ def amazon_side_asn(self, value: jsii.Number) -> None:
42294
+ if __debug__:
42295
+ type_hints = typing.get_type_hints(_typecheckingstub__e13de778bf88a0d2426e3072806feaf234141e06da104df8828fa31858466ede)
42296
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42297
+ jsii.set(self, "amazonSideAsn", value) # pyright: ignore[reportArgumentType]
42298
+
42299
+ @builtins.property
42300
+ @jsii.member(jsii_name="persistRoutes")
42301
+ def persist_routes(self) -> typing.Optional[builtins.str]:
42302
+ '''Whether to enable persistent routes.'''
42303
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "persistRoutes"))
42304
+
42305
+ @persist_routes.setter
42306
+ def persist_routes(self, value: typing.Optional[builtins.str]) -> None:
42307
+ if __debug__:
42308
+ type_hints = typing.get_type_hints(_typecheckingstub__4a44997a1e32efb135940b74f2a929e8036d94d6404f4bf5512259c997ca5c9e)
42309
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42310
+ jsii.set(self, "persistRoutes", value) # pyright: ignore[reportArgumentType]
42311
+
42312
+ @builtins.property
42313
+ @jsii.member(jsii_name="persistRoutesDuration")
42314
+ def persist_routes_duration(self) -> typing.Optional[jsii.Number]:
42315
+ '''The duration of persistent routes in minutes.'''
42316
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "persistRoutesDuration"))
42317
+
42318
+ @persist_routes_duration.setter
42319
+ def persist_routes_duration(self, value: typing.Optional[jsii.Number]) -> None:
42320
+ if __debug__:
42321
+ type_hints = typing.get_type_hints(_typecheckingstub__b356730d4d3fb48506651734b873006a73e7e68636b664817f9430f6064743e2)
42322
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42323
+ jsii.set(self, "persistRoutesDuration", value) # pyright: ignore[reportArgumentType]
42324
+
42325
+ @builtins.property
42326
+ @jsii.member(jsii_name="snsNotificationsEnabled")
42327
+ def sns_notifications_enabled(
42328
+ self,
42329
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
42330
+ '''Whether to enable SNS notifications.'''
42331
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "snsNotificationsEnabled"))
42332
+
42333
+ @sns_notifications_enabled.setter
42334
+ def sns_notifications_enabled(
42335
+ self,
42336
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
42337
+ ) -> None:
42338
+ if __debug__:
42339
+ type_hints = typing.get_type_hints(_typecheckingstub__3fb35650e2c20c86ca3846527e1fbe136cb8034d9a94e7934e14e7c78eddeadb)
42340
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42341
+ jsii.set(self, "snsNotificationsEnabled", value) # pyright: ignore[reportArgumentType]
42342
+
42343
+ @builtins.property
42344
+ @jsii.member(jsii_name="tags")
42345
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
42346
+ '''An array of key-value pairs to apply to this resource.'''
42347
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
42348
+
42349
+ @tags.setter
42350
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
42351
+ if __debug__:
42352
+ type_hints = typing.get_type_hints(_typecheckingstub__2d586f2ad9d0305ceb1f3ece538490d14e9c96aeb12e951e59be8899a1412ea4)
42353
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42354
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
42355
+
42356
+
42357
+ @jsii.implements(_IInspectable_c2943556)
42358
+ class CfnRouteServerAssociation(
42359
+ _CfnResource_9df397a6,
42360
+ metaclass=jsii.JSIIMeta,
42361
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerAssociation",
42362
+ ):
42363
+ '''VPC Route Server Association.
42364
+
42365
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverassociation.html
42366
+ :cloudformationResource: AWS::EC2::RouteServerAssociation
42367
+ :exampleMetadata: fixture=_generated
42368
+
42369
+ Example::
42370
+
42371
+ # The code below shows an example of how to instantiate this type.
42372
+ # The values are placeholders you should change.
42373
+ from aws_cdk import aws_ec2 as ec2
42374
+
42375
+ cfn_route_server_association = ec2.CfnRouteServerAssociation(self, "MyCfnRouteServerAssociation",
42376
+ route_server_id="routeServerId",
42377
+ vpc_id="vpcId"
42378
+ )
42379
+ '''
42380
+
42381
+ def __init__(
42382
+ self,
42383
+ scope: _constructs_77d1e7e8.Construct,
42384
+ id: builtins.str,
42385
+ *,
42386
+ route_server_id: builtins.str,
42387
+ vpc_id: builtins.str,
42388
+ ) -> None:
42389
+ '''
42390
+ :param scope: Scope in which this resource is defined.
42391
+ :param id: Construct identifier for this resource (unique in its scope).
42392
+ :param route_server_id: Route Server ID.
42393
+ :param vpc_id: VPC ID.
42394
+ '''
42395
+ if __debug__:
42396
+ type_hints = typing.get_type_hints(_typecheckingstub__3e6189f73b644788c8019b72b4d8a2aa6c79c4d018333b9c657eba49644b2680)
42397
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
42398
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
42399
+ props = CfnRouteServerAssociationProps(
42400
+ route_server_id=route_server_id, vpc_id=vpc_id
42401
+ )
42402
+
42403
+ jsii.create(self.__class__, self, [scope, id, props])
42404
+
42405
+ @jsii.member(jsii_name="inspect")
42406
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
42407
+ '''Examines the CloudFormation resource and discloses attributes.
42408
+
42409
+ :param inspector: tree inspector to collect and process attributes.
42410
+ '''
42411
+ if __debug__:
42412
+ type_hints = typing.get_type_hints(_typecheckingstub__6b36f7b91f0c35572aea114010d9abe5eb6819cc14bf7a83fd8eaae89d84c513)
42413
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
42414
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
42415
+
42416
+ @jsii.member(jsii_name="renderProperties")
42417
+ def _render_properties(
42418
+ self,
42419
+ props: typing.Mapping[builtins.str, typing.Any],
42420
+ ) -> typing.Mapping[builtins.str, typing.Any]:
42421
+ '''
42422
+ :param props: -
42423
+ '''
42424
+ if __debug__:
42425
+ type_hints = typing.get_type_hints(_typecheckingstub__2061cfa69aa80401640d0ebfc6ecb03d4710d83371735dfda34e6b1a112f4b61)
42426
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
42427
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
42428
+
42429
+ @jsii.python.classproperty
42430
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
42431
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
42432
+ '''The CloudFormation resource type name for this resource class.'''
42433
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
42434
+
42435
+ @builtins.property
42436
+ @jsii.member(jsii_name="cfnProperties")
42437
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
42438
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
42439
+
42440
+ @builtins.property
42441
+ @jsii.member(jsii_name="routeServerId")
42442
+ def route_server_id(self) -> builtins.str:
42443
+ '''Route Server ID.'''
42444
+ return typing.cast(builtins.str, jsii.get(self, "routeServerId"))
42445
+
42446
+ @route_server_id.setter
42447
+ def route_server_id(self, value: builtins.str) -> None:
42448
+ if __debug__:
42449
+ type_hints = typing.get_type_hints(_typecheckingstub__a30a1dfa1b5b5a2238f1ea3896d581c69df96b4fc842c1511df6b0d0d8bfc0a5)
42450
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42451
+ jsii.set(self, "routeServerId", value) # pyright: ignore[reportArgumentType]
42452
+
42453
+ @builtins.property
42454
+ @jsii.member(jsii_name="vpcId")
42455
+ def vpc_id(self) -> builtins.str:
42456
+ '''VPC ID.'''
42457
+ return typing.cast(builtins.str, jsii.get(self, "vpcId"))
42458
+
42459
+ @vpc_id.setter
42460
+ def vpc_id(self, value: builtins.str) -> None:
42461
+ if __debug__:
42462
+ type_hints = typing.get_type_hints(_typecheckingstub__b5c4a6f8b540144e4bab65f284f718719b1d99a890e26010fe631a8f9b8d6c09)
42463
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42464
+ jsii.set(self, "vpcId", value) # pyright: ignore[reportArgumentType]
42465
+
42466
+
42467
+ @jsii.data_type(
42468
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerAssociationProps",
42469
+ jsii_struct_bases=[],
42470
+ name_mapping={"route_server_id": "routeServerId", "vpc_id": "vpcId"},
42471
+ )
42472
+ class CfnRouteServerAssociationProps:
42473
+ def __init__(self, *, route_server_id: builtins.str, vpc_id: builtins.str) -> None:
42474
+ '''Properties for defining a ``CfnRouteServerAssociation``.
42475
+
42476
+ :param route_server_id: Route Server ID.
42477
+ :param vpc_id: VPC ID.
42478
+
42479
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverassociation.html
42480
+ :exampleMetadata: fixture=_generated
42481
+
42482
+ Example::
42483
+
42484
+ # The code below shows an example of how to instantiate this type.
42485
+ # The values are placeholders you should change.
42486
+ from aws_cdk import aws_ec2 as ec2
42487
+
42488
+ cfn_route_server_association_props = ec2.CfnRouteServerAssociationProps(
42489
+ route_server_id="routeServerId",
42490
+ vpc_id="vpcId"
42491
+ )
42492
+ '''
42493
+ if __debug__:
42494
+ type_hints = typing.get_type_hints(_typecheckingstub__486c86fa481692f6a9be14621c56393d4598ea52756029970e390e215a9f4e41)
42495
+ check_type(argname="argument route_server_id", value=route_server_id, expected_type=type_hints["route_server_id"])
42496
+ check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
42497
+ self._values: typing.Dict[builtins.str, typing.Any] = {
42498
+ "route_server_id": route_server_id,
42499
+ "vpc_id": vpc_id,
42500
+ }
42501
+
42502
+ @builtins.property
42503
+ def route_server_id(self) -> builtins.str:
42504
+ '''Route Server ID.
42505
+
42506
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverassociation.html#cfn-ec2-routeserverassociation-routeserverid
42507
+ '''
42508
+ result = self._values.get("route_server_id")
42509
+ assert result is not None, "Required property 'route_server_id' is missing"
42510
+ return typing.cast(builtins.str, result)
42511
+
42512
+ @builtins.property
42513
+ def vpc_id(self) -> builtins.str:
42514
+ '''VPC ID.
42515
+
42516
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverassociation.html#cfn-ec2-routeserverassociation-vpcid
42517
+ '''
42518
+ result = self._values.get("vpc_id")
42519
+ assert result is not None, "Required property 'vpc_id' is missing"
42520
+ return typing.cast(builtins.str, result)
42521
+
42522
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
42523
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
42524
+
42525
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
42526
+ return not (rhs == self)
42527
+
42528
+ def __repr__(self) -> str:
42529
+ return "CfnRouteServerAssociationProps(%s)" % ", ".join(
42530
+ k + "=" + repr(v) for k, v in self._values.items()
42531
+ )
42532
+
42533
+
42534
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
42535
+ class CfnRouteServerEndpoint(
42536
+ _CfnResource_9df397a6,
42537
+ metaclass=jsii.JSIIMeta,
42538
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerEndpoint",
42539
+ ):
42540
+ '''VPC Route Server Endpoint.
42541
+
42542
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html
42543
+ :cloudformationResource: AWS::EC2::RouteServerEndpoint
42544
+ :exampleMetadata: fixture=_generated
42545
+
42546
+ Example::
42547
+
42548
+ # The code below shows an example of how to instantiate this type.
42549
+ # The values are placeholders you should change.
42550
+ from aws_cdk import aws_ec2 as ec2
42551
+
42552
+ cfn_route_server_endpoint = ec2.CfnRouteServerEndpoint(self, "MyCfnRouteServerEndpoint",
42553
+ route_server_id="routeServerId",
42554
+ subnet_id="subnetId",
42555
+
42556
+ # the properties below are optional
42557
+ tags=[CfnTag(
42558
+ key="key",
42559
+ value="value"
42560
+ )]
42561
+ )
42562
+ '''
42563
+
42564
+ def __init__(
42565
+ self,
42566
+ scope: _constructs_77d1e7e8.Construct,
42567
+ id: builtins.str,
42568
+ *,
42569
+ route_server_id: builtins.str,
42570
+ subnet_id: builtins.str,
42571
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
42572
+ ) -> None:
42573
+ '''
42574
+ :param scope: Scope in which this resource is defined.
42575
+ :param id: Construct identifier for this resource (unique in its scope).
42576
+ :param route_server_id: Route Server ID.
42577
+ :param subnet_id: Subnet ID.
42578
+ :param tags: An array of key-value pairs to apply to this resource.
42579
+ '''
42580
+ if __debug__:
42581
+ type_hints = typing.get_type_hints(_typecheckingstub__bc6285d87d5119c3a92dc59ed8148d7d11adb84676a3fb4a32f638fcab96de86)
42582
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
42583
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
42584
+ props = CfnRouteServerEndpointProps(
42585
+ route_server_id=route_server_id, subnet_id=subnet_id, tags=tags
42586
+ )
42587
+
42588
+ jsii.create(self.__class__, self, [scope, id, props])
42589
+
42590
+ @jsii.member(jsii_name="inspect")
42591
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
42592
+ '''Examines the CloudFormation resource and discloses attributes.
42593
+
42594
+ :param inspector: tree inspector to collect and process attributes.
42595
+ '''
42596
+ if __debug__:
42597
+ type_hints = typing.get_type_hints(_typecheckingstub__1646f051eeeb9accd22a953e4c76242751791c83c2230b011e8bf14a01edee0b)
42598
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
42599
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
42600
+
42601
+ @jsii.member(jsii_name="renderProperties")
42602
+ def _render_properties(
42603
+ self,
42604
+ props: typing.Mapping[builtins.str, typing.Any],
42605
+ ) -> typing.Mapping[builtins.str, typing.Any]:
42606
+ '''
42607
+ :param props: -
42608
+ '''
42609
+ if __debug__:
42610
+ type_hints = typing.get_type_hints(_typecheckingstub__bcffaecc222403f9f7f3c1b77c8038cdf2a159c437c841195d90470dfcd48aee)
42611
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
42612
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
42613
+
42614
+ @jsii.python.classproperty
42615
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
42616
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
42617
+ '''The CloudFormation resource type name for this resource class.'''
42618
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
42619
+
42620
+ @builtins.property
42621
+ @jsii.member(jsii_name="attrArn")
42622
+ def attr_arn(self) -> builtins.str:
42623
+ '''The Amazon Resource Name (ARN) of the Route Server Endpoint.
42624
+
42625
+ :cloudformationAttribute: Arn
42626
+ '''
42627
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
42628
+
42629
+ @builtins.property
42630
+ @jsii.member(jsii_name="attrEniAddress")
42631
+ def attr_eni_address(self) -> builtins.str:
42632
+ '''Elastic Network Interface IP address owned by the Route Server Endpoint.
42633
+
42634
+ :cloudformationAttribute: EniAddress
42635
+ '''
42636
+ return typing.cast(builtins.str, jsii.get(self, "attrEniAddress"))
42637
+
42638
+ @builtins.property
42639
+ @jsii.member(jsii_name="attrEniId")
42640
+ def attr_eni_id(self) -> builtins.str:
42641
+ '''Elastic Network Interface ID owned by the Route Server Endpoint.
42642
+
42643
+ :cloudformationAttribute: EniId
42644
+ '''
42645
+ return typing.cast(builtins.str, jsii.get(self, "attrEniId"))
42646
+
42647
+ @builtins.property
42648
+ @jsii.member(jsii_name="attrId")
42649
+ def attr_id(self) -> builtins.str:
42650
+ '''The ID of the Route Server Endpoint.
42651
+
42652
+ :cloudformationAttribute: Id
42653
+ '''
42654
+ return typing.cast(builtins.str, jsii.get(self, "attrId"))
42655
+
42656
+ @builtins.property
42657
+ @jsii.member(jsii_name="attrVpcId")
42658
+ def attr_vpc_id(self) -> builtins.str:
42659
+ '''VPC ID.
42660
+
42661
+ :cloudformationAttribute: VpcId
42662
+ '''
42663
+ return typing.cast(builtins.str, jsii.get(self, "attrVpcId"))
42664
+
42665
+ @builtins.property
42666
+ @jsii.member(jsii_name="cdkTagManager")
42667
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
42668
+ '''Tag Manager which manages the tags for this resource.'''
42669
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
42670
+
42671
+ @builtins.property
42672
+ @jsii.member(jsii_name="cfnProperties")
42673
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
42674
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
42675
+
42676
+ @builtins.property
42677
+ @jsii.member(jsii_name="routeServerId")
42678
+ def route_server_id(self) -> builtins.str:
42679
+ '''Route Server ID.'''
42680
+ return typing.cast(builtins.str, jsii.get(self, "routeServerId"))
42681
+
42682
+ @route_server_id.setter
42683
+ def route_server_id(self, value: builtins.str) -> None:
42684
+ if __debug__:
42685
+ type_hints = typing.get_type_hints(_typecheckingstub__d8293a15458c2f707e5aad3c3e7963f25efd74f21e1827293cc0d47398b11f95)
42686
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42687
+ jsii.set(self, "routeServerId", value) # pyright: ignore[reportArgumentType]
42688
+
42689
+ @builtins.property
42690
+ @jsii.member(jsii_name="subnetId")
42691
+ def subnet_id(self) -> builtins.str:
42692
+ '''Subnet ID.'''
42693
+ return typing.cast(builtins.str, jsii.get(self, "subnetId"))
42694
+
42695
+ @subnet_id.setter
42696
+ def subnet_id(self, value: builtins.str) -> None:
42697
+ if __debug__:
42698
+ type_hints = typing.get_type_hints(_typecheckingstub__eac409477ed07195dcf6725a9d25a19057a6b1c5b51f681223f2cab65c4f598a)
42699
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42700
+ jsii.set(self, "subnetId", value) # pyright: ignore[reportArgumentType]
42701
+
42702
+ @builtins.property
42703
+ @jsii.member(jsii_name="tags")
42704
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
42705
+ '''An array of key-value pairs to apply to this resource.'''
42706
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
42707
+
42708
+ @tags.setter
42709
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
42710
+ if __debug__:
42711
+ type_hints = typing.get_type_hints(_typecheckingstub__78be2aa7fed6300c7b7b98f999bd9f022dcc25e5d7385d9c47220e274abcbc51)
42712
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42713
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
42714
+
42715
+
42716
+ @jsii.data_type(
42717
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerEndpointProps",
42718
+ jsii_struct_bases=[],
42719
+ name_mapping={
42720
+ "route_server_id": "routeServerId",
42721
+ "subnet_id": "subnetId",
42722
+ "tags": "tags",
42723
+ },
42724
+ )
42725
+ class CfnRouteServerEndpointProps:
42726
+ def __init__(
42727
+ self,
42728
+ *,
42729
+ route_server_id: builtins.str,
42730
+ subnet_id: builtins.str,
42731
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
42732
+ ) -> None:
42733
+ '''Properties for defining a ``CfnRouteServerEndpoint``.
42734
+
42735
+ :param route_server_id: Route Server ID.
42736
+ :param subnet_id: Subnet ID.
42737
+ :param tags: An array of key-value pairs to apply to this resource.
42738
+
42739
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html
42740
+ :exampleMetadata: fixture=_generated
42741
+
42742
+ Example::
42743
+
42744
+ # The code below shows an example of how to instantiate this type.
42745
+ # The values are placeholders you should change.
42746
+ from aws_cdk import aws_ec2 as ec2
42747
+
42748
+ cfn_route_server_endpoint_props = ec2.CfnRouteServerEndpointProps(
42749
+ route_server_id="routeServerId",
42750
+ subnet_id="subnetId",
42751
+
42752
+ # the properties below are optional
42753
+ tags=[CfnTag(
42754
+ key="key",
42755
+ value="value"
42756
+ )]
42757
+ )
42758
+ '''
42759
+ if __debug__:
42760
+ type_hints = typing.get_type_hints(_typecheckingstub__15c8f9c8c8d61903f1fbf4887a562f523716b17fed0a8b0f9948078c468b4e0d)
42761
+ check_type(argname="argument route_server_id", value=route_server_id, expected_type=type_hints["route_server_id"])
42762
+ check_type(argname="argument subnet_id", value=subnet_id, expected_type=type_hints["subnet_id"])
42763
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
42764
+ self._values: typing.Dict[builtins.str, typing.Any] = {
42765
+ "route_server_id": route_server_id,
42766
+ "subnet_id": subnet_id,
42767
+ }
42768
+ if tags is not None:
42769
+ self._values["tags"] = tags
42770
+
42771
+ @builtins.property
42772
+ def route_server_id(self) -> builtins.str:
42773
+ '''Route Server ID.
42774
+
42775
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html#cfn-ec2-routeserverendpoint-routeserverid
42776
+ '''
42777
+ result = self._values.get("route_server_id")
42778
+ assert result is not None, "Required property 'route_server_id' is missing"
42779
+ return typing.cast(builtins.str, result)
42780
+
42781
+ @builtins.property
42782
+ def subnet_id(self) -> builtins.str:
42783
+ '''Subnet ID.
42784
+
42785
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html#cfn-ec2-routeserverendpoint-subnetid
42786
+ '''
42787
+ result = self._values.get("subnet_id")
42788
+ assert result is not None, "Required property 'subnet_id' is missing"
42789
+ return typing.cast(builtins.str, result)
42790
+
42791
+ @builtins.property
42792
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
42793
+ '''An array of key-value pairs to apply to this resource.
42794
+
42795
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverendpoint.html#cfn-ec2-routeserverendpoint-tags
42796
+ '''
42797
+ result = self._values.get("tags")
42798
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
42799
+
42800
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
42801
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
42802
+
42803
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
42804
+ return not (rhs == self)
42805
+
42806
+ def __repr__(self) -> str:
42807
+ return "CfnRouteServerEndpointProps(%s)" % ", ".join(
42808
+ k + "=" + repr(v) for k, v in self._values.items()
42809
+ )
42810
+
42811
+
42812
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
42813
+ class CfnRouteServerPeer(
42814
+ _CfnResource_9df397a6,
42815
+ metaclass=jsii.JSIIMeta,
42816
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerPeer",
42817
+ ):
42818
+ '''VPC Route Server Peer.
42819
+
42820
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html
42821
+ :cloudformationResource: AWS::EC2::RouteServerPeer
42822
+ :exampleMetadata: fixture=_generated
42823
+
42824
+ Example::
42825
+
42826
+ # The code below shows an example of how to instantiate this type.
42827
+ # The values are placeholders you should change.
42828
+ from aws_cdk import aws_ec2 as ec2
42829
+
42830
+ cfn_route_server_peer = ec2.CfnRouteServerPeer(self, "MyCfnRouteServerPeer",
42831
+ bgp_options=ec2.CfnRouteServerPeer.BgpOptionsProperty(
42832
+ peer_asn=123,
42833
+ peer_liveness_detection="peerLivenessDetection"
42834
+ ),
42835
+ peer_address="peerAddress",
42836
+ route_server_endpoint_id="routeServerEndpointId",
42837
+
42838
+ # the properties below are optional
42839
+ tags=[CfnTag(
42840
+ key="key",
42841
+ value="value"
42842
+ )]
42843
+ )
42844
+ '''
42845
+
42846
+ def __init__(
42847
+ self,
42848
+ scope: _constructs_77d1e7e8.Construct,
42849
+ id: builtins.str,
42850
+ *,
42851
+ bgp_options: typing.Union[_IResolvable_da3f097b, typing.Union["CfnRouteServerPeer.BgpOptionsProperty", typing.Dict[builtins.str, typing.Any]]],
42852
+ peer_address: builtins.str,
42853
+ route_server_endpoint_id: builtins.str,
42854
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
42855
+ ) -> None:
42856
+ '''
42857
+ :param scope: Scope in which this resource is defined.
42858
+ :param id: Construct identifier for this resource (unique in its scope).
42859
+ :param bgp_options: BGP Options.
42860
+ :param peer_address: IP address of the Route Server Peer.
42861
+ :param route_server_endpoint_id: Route Server Endpoint ID.
42862
+ :param tags: An array of key-value pairs to apply to this resource.
42863
+ '''
42864
+ if __debug__:
42865
+ type_hints = typing.get_type_hints(_typecheckingstub__1a1790ead48cbfa3b30bad1ac0c338d415fa3cdaeb20762a23ab6b7030c2266d)
42866
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
42867
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
42868
+ props = CfnRouteServerPeerProps(
42869
+ bgp_options=bgp_options,
42870
+ peer_address=peer_address,
42871
+ route_server_endpoint_id=route_server_endpoint_id,
42872
+ tags=tags,
42873
+ )
42874
+
42875
+ jsii.create(self.__class__, self, [scope, id, props])
42876
+
42877
+ @jsii.member(jsii_name="inspect")
42878
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
42879
+ '''Examines the CloudFormation resource and discloses attributes.
42880
+
42881
+ :param inspector: tree inspector to collect and process attributes.
42882
+ '''
42883
+ if __debug__:
42884
+ type_hints = typing.get_type_hints(_typecheckingstub__f16ce6f04d507826742aed952b4ee08df1a7f5e094ef81a6b1ff59953ab6d033)
42885
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
42886
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
42887
+
42888
+ @jsii.member(jsii_name="renderProperties")
42889
+ def _render_properties(
42890
+ self,
42891
+ props: typing.Mapping[builtins.str, typing.Any],
42892
+ ) -> typing.Mapping[builtins.str, typing.Any]:
42893
+ '''
42894
+ :param props: -
42895
+ '''
42896
+ if __debug__:
42897
+ type_hints = typing.get_type_hints(_typecheckingstub__324e991216c37d43fa3e580d243adc940b2ffe28390731ba008a2993c1eeaf46)
42898
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
42899
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
42900
+
42901
+ @jsii.python.classproperty
42902
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
42903
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
42904
+ '''The CloudFormation resource type name for this resource class.'''
42905
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
42906
+
42907
+ @builtins.property
42908
+ @jsii.member(jsii_name="attrArn")
42909
+ def attr_arn(self) -> builtins.str:
42910
+ '''The Amazon Resource Name (ARN) of the Route Server Peer.
42911
+
42912
+ :cloudformationAttribute: Arn
42913
+ '''
42914
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
42915
+
42916
+ @builtins.property
42917
+ @jsii.member(jsii_name="attrEndpointEniAddress")
42918
+ def attr_endpoint_eni_address(self) -> builtins.str:
42919
+ '''Elastic Network Interface IP address owned by the Route Server Endpoint.
42920
+
42921
+ :cloudformationAttribute: EndpointEniAddress
42922
+ '''
42923
+ return typing.cast(builtins.str, jsii.get(self, "attrEndpointEniAddress"))
42924
+
42925
+ @builtins.property
42926
+ @jsii.member(jsii_name="attrEndpointEniId")
42927
+ def attr_endpoint_eni_id(self) -> builtins.str:
42928
+ '''Elastic Network Interface ID owned by the Route Server Endpoint.
42929
+
42930
+ :cloudformationAttribute: EndpointEniId
42931
+ '''
42932
+ return typing.cast(builtins.str, jsii.get(self, "attrEndpointEniId"))
42933
+
42934
+ @builtins.property
42935
+ @jsii.member(jsii_name="attrId")
42936
+ def attr_id(self) -> builtins.str:
42937
+ '''The ID of the Route Server Peer.
42938
+
42939
+ :cloudformationAttribute: Id
42940
+ '''
42941
+ return typing.cast(builtins.str, jsii.get(self, "attrId"))
42942
+
42943
+ @builtins.property
42944
+ @jsii.member(jsii_name="attrRouteServerId")
42945
+ def attr_route_server_id(self) -> builtins.str:
42946
+ '''Route Server ID.
42947
+
42948
+ :cloudformationAttribute: RouteServerId
42949
+ '''
42950
+ return typing.cast(builtins.str, jsii.get(self, "attrRouteServerId"))
42951
+
42952
+ @builtins.property
42953
+ @jsii.member(jsii_name="attrSubnetId")
42954
+ def attr_subnet_id(self) -> builtins.str:
42955
+ '''Subnet ID.
42956
+
42957
+ :cloudformationAttribute: SubnetId
42958
+ '''
42959
+ return typing.cast(builtins.str, jsii.get(self, "attrSubnetId"))
42960
+
42961
+ @builtins.property
42962
+ @jsii.member(jsii_name="attrVpcId")
42963
+ def attr_vpc_id(self) -> builtins.str:
42964
+ '''VPC ID.
42965
+
42966
+ :cloudformationAttribute: VpcId
42967
+ '''
42968
+ return typing.cast(builtins.str, jsii.get(self, "attrVpcId"))
42969
+
42970
+ @builtins.property
42971
+ @jsii.member(jsii_name="cdkTagManager")
42972
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
42973
+ '''Tag Manager which manages the tags for this resource.'''
42974
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
42975
+
42976
+ @builtins.property
42977
+ @jsii.member(jsii_name="cfnProperties")
42978
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
42979
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
42980
+
42981
+ @builtins.property
42982
+ @jsii.member(jsii_name="bgpOptions")
42983
+ def bgp_options(
42984
+ self,
42985
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnRouteServerPeer.BgpOptionsProperty"]:
42986
+ '''BGP Options.'''
42987
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnRouteServerPeer.BgpOptionsProperty"], jsii.get(self, "bgpOptions"))
42988
+
42989
+ @bgp_options.setter
42990
+ def bgp_options(
42991
+ self,
42992
+ value: typing.Union[_IResolvable_da3f097b, "CfnRouteServerPeer.BgpOptionsProperty"],
42993
+ ) -> None:
42994
+ if __debug__:
42995
+ type_hints = typing.get_type_hints(_typecheckingstub__14edeb8cd14c52bec2920709e09f35b87f1095d4eeb9788f5ace78bf28861ba3)
42996
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
42997
+ jsii.set(self, "bgpOptions", value) # pyright: ignore[reportArgumentType]
42998
+
42999
+ @builtins.property
43000
+ @jsii.member(jsii_name="peerAddress")
43001
+ def peer_address(self) -> builtins.str:
43002
+ '''IP address of the Route Server Peer.'''
43003
+ return typing.cast(builtins.str, jsii.get(self, "peerAddress"))
43004
+
43005
+ @peer_address.setter
43006
+ def peer_address(self, value: builtins.str) -> None:
43007
+ if __debug__:
43008
+ type_hints = typing.get_type_hints(_typecheckingstub__963224c073f81d69053b59f68248587a5cf06a83a818d216b7f2539be11c5eac)
43009
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
43010
+ jsii.set(self, "peerAddress", value) # pyright: ignore[reportArgumentType]
43011
+
43012
+ @builtins.property
43013
+ @jsii.member(jsii_name="routeServerEndpointId")
43014
+ def route_server_endpoint_id(self) -> builtins.str:
43015
+ '''Route Server Endpoint ID.'''
43016
+ return typing.cast(builtins.str, jsii.get(self, "routeServerEndpointId"))
43017
+
43018
+ @route_server_endpoint_id.setter
43019
+ def route_server_endpoint_id(self, value: builtins.str) -> None:
43020
+ if __debug__:
43021
+ type_hints = typing.get_type_hints(_typecheckingstub__db34b963306745d8d939b30678b68f972ef95f5f538d76ceb677355955f800be)
43022
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
43023
+ jsii.set(self, "routeServerEndpointId", value) # pyright: ignore[reportArgumentType]
43024
+
43025
+ @builtins.property
43026
+ @jsii.member(jsii_name="tags")
43027
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
43028
+ '''An array of key-value pairs to apply to this resource.'''
43029
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
43030
+
43031
+ @tags.setter
43032
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
43033
+ if __debug__:
43034
+ type_hints = typing.get_type_hints(_typecheckingstub__405a1707b0a270b215856d8cb1642bed0f93815e2b9a8382ed83b8f481a652c5)
43035
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
43036
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
43037
+
43038
+ @jsii.data_type(
43039
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerPeer.BgpOptionsProperty",
43040
+ jsii_struct_bases=[],
43041
+ name_mapping={
43042
+ "peer_asn": "peerAsn",
43043
+ "peer_liveness_detection": "peerLivenessDetection",
43044
+ },
43045
+ )
43046
+ class BgpOptionsProperty:
43047
+ def __init__(
43048
+ self,
43049
+ *,
43050
+ peer_asn: typing.Optional[jsii.Number] = None,
43051
+ peer_liveness_detection: typing.Optional[builtins.str] = None,
43052
+ ) -> None:
43053
+ '''BGP Options.
43054
+
43055
+ :param peer_asn: BGP ASN of the Route Server Peer.
43056
+ :param peer_liveness_detection: BGP Liveness Detection.
43057
+
43058
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-routeserverpeer-bgpoptions.html
43059
+ :exampleMetadata: fixture=_generated
43060
+
43061
+ Example::
43062
+
43063
+ # The code below shows an example of how to instantiate this type.
43064
+ # The values are placeholders you should change.
43065
+ from aws_cdk import aws_ec2 as ec2
43066
+
43067
+ bgp_options_property = ec2.CfnRouteServerPeer.BgpOptionsProperty(
43068
+ peer_asn=123,
43069
+ peer_liveness_detection="peerLivenessDetection"
43070
+ )
43071
+ '''
43072
+ if __debug__:
43073
+ type_hints = typing.get_type_hints(_typecheckingstub__d3762043f4004483da78ddbfb131e0b34dfcfe25c8154498f0b6c91bfe10ef28)
43074
+ check_type(argname="argument peer_asn", value=peer_asn, expected_type=type_hints["peer_asn"])
43075
+ check_type(argname="argument peer_liveness_detection", value=peer_liveness_detection, expected_type=type_hints["peer_liveness_detection"])
43076
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
43077
+ if peer_asn is not None:
43078
+ self._values["peer_asn"] = peer_asn
43079
+ if peer_liveness_detection is not None:
43080
+ self._values["peer_liveness_detection"] = peer_liveness_detection
43081
+
43082
+ @builtins.property
43083
+ def peer_asn(self) -> typing.Optional[jsii.Number]:
43084
+ '''BGP ASN of the Route Server Peer.
43085
+
43086
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-routeserverpeer-bgpoptions.html#cfn-ec2-routeserverpeer-bgpoptions-peerasn
43087
+ '''
43088
+ result = self._values.get("peer_asn")
43089
+ return typing.cast(typing.Optional[jsii.Number], result)
43090
+
43091
+ @builtins.property
43092
+ def peer_liveness_detection(self) -> typing.Optional[builtins.str]:
43093
+ '''BGP Liveness Detection.
43094
+
43095
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ec2-routeserverpeer-bgpoptions.html#cfn-ec2-routeserverpeer-bgpoptions-peerlivenessdetection
43096
+ '''
43097
+ result = self._values.get("peer_liveness_detection")
43098
+ return typing.cast(typing.Optional[builtins.str], result)
43099
+
43100
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
43101
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
43102
+
43103
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
43104
+ return not (rhs == self)
43105
+
43106
+ def __repr__(self) -> str:
43107
+ return "BgpOptionsProperty(%s)" % ", ".join(
43108
+ k + "=" + repr(v) for k, v in self._values.items()
43109
+ )
43110
+
43111
+
43112
+ @jsii.data_type(
43113
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerPeerProps",
43114
+ jsii_struct_bases=[],
43115
+ name_mapping={
43116
+ "bgp_options": "bgpOptions",
43117
+ "peer_address": "peerAddress",
43118
+ "route_server_endpoint_id": "routeServerEndpointId",
43119
+ "tags": "tags",
43120
+ },
43121
+ )
43122
+ class CfnRouteServerPeerProps:
43123
+ def __init__(
43124
+ self,
43125
+ *,
43126
+ bgp_options: typing.Union[_IResolvable_da3f097b, typing.Union[CfnRouteServerPeer.BgpOptionsProperty, typing.Dict[builtins.str, typing.Any]]],
43127
+ peer_address: builtins.str,
43128
+ route_server_endpoint_id: builtins.str,
43129
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
43130
+ ) -> None:
43131
+ '''Properties for defining a ``CfnRouteServerPeer``.
43132
+
43133
+ :param bgp_options: BGP Options.
43134
+ :param peer_address: IP address of the Route Server Peer.
43135
+ :param route_server_endpoint_id: Route Server Endpoint ID.
43136
+ :param tags: An array of key-value pairs to apply to this resource.
43137
+
43138
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html
43139
+ :exampleMetadata: fixture=_generated
43140
+
43141
+ Example::
43142
+
43143
+ # The code below shows an example of how to instantiate this type.
43144
+ # The values are placeholders you should change.
43145
+ from aws_cdk import aws_ec2 as ec2
43146
+
43147
+ cfn_route_server_peer_props = ec2.CfnRouteServerPeerProps(
43148
+ bgp_options=ec2.CfnRouteServerPeer.BgpOptionsProperty(
43149
+ peer_asn=123,
43150
+ peer_liveness_detection="peerLivenessDetection"
43151
+ ),
43152
+ peer_address="peerAddress",
43153
+ route_server_endpoint_id="routeServerEndpointId",
43154
+
43155
+ # the properties below are optional
43156
+ tags=[CfnTag(
43157
+ key="key",
43158
+ value="value"
43159
+ )]
43160
+ )
43161
+ '''
43162
+ if __debug__:
43163
+ type_hints = typing.get_type_hints(_typecheckingstub__41ecfe37cb908f7a1db9eac7ef3a64c49c0ee3fdade6d6c294d52f6341d911e3)
43164
+ check_type(argname="argument bgp_options", value=bgp_options, expected_type=type_hints["bgp_options"])
43165
+ check_type(argname="argument peer_address", value=peer_address, expected_type=type_hints["peer_address"])
43166
+ check_type(argname="argument route_server_endpoint_id", value=route_server_endpoint_id, expected_type=type_hints["route_server_endpoint_id"])
43167
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
43168
+ self._values: typing.Dict[builtins.str, typing.Any] = {
43169
+ "bgp_options": bgp_options,
43170
+ "peer_address": peer_address,
43171
+ "route_server_endpoint_id": route_server_endpoint_id,
43172
+ }
43173
+ if tags is not None:
43174
+ self._values["tags"] = tags
43175
+
43176
+ @builtins.property
43177
+ def bgp_options(
43178
+ self,
43179
+ ) -> typing.Union[_IResolvable_da3f097b, CfnRouteServerPeer.BgpOptionsProperty]:
43180
+ '''BGP Options.
43181
+
43182
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html#cfn-ec2-routeserverpeer-bgpoptions
43183
+ '''
43184
+ result = self._values.get("bgp_options")
43185
+ assert result is not None, "Required property 'bgp_options' is missing"
43186
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnRouteServerPeer.BgpOptionsProperty], result)
43187
+
43188
+ @builtins.property
43189
+ def peer_address(self) -> builtins.str:
43190
+ '''IP address of the Route Server Peer.
43191
+
43192
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html#cfn-ec2-routeserverpeer-peeraddress
43193
+ '''
43194
+ result = self._values.get("peer_address")
43195
+ assert result is not None, "Required property 'peer_address' is missing"
43196
+ return typing.cast(builtins.str, result)
43197
+
43198
+ @builtins.property
43199
+ def route_server_endpoint_id(self) -> builtins.str:
43200
+ '''Route Server Endpoint ID.
43201
+
43202
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html#cfn-ec2-routeserverpeer-routeserverendpointid
43203
+ '''
43204
+ result = self._values.get("route_server_endpoint_id")
43205
+ assert result is not None, "Required property 'route_server_endpoint_id' is missing"
43206
+ return typing.cast(builtins.str, result)
43207
+
43208
+ @builtins.property
43209
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
43210
+ '''An array of key-value pairs to apply to this resource.
43211
+
43212
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpeer.html#cfn-ec2-routeserverpeer-tags
43213
+ '''
43214
+ result = self._values.get("tags")
43215
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
43216
+
43217
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
43218
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
43219
+
43220
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
43221
+ return not (rhs == self)
43222
+
43223
+ def __repr__(self) -> str:
43224
+ return "CfnRouteServerPeerProps(%s)" % ", ".join(
43225
+ k + "=" + repr(v) for k, v in self._values.items()
43226
+ )
43227
+
43228
+
43229
+ @jsii.implements(_IInspectable_c2943556)
43230
+ class CfnRouteServerPropagation(
43231
+ _CfnResource_9df397a6,
43232
+ metaclass=jsii.JSIIMeta,
43233
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerPropagation",
43234
+ ):
43235
+ '''VPC Route Server Propagation.
43236
+
43237
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpropagation.html
43238
+ :cloudformationResource: AWS::EC2::RouteServerPropagation
43239
+ :exampleMetadata: fixture=_generated
43240
+
43241
+ Example::
43242
+
43243
+ # The code below shows an example of how to instantiate this type.
43244
+ # The values are placeholders you should change.
43245
+ from aws_cdk import aws_ec2 as ec2
43246
+
43247
+ cfn_route_server_propagation = ec2.CfnRouteServerPropagation(self, "MyCfnRouteServerPropagation",
43248
+ route_server_id="routeServerId",
43249
+ route_table_id="routeTableId"
43250
+ )
43251
+ '''
43252
+
43253
+ def __init__(
43254
+ self,
43255
+ scope: _constructs_77d1e7e8.Construct,
43256
+ id: builtins.str,
43257
+ *,
43258
+ route_server_id: builtins.str,
43259
+ route_table_id: builtins.str,
43260
+ ) -> None:
43261
+ '''
43262
+ :param scope: Scope in which this resource is defined.
43263
+ :param id: Construct identifier for this resource (unique in its scope).
43264
+ :param route_server_id: Route Server ID.
43265
+ :param route_table_id: Route Table ID.
43266
+ '''
43267
+ if __debug__:
43268
+ type_hints = typing.get_type_hints(_typecheckingstub__0d139e896cf279d926dd7b03bd4605d62bf6e6d336cab83c19f03f115f11332f)
43269
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
43270
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
43271
+ props = CfnRouteServerPropagationProps(
43272
+ route_server_id=route_server_id, route_table_id=route_table_id
43273
+ )
43274
+
43275
+ jsii.create(self.__class__, self, [scope, id, props])
43276
+
43277
+ @jsii.member(jsii_name="inspect")
43278
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
43279
+ '''Examines the CloudFormation resource and discloses attributes.
43280
+
43281
+ :param inspector: tree inspector to collect and process attributes.
43282
+ '''
43283
+ if __debug__:
43284
+ type_hints = typing.get_type_hints(_typecheckingstub__dcdd387ffc37afa195a7e25d5c44536188638f43cf7f40cca0453fa46b860ce5)
43285
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
43286
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
43287
+
43288
+ @jsii.member(jsii_name="renderProperties")
43289
+ def _render_properties(
43290
+ self,
43291
+ props: typing.Mapping[builtins.str, typing.Any],
43292
+ ) -> typing.Mapping[builtins.str, typing.Any]:
43293
+ '''
43294
+ :param props: -
43295
+ '''
43296
+ if __debug__:
43297
+ type_hints = typing.get_type_hints(_typecheckingstub__2dbcf0d472b0cc21729046719e317f1e14c0110825faf1f017c05e237f61aeba)
43298
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
43299
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
43300
+
43301
+ @jsii.python.classproperty
43302
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
43303
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
43304
+ '''The CloudFormation resource type name for this resource class.'''
43305
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
43306
+
43307
+ @builtins.property
43308
+ @jsii.member(jsii_name="cfnProperties")
43309
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
43310
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
43311
+
43312
+ @builtins.property
43313
+ @jsii.member(jsii_name="routeServerId")
43314
+ def route_server_id(self) -> builtins.str:
43315
+ '''Route Server ID.'''
43316
+ return typing.cast(builtins.str, jsii.get(self, "routeServerId"))
43317
+
43318
+ @route_server_id.setter
43319
+ def route_server_id(self, value: builtins.str) -> None:
41668
43320
  if __debug__:
41669
- type_hints = typing.get_type_hints(_typecheckingstub__9b3588c8e5a495d9ab8a2699ed72f7253e15605bba594e43b65e5892bcbf1ca0)
43321
+ type_hints = typing.get_type_hints(_typecheckingstub__a1d3bdf36fee55ea70a83f37033fadc68a67310d7a4f2d403cb0ad237e57c622)
41670
43322
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
41671
- jsii.set(self, "vpcEndpointId", value) # pyright: ignore[reportArgumentType]
43323
+ jsii.set(self, "routeServerId", value) # pyright: ignore[reportArgumentType]
41672
43324
 
41673
43325
  @builtins.property
41674
- @jsii.member(jsii_name="vpcPeeringConnectionId")
41675
- def vpc_peering_connection_id(self) -> typing.Optional[builtins.str]:
41676
- '''The ID of a VPC peering connection.'''
41677
- return typing.cast(typing.Optional[builtins.str], jsii.get(self, "vpcPeeringConnectionId"))
43326
+ @jsii.member(jsii_name="routeTableId")
43327
+ def route_table_id(self) -> builtins.str:
43328
+ '''Route Table ID.'''
43329
+ return typing.cast(builtins.str, jsii.get(self, "routeTableId"))
41678
43330
 
41679
- @vpc_peering_connection_id.setter
41680
- def vpc_peering_connection_id(self, value: typing.Optional[builtins.str]) -> None:
43331
+ @route_table_id.setter
43332
+ def route_table_id(self, value: builtins.str) -> None:
41681
43333
  if __debug__:
41682
- type_hints = typing.get_type_hints(_typecheckingstub__46892d5dd1581aee0dcf6410687f88cfaffdfdd18c726880534edc8f86e9919a)
43334
+ type_hints = typing.get_type_hints(_typecheckingstub__7fc992ffac821b5511c01446ca80e457d3120cdf8e1bbe982c1dcd5b3bf2a9e0)
41683
43335
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
41684
- jsii.set(self, "vpcPeeringConnectionId", value) # pyright: ignore[reportArgumentType]
43336
+ jsii.set(self, "routeTableId", value) # pyright: ignore[reportArgumentType]
41685
43337
 
41686
43338
 
41687
43339
  @jsii.data_type(
41688
- jsii_type="aws-cdk-lib.aws_ec2.CfnRouteProps",
43340
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerPropagationProps",
41689
43341
  jsii_struct_bases=[],
41690
43342
  name_mapping={
43343
+ "route_server_id": "routeServerId",
41691
43344
  "route_table_id": "routeTableId",
41692
- "carrier_gateway_id": "carrierGatewayId",
41693
- "core_network_arn": "coreNetworkArn",
41694
- "destination_cidr_block": "destinationCidrBlock",
41695
- "destination_ipv6_cidr_block": "destinationIpv6CidrBlock",
41696
- "destination_prefix_list_id": "destinationPrefixListId",
41697
- "egress_only_internet_gateway_id": "egressOnlyInternetGatewayId",
41698
- "gateway_id": "gatewayId",
41699
- "instance_id": "instanceId",
41700
- "local_gateway_id": "localGatewayId",
41701
- "nat_gateway_id": "natGatewayId",
41702
- "network_interface_id": "networkInterfaceId",
41703
- "transit_gateway_id": "transitGatewayId",
41704
- "vpc_endpoint_id": "vpcEndpointId",
41705
- "vpc_peering_connection_id": "vpcPeeringConnectionId",
41706
43345
  },
41707
43346
  )
41708
- class CfnRouteProps:
43347
+ class CfnRouteServerPropagationProps:
41709
43348
  def __init__(
41710
43349
  self,
41711
43350
  *,
43351
+ route_server_id: builtins.str,
41712
43352
  route_table_id: builtins.str,
41713
- carrier_gateway_id: typing.Optional[builtins.str] = None,
41714
- core_network_arn: typing.Optional[builtins.str] = None,
41715
- destination_cidr_block: typing.Optional[builtins.str] = None,
41716
- destination_ipv6_cidr_block: typing.Optional[builtins.str] = None,
41717
- destination_prefix_list_id: typing.Optional[builtins.str] = None,
41718
- egress_only_internet_gateway_id: typing.Optional[builtins.str] = None,
41719
- gateway_id: typing.Optional[builtins.str] = None,
41720
- instance_id: typing.Optional[builtins.str] = None,
41721
- local_gateway_id: typing.Optional[builtins.str] = None,
41722
- nat_gateway_id: typing.Optional[builtins.str] = None,
41723
- network_interface_id: typing.Optional[builtins.str] = None,
41724
- transit_gateway_id: typing.Optional[builtins.str] = None,
41725
- vpc_endpoint_id: typing.Optional[builtins.str] = None,
41726
- vpc_peering_connection_id: typing.Optional[builtins.str] = None,
41727
43353
  ) -> None:
41728
- '''Properties for defining a ``CfnRoute``.
43354
+ '''Properties for defining a ``CfnRouteServerPropagation``.
41729
43355
 
41730
- :param route_table_id: The ID of the route table for the route.
41731
- :param carrier_gateway_id: The ID of the carrier gateway. You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.
41732
- :param core_network_arn: The Amazon Resource Name (ARN) of the core network.
41733
- :param destination_cidr_block: The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify ``100.68.0.18/18`` , we modify it to ``100.68.0.0/18`` .
41734
- :param destination_ipv6_cidr_block: The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
41735
- :param destination_prefix_list_id: The ID of a prefix list used for the destination match.
41736
- :param egress_only_internet_gateway_id: [IPv6 traffic only] The ID of an egress-only internet gateway.
41737
- :param gateway_id: The ID of an internet gateway or virtual private gateway attached to your VPC.
41738
- :param instance_id: The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.
41739
- :param local_gateway_id: The ID of the local gateway.
41740
- :param nat_gateway_id: [IPv4 traffic only] The ID of a NAT gateway.
41741
- :param network_interface_id: The ID of a network interface.
41742
- :param transit_gateway_id: The ID of a transit gateway.
41743
- :param vpc_endpoint_id: The ID of a VPC endpoint. Supported for Gateway Load Balancer endpoints only.
41744
- :param vpc_peering_connection_id: The ID of a VPC peering connection.
43356
+ :param route_server_id: Route Server ID.
43357
+ :param route_table_id: Route Table ID.
41745
43358
 
41746
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html
43359
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpropagation.html
41747
43360
  :exampleMetadata: fixture=_generated
41748
43361
 
41749
43362
  Example::
@@ -41752,220 +43365,169 @@ class CfnRouteProps:
41752
43365
  # The values are placeholders you should change.
41753
43366
  from aws_cdk import aws_ec2 as ec2
41754
43367
 
41755
- cfn_route_props = ec2.CfnRouteProps(
41756
- route_table_id="routeTableId",
41757
-
41758
- # the properties below are optional
41759
- carrier_gateway_id="carrierGatewayId",
41760
- core_network_arn="coreNetworkArn",
41761
- destination_cidr_block="destinationCidrBlock",
41762
- destination_ipv6_cidr_block="destinationIpv6CidrBlock",
41763
- destination_prefix_list_id="destinationPrefixListId",
41764
- egress_only_internet_gateway_id="egressOnlyInternetGatewayId",
41765
- gateway_id="gatewayId",
41766
- instance_id="instanceId",
41767
- local_gateway_id="localGatewayId",
41768
- nat_gateway_id="natGatewayId",
41769
- network_interface_id="networkInterfaceId",
41770
- transit_gateway_id="transitGatewayId",
41771
- vpc_endpoint_id="vpcEndpointId",
41772
- vpc_peering_connection_id="vpcPeeringConnectionId"
43368
+ cfn_route_server_propagation_props = ec2.CfnRouteServerPropagationProps(
43369
+ route_server_id="routeServerId",
43370
+ route_table_id="routeTableId"
41773
43371
  )
41774
43372
  '''
41775
43373
  if __debug__:
41776
- type_hints = typing.get_type_hints(_typecheckingstub__f90e7814d59b7c562ab4b24d54461eba6a4c88fbd5451ba2b2b0adf8441a452e)
43374
+ type_hints = typing.get_type_hints(_typecheckingstub__4f93feed063aa24e3ccac40eb1b470367c4be09679255ec2cc2d4589ffd2f3b0)
43375
+ check_type(argname="argument route_server_id", value=route_server_id, expected_type=type_hints["route_server_id"])
41777
43376
  check_type(argname="argument route_table_id", value=route_table_id, expected_type=type_hints["route_table_id"])
41778
- check_type(argname="argument carrier_gateway_id", value=carrier_gateway_id, expected_type=type_hints["carrier_gateway_id"])
41779
- check_type(argname="argument core_network_arn", value=core_network_arn, expected_type=type_hints["core_network_arn"])
41780
- check_type(argname="argument destination_cidr_block", value=destination_cidr_block, expected_type=type_hints["destination_cidr_block"])
41781
- check_type(argname="argument destination_ipv6_cidr_block", value=destination_ipv6_cidr_block, expected_type=type_hints["destination_ipv6_cidr_block"])
41782
- check_type(argname="argument destination_prefix_list_id", value=destination_prefix_list_id, expected_type=type_hints["destination_prefix_list_id"])
41783
- check_type(argname="argument egress_only_internet_gateway_id", value=egress_only_internet_gateway_id, expected_type=type_hints["egress_only_internet_gateway_id"])
41784
- check_type(argname="argument gateway_id", value=gateway_id, expected_type=type_hints["gateway_id"])
41785
- check_type(argname="argument instance_id", value=instance_id, expected_type=type_hints["instance_id"])
41786
- check_type(argname="argument local_gateway_id", value=local_gateway_id, expected_type=type_hints["local_gateway_id"])
41787
- check_type(argname="argument nat_gateway_id", value=nat_gateway_id, expected_type=type_hints["nat_gateway_id"])
41788
- check_type(argname="argument network_interface_id", value=network_interface_id, expected_type=type_hints["network_interface_id"])
41789
- check_type(argname="argument transit_gateway_id", value=transit_gateway_id, expected_type=type_hints["transit_gateway_id"])
41790
- check_type(argname="argument vpc_endpoint_id", value=vpc_endpoint_id, expected_type=type_hints["vpc_endpoint_id"])
41791
- check_type(argname="argument vpc_peering_connection_id", value=vpc_peering_connection_id, expected_type=type_hints["vpc_peering_connection_id"])
41792
43377
  self._values: typing.Dict[builtins.str, typing.Any] = {
43378
+ "route_server_id": route_server_id,
41793
43379
  "route_table_id": route_table_id,
41794
43380
  }
41795
- if carrier_gateway_id is not None:
41796
- self._values["carrier_gateway_id"] = carrier_gateway_id
41797
- if core_network_arn is not None:
41798
- self._values["core_network_arn"] = core_network_arn
41799
- if destination_cidr_block is not None:
41800
- self._values["destination_cidr_block"] = destination_cidr_block
41801
- if destination_ipv6_cidr_block is not None:
41802
- self._values["destination_ipv6_cidr_block"] = destination_ipv6_cidr_block
41803
- if destination_prefix_list_id is not None:
41804
- self._values["destination_prefix_list_id"] = destination_prefix_list_id
41805
- if egress_only_internet_gateway_id is not None:
41806
- self._values["egress_only_internet_gateway_id"] = egress_only_internet_gateway_id
41807
- if gateway_id is not None:
41808
- self._values["gateway_id"] = gateway_id
41809
- if instance_id is not None:
41810
- self._values["instance_id"] = instance_id
41811
- if local_gateway_id is not None:
41812
- self._values["local_gateway_id"] = local_gateway_id
41813
- if nat_gateway_id is not None:
41814
- self._values["nat_gateway_id"] = nat_gateway_id
41815
- if network_interface_id is not None:
41816
- self._values["network_interface_id"] = network_interface_id
41817
- if transit_gateway_id is not None:
41818
- self._values["transit_gateway_id"] = transit_gateway_id
41819
- if vpc_endpoint_id is not None:
41820
- self._values["vpc_endpoint_id"] = vpc_endpoint_id
41821
- if vpc_peering_connection_id is not None:
41822
- self._values["vpc_peering_connection_id"] = vpc_peering_connection_id
41823
43381
 
41824
43382
  @builtins.property
41825
- def route_table_id(self) -> builtins.str:
41826
- '''The ID of the route table for the route.
43383
+ def route_server_id(self) -> builtins.str:
43384
+ '''Route Server ID.
41827
43385
 
41828
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-routetableid
43386
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpropagation.html#cfn-ec2-routeserverpropagation-routeserverid
41829
43387
  '''
41830
- result = self._values.get("route_table_id")
41831
- assert result is not None, "Required property 'route_table_id' is missing"
43388
+ result = self._values.get("route_server_id")
43389
+ assert result is not None, "Required property 'route_server_id' is missing"
41832
43390
  return typing.cast(builtins.str, result)
41833
43391
 
41834
43392
  @builtins.property
41835
- def carrier_gateway_id(self) -> typing.Optional[builtins.str]:
41836
- '''The ID of the carrier gateway.
41837
-
41838
- You can only use this option when the VPC contains a subnet which is associated with a Wavelength Zone.
41839
-
41840
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-carriergatewayid
41841
- '''
41842
- result = self._values.get("carrier_gateway_id")
41843
- return typing.cast(typing.Optional[builtins.str], result)
41844
-
41845
- @builtins.property
41846
- def core_network_arn(self) -> typing.Optional[builtins.str]:
41847
- '''The Amazon Resource Name (ARN) of the core network.
41848
-
41849
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-corenetworkarn
41850
- '''
41851
- result = self._values.get("core_network_arn")
41852
- return typing.cast(typing.Optional[builtins.str], result)
41853
-
41854
- @builtins.property
41855
- def destination_cidr_block(self) -> typing.Optional[builtins.str]:
41856
- '''The IPv4 CIDR address block used for the destination match.
41857
-
41858
- Routing decisions are based on the most specific match. We modify the specified CIDR block to its canonical form; for example, if you specify ``100.68.0.18/18`` , we modify it to ``100.68.0.0/18`` .
41859
-
41860
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationcidrblock
41861
- '''
41862
- result = self._values.get("destination_cidr_block")
41863
- return typing.cast(typing.Optional[builtins.str], result)
41864
-
41865
- @builtins.property
41866
- def destination_ipv6_cidr_block(self) -> typing.Optional[builtins.str]:
41867
- '''The IPv6 CIDR block used for the destination match.
41868
-
41869
- Routing decisions are based on the most specific match.
41870
-
41871
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationipv6cidrblock
41872
- '''
41873
- result = self._values.get("destination_ipv6_cidr_block")
41874
- return typing.cast(typing.Optional[builtins.str], result)
41875
-
41876
- @builtins.property
41877
- def destination_prefix_list_id(self) -> typing.Optional[builtins.str]:
41878
- '''The ID of a prefix list used for the destination match.
43393
+ def route_table_id(self) -> builtins.str:
43394
+ '''Route Table ID.
41879
43395
 
41880
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-destinationprefixlistid
43396
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserverpropagation.html#cfn-ec2-routeserverpropagation-routetableid
41881
43397
  '''
41882
- result = self._values.get("destination_prefix_list_id")
41883
- return typing.cast(typing.Optional[builtins.str], result)
43398
+ result = self._values.get("route_table_id")
43399
+ assert result is not None, "Required property 'route_table_id' is missing"
43400
+ return typing.cast(builtins.str, result)
41884
43401
 
41885
- @builtins.property
41886
- def egress_only_internet_gateway_id(self) -> typing.Optional[builtins.str]:
41887
- '''[IPv6 traffic only] The ID of an egress-only internet gateway.
43402
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
43403
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
41888
43404
 
41889
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-egressonlyinternetgatewayid
41890
- '''
41891
- result = self._values.get("egress_only_internet_gateway_id")
41892
- return typing.cast(typing.Optional[builtins.str], result)
43405
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
43406
+ return not (rhs == self)
41893
43407
 
41894
- @builtins.property
41895
- def gateway_id(self) -> typing.Optional[builtins.str]:
41896
- '''The ID of an internet gateway or virtual private gateway attached to your VPC.
43408
+ def __repr__(self) -> str:
43409
+ return "CfnRouteServerPropagationProps(%s)" % ", ".join(
43410
+ k + "=" + repr(v) for k, v in self._values.items()
43411
+ )
41897
43412
 
41898
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-gatewayid
41899
- '''
41900
- result = self._values.get("gateway_id")
41901
- return typing.cast(typing.Optional[builtins.str], result)
41902
43413
 
41903
- @builtins.property
41904
- def instance_id(self) -> typing.Optional[builtins.str]:
41905
- '''The ID of a NAT instance in your VPC.
43414
+ @jsii.data_type(
43415
+ jsii_type="aws-cdk-lib.aws_ec2.CfnRouteServerProps",
43416
+ jsii_struct_bases=[],
43417
+ name_mapping={
43418
+ "amazon_side_asn": "amazonSideAsn",
43419
+ "persist_routes": "persistRoutes",
43420
+ "persist_routes_duration": "persistRoutesDuration",
43421
+ "sns_notifications_enabled": "snsNotificationsEnabled",
43422
+ "tags": "tags",
43423
+ },
43424
+ )
43425
+ class CfnRouteServerProps:
43426
+ def __init__(
43427
+ self,
43428
+ *,
43429
+ amazon_side_asn: jsii.Number,
43430
+ persist_routes: typing.Optional[builtins.str] = None,
43431
+ persist_routes_duration: typing.Optional[jsii.Number] = None,
43432
+ sns_notifications_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
43433
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
43434
+ ) -> None:
43435
+ '''Properties for defining a ``CfnRouteServer``.
41906
43436
 
41907
- The operation fails if you specify an instance ID unless exactly one network interface is attached.
43437
+ :param amazon_side_asn: The Amazon-side ASN of the Route Server.
43438
+ :param persist_routes: Whether to enable persistent routes.
43439
+ :param persist_routes_duration: The duration of persistent routes in minutes.
43440
+ :param sns_notifications_enabled: Whether to enable SNS notifications.
43441
+ :param tags: An array of key-value pairs to apply to this resource.
41908
43442
 
41909
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-instanceid
41910
- '''
41911
- result = self._values.get("instance_id")
41912
- return typing.cast(typing.Optional[builtins.str], result)
43443
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html
43444
+ :exampleMetadata: fixture=_generated
41913
43445
 
41914
- @builtins.property
41915
- def local_gateway_id(self) -> typing.Optional[builtins.str]:
41916
- '''The ID of the local gateway.
43446
+ Example::
41917
43447
 
41918
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-localgatewayid
43448
+ # The code below shows an example of how to instantiate this type.
43449
+ # The values are placeholders you should change.
43450
+ from aws_cdk import aws_ec2 as ec2
43451
+
43452
+ cfn_route_server_props = ec2.CfnRouteServerProps(
43453
+ amazon_side_asn=123,
43454
+
43455
+ # the properties below are optional
43456
+ persist_routes="persistRoutes",
43457
+ persist_routes_duration=123,
43458
+ sns_notifications_enabled=False,
43459
+ tags=[CfnTag(
43460
+ key="key",
43461
+ value="value"
43462
+ )]
43463
+ )
41919
43464
  '''
41920
- result = self._values.get("local_gateway_id")
41921
- return typing.cast(typing.Optional[builtins.str], result)
43465
+ if __debug__:
43466
+ type_hints = typing.get_type_hints(_typecheckingstub__db9a1c3babbc82d0464e4dc5d03d23f14024cadfb4a9c0aa32f743c5968b354c)
43467
+ check_type(argname="argument amazon_side_asn", value=amazon_side_asn, expected_type=type_hints["amazon_side_asn"])
43468
+ check_type(argname="argument persist_routes", value=persist_routes, expected_type=type_hints["persist_routes"])
43469
+ check_type(argname="argument persist_routes_duration", value=persist_routes_duration, expected_type=type_hints["persist_routes_duration"])
43470
+ check_type(argname="argument sns_notifications_enabled", value=sns_notifications_enabled, expected_type=type_hints["sns_notifications_enabled"])
43471
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
43472
+ self._values: typing.Dict[builtins.str, typing.Any] = {
43473
+ "amazon_side_asn": amazon_side_asn,
43474
+ }
43475
+ if persist_routes is not None:
43476
+ self._values["persist_routes"] = persist_routes
43477
+ if persist_routes_duration is not None:
43478
+ self._values["persist_routes_duration"] = persist_routes_duration
43479
+ if sns_notifications_enabled is not None:
43480
+ self._values["sns_notifications_enabled"] = sns_notifications_enabled
43481
+ if tags is not None:
43482
+ self._values["tags"] = tags
41922
43483
 
41923
43484
  @builtins.property
41924
- def nat_gateway_id(self) -> typing.Optional[builtins.str]:
41925
- '''[IPv4 traffic only] The ID of a NAT gateway.
43485
+ def amazon_side_asn(self) -> jsii.Number:
43486
+ '''The Amazon-side ASN of the Route Server.
41926
43487
 
41927
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-natgatewayid
43488
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html#cfn-ec2-routeserver-amazonsideasn
41928
43489
  '''
41929
- result = self._values.get("nat_gateway_id")
41930
- return typing.cast(typing.Optional[builtins.str], result)
43490
+ result = self._values.get("amazon_side_asn")
43491
+ assert result is not None, "Required property 'amazon_side_asn' is missing"
43492
+ return typing.cast(jsii.Number, result)
41931
43493
 
41932
43494
  @builtins.property
41933
- def network_interface_id(self) -> typing.Optional[builtins.str]:
41934
- '''The ID of a network interface.
43495
+ def persist_routes(self) -> typing.Optional[builtins.str]:
43496
+ '''Whether to enable persistent routes.
41935
43497
 
41936
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-networkinterfaceid
43498
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html#cfn-ec2-routeserver-persistroutes
41937
43499
  '''
41938
- result = self._values.get("network_interface_id")
43500
+ result = self._values.get("persist_routes")
41939
43501
  return typing.cast(typing.Optional[builtins.str], result)
41940
43502
 
41941
43503
  @builtins.property
41942
- def transit_gateway_id(self) -> typing.Optional[builtins.str]:
41943
- '''The ID of a transit gateway.
43504
+ def persist_routes_duration(self) -> typing.Optional[jsii.Number]:
43505
+ '''The duration of persistent routes in minutes.
41944
43506
 
41945
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-transitgatewayid
43507
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html#cfn-ec2-routeserver-persistroutesduration
41946
43508
  '''
41947
- result = self._values.get("transit_gateway_id")
41948
- return typing.cast(typing.Optional[builtins.str], result)
43509
+ result = self._values.get("persist_routes_duration")
43510
+ return typing.cast(typing.Optional[jsii.Number], result)
41949
43511
 
41950
43512
  @builtins.property
41951
- def vpc_endpoint_id(self) -> typing.Optional[builtins.str]:
41952
- '''The ID of a VPC endpoint.
41953
-
41954
- Supported for Gateway Load Balancer endpoints only.
43513
+ def sns_notifications_enabled(
43514
+ self,
43515
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
43516
+ '''Whether to enable SNS notifications.
41955
43517
 
41956
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-vpcendpointid
43518
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html#cfn-ec2-routeserver-snsnotificationsenabled
41957
43519
  '''
41958
- result = self._values.get("vpc_endpoint_id")
41959
- return typing.cast(typing.Optional[builtins.str], result)
43520
+ result = self._values.get("sns_notifications_enabled")
43521
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
41960
43522
 
41961
43523
  @builtins.property
41962
- def vpc_peering_connection_id(self) -> typing.Optional[builtins.str]:
41963
- '''The ID of a VPC peering connection.
43524
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
43525
+ '''An array of key-value pairs to apply to this resource.
41964
43526
 
41965
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-route.html#cfn-ec2-route-vpcpeeringconnectionid
43527
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-ec2-routeserver.html#cfn-ec2-routeserver-tags
41966
43528
  '''
41967
- result = self._values.get("vpc_peering_connection_id")
41968
- return typing.cast(typing.Optional[builtins.str], result)
43529
+ result = self._values.get("tags")
43530
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
41969
43531
 
41970
43532
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
41971
43533
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -41974,7 +43536,7 @@ class CfnRouteProps:
41974
43536
  return not (rhs == self)
41975
43537
 
41976
43538
  def __repr__(self) -> str:
41977
- return "CfnRouteProps(%s)" % ", ".join(
43539
+ return "CfnRouteServerProps(%s)" % ", ".join(
41978
43540
  k + "=" + repr(v) for k, v in self._values.items()
41979
43541
  )
41980
43542
 
@@ -80558,6 +82120,16 @@ class InterfaceVpcEndpointAwsService(
80558
82120
  def MACIE(cls) -> "InterfaceVpcEndpointAwsService":
80559
82121
  return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "MACIE"))
80560
82122
 
82123
+ @jsii.python.classproperty
82124
+ @jsii.member(jsii_name="MAILMANAGER")
82125
+ def MAILMANAGER(cls) -> "InterfaceVpcEndpointAwsService":
82126
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "MAILMANAGER"))
82127
+
82128
+ @jsii.python.classproperty
82129
+ @jsii.member(jsii_name="MAILMANAGER_FIPS")
82130
+ def MAILMANAGER_FIPS(cls) -> "InterfaceVpcEndpointAwsService":
82131
+ return typing.cast("InterfaceVpcEndpointAwsService", jsii.sget(cls, "MAILMANAGER_FIPS"))
82132
+
80561
82133
  @jsii.python.classproperty
80562
82134
  @jsii.member(jsii_name="MAINFRAME_MODERNIZATION")
80563
82135
  def MAINFRAME_MODERNIZATION(cls) -> "InterfaceVpcEndpointAwsService":
@@ -100617,6 +102189,16 @@ __all__ = [
100617
102189
  "CfnPrefixListProps",
100618
102190
  "CfnRoute",
100619
102191
  "CfnRouteProps",
102192
+ "CfnRouteServer",
102193
+ "CfnRouteServerAssociation",
102194
+ "CfnRouteServerAssociationProps",
102195
+ "CfnRouteServerEndpoint",
102196
+ "CfnRouteServerEndpointProps",
102197
+ "CfnRouteServerPeer",
102198
+ "CfnRouteServerPeerProps",
102199
+ "CfnRouteServerPropagation",
102200
+ "CfnRouteServerPropagationProps",
102201
+ "CfnRouteServerProps",
100620
102202
  "CfnRouteTable",
100621
102203
  "CfnRouteTableProps",
100622
102204
  "CfnSecurityGroup",
@@ -103867,6 +105449,21 @@ def _typecheckingstub__9b0fb3dd7e11b3d77e5e684588da3e531072d536c01a1f2f8089cb89f
103867
105449
  """Type checking stubs"""
103868
105450
  pass
103869
105451
 
105452
+ def _typecheckingstub__cb5cfa1ad0a955752d0fe5cf1fa975e214907046a3adab82f42c2cb294897482(
105453
+ *,
105454
+ ena_srd_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
105455
+ ena_srd_udp_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInstance.EnaSrdUdpSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
105456
+ ) -> None:
105457
+ """Type checking stubs"""
105458
+ pass
105459
+
105460
+ def _typecheckingstub__2ca233cf2c335cfa3da294e921b5541acd4aaf5e78b3618e6108270995e3e826(
105461
+ *,
105462
+ ena_srd_udp_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
105463
+ ) -> None:
105464
+ """Type checking stubs"""
105465
+ pass
105466
+
103870
105467
  def _typecheckingstub__a5c9ea6a0fe6571a95aa17f5c0b6f90e2695fa23c1a38965ff092c2938757847(
103871
105468
  *,
103872
105469
  enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -103911,6 +105508,7 @@ def _typecheckingstub__34d8c3e0456d2764eb1c3d4b68e63d75d3e51811fe46a5cc1a3cd7a84
103911
105508
  associate_public_ip_address: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
103912
105509
  delete_on_termination: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
103913
105510
  description: typing.Optional[builtins.str] = None,
105511
+ ena_srd_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInstance.EnaSrdSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
103914
105512
  group_set: typing.Optional[typing.Sequence[builtins.str]] = None,
103915
105513
  ipv6_address_count: typing.Optional[jsii.Number] = None,
103916
105514
  ipv6_addresses: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnInstance.InstanceIpv6AddressProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -106305,6 +107903,272 @@ def _typecheckingstub__f90e7814d59b7c562ab4b24d54461eba6a4c88fbd5451ba2b2b0adf84
106305
107903
  """Type checking stubs"""
106306
107904
  pass
106307
107905
 
107906
+ def _typecheckingstub__e744a2467360e6327da0cb79726e11e01d594dbeec11f2982a422bcb176447d5(
107907
+ scope: _constructs_77d1e7e8.Construct,
107908
+ id: builtins.str,
107909
+ *,
107910
+ amazon_side_asn: jsii.Number,
107911
+ persist_routes: typing.Optional[builtins.str] = None,
107912
+ persist_routes_duration: typing.Optional[jsii.Number] = None,
107913
+ sns_notifications_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
107914
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
107915
+ ) -> None:
107916
+ """Type checking stubs"""
107917
+ pass
107918
+
107919
+ def _typecheckingstub__3d4e9ce25bdead6fc034e09d4bd133ca6d8a9bdb28edabd76818abeb5861c650(
107920
+ inspector: _TreeInspector_488e0dd5,
107921
+ ) -> None:
107922
+ """Type checking stubs"""
107923
+ pass
107924
+
107925
+ def _typecheckingstub__e93eb022fd962b1a573488d55ae2a6f533460dcd1478ae568a1ca2cbaec1166c(
107926
+ props: typing.Mapping[builtins.str, typing.Any],
107927
+ ) -> None:
107928
+ """Type checking stubs"""
107929
+ pass
107930
+
107931
+ def _typecheckingstub__e13de778bf88a0d2426e3072806feaf234141e06da104df8828fa31858466ede(
107932
+ value: jsii.Number,
107933
+ ) -> None:
107934
+ """Type checking stubs"""
107935
+ pass
107936
+
107937
+ def _typecheckingstub__4a44997a1e32efb135940b74f2a929e8036d94d6404f4bf5512259c997ca5c9e(
107938
+ value: typing.Optional[builtins.str],
107939
+ ) -> None:
107940
+ """Type checking stubs"""
107941
+ pass
107942
+
107943
+ def _typecheckingstub__b356730d4d3fb48506651734b873006a73e7e68636b664817f9430f6064743e2(
107944
+ value: typing.Optional[jsii.Number],
107945
+ ) -> None:
107946
+ """Type checking stubs"""
107947
+ pass
107948
+
107949
+ def _typecheckingstub__3fb35650e2c20c86ca3846527e1fbe136cb8034d9a94e7934e14e7c78eddeadb(
107950
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
107951
+ ) -> None:
107952
+ """Type checking stubs"""
107953
+ pass
107954
+
107955
+ def _typecheckingstub__2d586f2ad9d0305ceb1f3ece538490d14e9c96aeb12e951e59be8899a1412ea4(
107956
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
107957
+ ) -> None:
107958
+ """Type checking stubs"""
107959
+ pass
107960
+
107961
+ def _typecheckingstub__3e6189f73b644788c8019b72b4d8a2aa6c79c4d018333b9c657eba49644b2680(
107962
+ scope: _constructs_77d1e7e8.Construct,
107963
+ id: builtins.str,
107964
+ *,
107965
+ route_server_id: builtins.str,
107966
+ vpc_id: builtins.str,
107967
+ ) -> None:
107968
+ """Type checking stubs"""
107969
+ pass
107970
+
107971
+ def _typecheckingstub__6b36f7b91f0c35572aea114010d9abe5eb6819cc14bf7a83fd8eaae89d84c513(
107972
+ inspector: _TreeInspector_488e0dd5,
107973
+ ) -> None:
107974
+ """Type checking stubs"""
107975
+ pass
107976
+
107977
+ def _typecheckingstub__2061cfa69aa80401640d0ebfc6ecb03d4710d83371735dfda34e6b1a112f4b61(
107978
+ props: typing.Mapping[builtins.str, typing.Any],
107979
+ ) -> None:
107980
+ """Type checking stubs"""
107981
+ pass
107982
+
107983
+ def _typecheckingstub__a30a1dfa1b5b5a2238f1ea3896d581c69df96b4fc842c1511df6b0d0d8bfc0a5(
107984
+ value: builtins.str,
107985
+ ) -> None:
107986
+ """Type checking stubs"""
107987
+ pass
107988
+
107989
+ def _typecheckingstub__b5c4a6f8b540144e4bab65f284f718719b1d99a890e26010fe631a8f9b8d6c09(
107990
+ value: builtins.str,
107991
+ ) -> None:
107992
+ """Type checking stubs"""
107993
+ pass
107994
+
107995
+ def _typecheckingstub__486c86fa481692f6a9be14621c56393d4598ea52756029970e390e215a9f4e41(
107996
+ *,
107997
+ route_server_id: builtins.str,
107998
+ vpc_id: builtins.str,
107999
+ ) -> None:
108000
+ """Type checking stubs"""
108001
+ pass
108002
+
108003
+ def _typecheckingstub__bc6285d87d5119c3a92dc59ed8148d7d11adb84676a3fb4a32f638fcab96de86(
108004
+ scope: _constructs_77d1e7e8.Construct,
108005
+ id: builtins.str,
108006
+ *,
108007
+ route_server_id: builtins.str,
108008
+ subnet_id: builtins.str,
108009
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
108010
+ ) -> None:
108011
+ """Type checking stubs"""
108012
+ pass
108013
+
108014
+ def _typecheckingstub__1646f051eeeb9accd22a953e4c76242751791c83c2230b011e8bf14a01edee0b(
108015
+ inspector: _TreeInspector_488e0dd5,
108016
+ ) -> None:
108017
+ """Type checking stubs"""
108018
+ pass
108019
+
108020
+ def _typecheckingstub__bcffaecc222403f9f7f3c1b77c8038cdf2a159c437c841195d90470dfcd48aee(
108021
+ props: typing.Mapping[builtins.str, typing.Any],
108022
+ ) -> None:
108023
+ """Type checking stubs"""
108024
+ pass
108025
+
108026
+ def _typecheckingstub__d8293a15458c2f707e5aad3c3e7963f25efd74f21e1827293cc0d47398b11f95(
108027
+ value: builtins.str,
108028
+ ) -> None:
108029
+ """Type checking stubs"""
108030
+ pass
108031
+
108032
+ def _typecheckingstub__eac409477ed07195dcf6725a9d25a19057a6b1c5b51f681223f2cab65c4f598a(
108033
+ value: builtins.str,
108034
+ ) -> None:
108035
+ """Type checking stubs"""
108036
+ pass
108037
+
108038
+ def _typecheckingstub__78be2aa7fed6300c7b7b98f999bd9f022dcc25e5d7385d9c47220e274abcbc51(
108039
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
108040
+ ) -> None:
108041
+ """Type checking stubs"""
108042
+ pass
108043
+
108044
+ def _typecheckingstub__15c8f9c8c8d61903f1fbf4887a562f523716b17fed0a8b0f9948078c468b4e0d(
108045
+ *,
108046
+ route_server_id: builtins.str,
108047
+ subnet_id: builtins.str,
108048
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
108049
+ ) -> None:
108050
+ """Type checking stubs"""
108051
+ pass
108052
+
108053
+ def _typecheckingstub__1a1790ead48cbfa3b30bad1ac0c338d415fa3cdaeb20762a23ab6b7030c2266d(
108054
+ scope: _constructs_77d1e7e8.Construct,
108055
+ id: builtins.str,
108056
+ *,
108057
+ bgp_options: typing.Union[_IResolvable_da3f097b, typing.Union[CfnRouteServerPeer.BgpOptionsProperty, typing.Dict[builtins.str, typing.Any]]],
108058
+ peer_address: builtins.str,
108059
+ route_server_endpoint_id: builtins.str,
108060
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
108061
+ ) -> None:
108062
+ """Type checking stubs"""
108063
+ pass
108064
+
108065
+ def _typecheckingstub__f16ce6f04d507826742aed952b4ee08df1a7f5e094ef81a6b1ff59953ab6d033(
108066
+ inspector: _TreeInspector_488e0dd5,
108067
+ ) -> None:
108068
+ """Type checking stubs"""
108069
+ pass
108070
+
108071
+ def _typecheckingstub__324e991216c37d43fa3e580d243adc940b2ffe28390731ba008a2993c1eeaf46(
108072
+ props: typing.Mapping[builtins.str, typing.Any],
108073
+ ) -> None:
108074
+ """Type checking stubs"""
108075
+ pass
108076
+
108077
+ def _typecheckingstub__14edeb8cd14c52bec2920709e09f35b87f1095d4eeb9788f5ace78bf28861ba3(
108078
+ value: typing.Union[_IResolvable_da3f097b, CfnRouteServerPeer.BgpOptionsProperty],
108079
+ ) -> None:
108080
+ """Type checking stubs"""
108081
+ pass
108082
+
108083
+ def _typecheckingstub__963224c073f81d69053b59f68248587a5cf06a83a818d216b7f2539be11c5eac(
108084
+ value: builtins.str,
108085
+ ) -> None:
108086
+ """Type checking stubs"""
108087
+ pass
108088
+
108089
+ def _typecheckingstub__db34b963306745d8d939b30678b68f972ef95f5f538d76ceb677355955f800be(
108090
+ value: builtins.str,
108091
+ ) -> None:
108092
+ """Type checking stubs"""
108093
+ pass
108094
+
108095
+ def _typecheckingstub__405a1707b0a270b215856d8cb1642bed0f93815e2b9a8382ed83b8f481a652c5(
108096
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
108097
+ ) -> None:
108098
+ """Type checking stubs"""
108099
+ pass
108100
+
108101
+ def _typecheckingstub__d3762043f4004483da78ddbfb131e0b34dfcfe25c8154498f0b6c91bfe10ef28(
108102
+ *,
108103
+ peer_asn: typing.Optional[jsii.Number] = None,
108104
+ peer_liveness_detection: typing.Optional[builtins.str] = None,
108105
+ ) -> None:
108106
+ """Type checking stubs"""
108107
+ pass
108108
+
108109
+ def _typecheckingstub__41ecfe37cb908f7a1db9eac7ef3a64c49c0ee3fdade6d6c294d52f6341d911e3(
108110
+ *,
108111
+ bgp_options: typing.Union[_IResolvable_da3f097b, typing.Union[CfnRouteServerPeer.BgpOptionsProperty, typing.Dict[builtins.str, typing.Any]]],
108112
+ peer_address: builtins.str,
108113
+ route_server_endpoint_id: builtins.str,
108114
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
108115
+ ) -> None:
108116
+ """Type checking stubs"""
108117
+ pass
108118
+
108119
+ def _typecheckingstub__0d139e896cf279d926dd7b03bd4605d62bf6e6d336cab83c19f03f115f11332f(
108120
+ scope: _constructs_77d1e7e8.Construct,
108121
+ id: builtins.str,
108122
+ *,
108123
+ route_server_id: builtins.str,
108124
+ route_table_id: builtins.str,
108125
+ ) -> None:
108126
+ """Type checking stubs"""
108127
+ pass
108128
+
108129
+ def _typecheckingstub__dcdd387ffc37afa195a7e25d5c44536188638f43cf7f40cca0453fa46b860ce5(
108130
+ inspector: _TreeInspector_488e0dd5,
108131
+ ) -> None:
108132
+ """Type checking stubs"""
108133
+ pass
108134
+
108135
+ def _typecheckingstub__2dbcf0d472b0cc21729046719e317f1e14c0110825faf1f017c05e237f61aeba(
108136
+ props: typing.Mapping[builtins.str, typing.Any],
108137
+ ) -> None:
108138
+ """Type checking stubs"""
108139
+ pass
108140
+
108141
+ def _typecheckingstub__a1d3bdf36fee55ea70a83f37033fadc68a67310d7a4f2d403cb0ad237e57c622(
108142
+ value: builtins.str,
108143
+ ) -> None:
108144
+ """Type checking stubs"""
108145
+ pass
108146
+
108147
+ def _typecheckingstub__7fc992ffac821b5511c01446ca80e457d3120cdf8e1bbe982c1dcd5b3bf2a9e0(
108148
+ value: builtins.str,
108149
+ ) -> None:
108150
+ """Type checking stubs"""
108151
+ pass
108152
+
108153
+ def _typecheckingstub__4f93feed063aa24e3ccac40eb1b470367c4be09679255ec2cc2d4589ffd2f3b0(
108154
+ *,
108155
+ route_server_id: builtins.str,
108156
+ route_table_id: builtins.str,
108157
+ ) -> None:
108158
+ """Type checking stubs"""
108159
+ pass
108160
+
108161
+ def _typecheckingstub__db9a1c3babbc82d0464e4dc5d03d23f14024cadfb4a9c0aa32f743c5968b354c(
108162
+ *,
108163
+ amazon_side_asn: jsii.Number,
108164
+ persist_routes: typing.Optional[builtins.str] = None,
108165
+ persist_routes_duration: typing.Optional[jsii.Number] = None,
108166
+ sns_notifications_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
108167
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
108168
+ ) -> None:
108169
+ """Type checking stubs"""
108170
+ pass
108171
+
106308
108172
  def _typecheckingstub__93a1e7c740b947cc510161b87d4afa4b057e501067ea1f7ef24fdb6a8ab5614c(
106309
108173
  scope: _constructs_77d1e7e8.Construct,
106310
108174
  id: builtins.str,