aws-cdk-lib 2.200.2__py3-none-any.whl → 2.201.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 +105 -13
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.200.2.jsii.tgz → aws-cdk-lib@2.201.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +2 -3
  5. aws_cdk/aws_amplify/__init__.py +3 -3
  6. aws_cdk/aws_apigateway/__init__.py +21 -17
  7. aws_cdk/aws_apigatewayv2/__init__.py +87 -45
  8. aws_cdk/aws_appconfig/__init__.py +38 -1
  9. aws_cdk/aws_appsync/__init__.py +10 -10
  10. aws_cdk/aws_athena/__init__.py +226 -0
  11. aws_cdk/aws_autoscaling/__init__.py +38 -37
  12. aws_cdk/aws_bedrock/__init__.py +5108 -1571
  13. aws_cdk/aws_cloudfront/__init__.py +8 -0
  14. aws_cdk/aws_cloudtrail/__init__.py +178 -0
  15. aws_cdk/aws_cloudwatch/__init__.py +7 -3
  16. aws_cdk/aws_codepipeline_actions/__init__.py +746 -0
  17. aws_cdk/aws_connect/__init__.py +5 -5
  18. aws_cdk/aws_customerprofiles/__init__.py +377 -8
  19. aws_cdk/aws_datasync/__init__.py +189 -160
  20. aws_cdk/aws_datazone/__init__.py +512 -170
  21. aws_cdk/aws_deadline/__init__.py +32 -4
  22. aws_cdk/aws_dsql/__init__.py +150 -10
  23. aws_cdk/aws_ec2/__init__.py +793 -56
  24. aws_cdk/aws_ecs/__init__.py +94 -11
  25. aws_cdk/aws_efs/__init__.py +92 -12
  26. aws_cdk/aws_eks/__init__.py +166 -19
  27. aws_cdk/aws_elasticloadbalancingv2/__init__.py +2 -2
  28. aws_cdk/aws_emr/__init__.py +10 -4
  29. aws_cdk/aws_entityresolution/__init__.py +25 -10
  30. aws_cdk/aws_evs/__init__.py +2204 -0
  31. aws_cdk/aws_fsx/__init__.py +7 -7
  32. aws_cdk/aws_lambda/__init__.py +409 -32
  33. aws_cdk/aws_lightsail/__init__.py +17 -13
  34. aws_cdk/aws_logs/__init__.py +1 -0
  35. aws_cdk/aws_networkfirewall/__init__.py +562 -0
  36. aws_cdk/aws_opensearchservice/__init__.py +3 -3
  37. aws_cdk/aws_opsworkscm/__init__.py +9 -43
  38. aws_cdk/aws_rds/__init__.py +284 -87
  39. aws_cdk/aws_s3/__init__.py +23 -15
  40. aws_cdk/aws_sagemaker/__init__.py +223 -3
  41. aws_cdk/aws_securityhub/__init__.py +18 -34
  42. aws_cdk/aws_ssm/__init__.py +83 -1
  43. aws_cdk/aws_stepfunctions/__init__.py +235 -45
  44. aws_cdk/aws_synthetics/__init__.py +74 -0
  45. aws_cdk/aws_transfer/__init__.py +3 -3
  46. aws_cdk/aws_verifiedpermissions/__init__.py +17 -6
  47. aws_cdk/aws_wafv2/__init__.py +39 -2
  48. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/METADATA +2 -2
  49. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/RECORD +53 -52
  50. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/LICENSE +0 -0
  51. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/NOTICE +0 -0
  52. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/WHEEL +0 -0
  53. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.201.0.dist-info}/top_level.txt +0 -0
@@ -2183,6 +2183,7 @@ class CfnLoggingConfiguration(
2183
2183
  ),
2184
2184
 
2185
2185
  # the properties below are optional
2186
+ enable_monitoring_dashboard=False,
2186
2187
  firewall_name="firewallName"
2187
2188
  )
2188
2189
  '''
@@ -2194,6 +2195,7 @@ class CfnLoggingConfiguration(
2194
2195
  *,
2195
2196
  firewall_arn: builtins.str,
2196
2197
  logging_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnLoggingConfiguration.LoggingConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
2198
+ enable_monitoring_dashboard: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2197
2199
  firewall_name: typing.Optional[builtins.str] = None,
2198
2200
  ) -> None:
2199
2201
  '''
@@ -2201,6 +2203,7 @@ class CfnLoggingConfiguration(
2201
2203
  :param id: Construct identifier for this resource (unique in its scope).
2202
2204
  :param firewall_arn: The Amazon Resource Name (ARN) of the ``Firewall`` that the logging configuration is associated with. You can't change the firewall specification after you create the logging configuration.
2203
2205
  :param logging_configuration: Defines how AWS Network Firewall performs logging for a ``Firewall`` .
2206
+ :param enable_monitoring_dashboard:
2204
2207
  :param firewall_name: The name of the firewall that the logging configuration is associated with. You can't change the firewall specification after you create the logging configuration.
2205
2208
  '''
2206
2209
  if __debug__:
@@ -2210,6 +2213,7 @@ class CfnLoggingConfiguration(
2210
2213
  props = CfnLoggingConfigurationProps(
2211
2214
  firewall_arn=firewall_arn,
2212
2215
  logging_configuration=logging_configuration,
2216
+ enable_monitoring_dashboard=enable_monitoring_dashboard,
2213
2217
  firewall_name=firewall_name,
2214
2218
  )
2215
2219
 
@@ -2281,6 +2285,23 @@ class CfnLoggingConfiguration(
2281
2285
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2282
2286
  jsii.set(self, "loggingConfiguration", value) # pyright: ignore[reportArgumentType]
2283
2287
 
2288
+ @builtins.property
2289
+ @jsii.member(jsii_name="enableMonitoringDashboard")
2290
+ def enable_monitoring_dashboard(
2291
+ self,
2292
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
2293
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], jsii.get(self, "enableMonitoringDashboard"))
2294
+
2295
+ @enable_monitoring_dashboard.setter
2296
+ def enable_monitoring_dashboard(
2297
+ self,
2298
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
2299
+ ) -> None:
2300
+ if __debug__:
2301
+ type_hints = typing.get_type_hints(_typecheckingstub__cd9d520dc417896b42fea56a33166ad81596a611f62bb71b7dca2be701c49cbe)
2302
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2303
+ jsii.set(self, "enableMonitoringDashboard", value) # pyright: ignore[reportArgumentType]
2304
+
2284
2305
  @builtins.property
2285
2306
  @jsii.member(jsii_name="firewallName")
2286
2307
  def firewall_name(self) -> typing.Optional[builtins.str]:
@@ -2487,6 +2508,7 @@ class CfnLoggingConfiguration(
2487
2508
  name_mapping={
2488
2509
  "firewall_arn": "firewallArn",
2489
2510
  "logging_configuration": "loggingConfiguration",
2511
+ "enable_monitoring_dashboard": "enableMonitoringDashboard",
2490
2512
  "firewall_name": "firewallName",
2491
2513
  },
2492
2514
  )
@@ -2496,12 +2518,14 @@ class CfnLoggingConfigurationProps:
2496
2518
  *,
2497
2519
  firewall_arn: builtins.str,
2498
2520
  logging_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnLoggingConfiguration.LoggingConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
2521
+ enable_monitoring_dashboard: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
2499
2522
  firewall_name: typing.Optional[builtins.str] = None,
2500
2523
  ) -> None:
2501
2524
  '''Properties for defining a ``CfnLoggingConfiguration``.
2502
2525
 
2503
2526
  :param firewall_arn: The Amazon Resource Name (ARN) of the ``Firewall`` that the logging configuration is associated with. You can't change the firewall specification after you create the logging configuration.
2504
2527
  :param logging_configuration: Defines how AWS Network Firewall performs logging for a ``Firewall`` .
2528
+ :param enable_monitoring_dashboard:
2505
2529
  :param firewall_name: The name of the firewall that the logging configuration is associated with. You can't change the firewall specification after you create the logging configuration.
2506
2530
 
2507
2531
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-loggingconfiguration.html
@@ -2526,6 +2550,7 @@ class CfnLoggingConfigurationProps:
2526
2550
  ),
2527
2551
 
2528
2552
  # the properties below are optional
2553
+ enable_monitoring_dashboard=False,
2529
2554
  firewall_name="firewallName"
2530
2555
  )
2531
2556
  '''
@@ -2533,11 +2558,14 @@ class CfnLoggingConfigurationProps:
2533
2558
  type_hints = typing.get_type_hints(_typecheckingstub__7dab36772798ea19c1d2e2f1e86d2099a88806994c157c7bd4e0d62178ab9369)
2534
2559
  check_type(argname="argument firewall_arn", value=firewall_arn, expected_type=type_hints["firewall_arn"])
2535
2560
  check_type(argname="argument logging_configuration", value=logging_configuration, expected_type=type_hints["logging_configuration"])
2561
+ check_type(argname="argument enable_monitoring_dashboard", value=enable_monitoring_dashboard, expected_type=type_hints["enable_monitoring_dashboard"])
2536
2562
  check_type(argname="argument firewall_name", value=firewall_name, expected_type=type_hints["firewall_name"])
2537
2563
  self._values: typing.Dict[builtins.str, typing.Any] = {
2538
2564
  "firewall_arn": firewall_arn,
2539
2565
  "logging_configuration": logging_configuration,
2540
2566
  }
2567
+ if enable_monitoring_dashboard is not None:
2568
+ self._values["enable_monitoring_dashboard"] = enable_monitoring_dashboard
2541
2569
  if firewall_name is not None:
2542
2570
  self._values["firewall_name"] = firewall_name
2543
2571
 
@@ -2565,6 +2593,16 @@ class CfnLoggingConfigurationProps:
2565
2593
  assert result is not None, "Required property 'logging_configuration' is missing"
2566
2594
  return typing.cast(typing.Union[_IResolvable_da3f097b, CfnLoggingConfiguration.LoggingConfigurationProperty], result)
2567
2595
 
2596
+ @builtins.property
2597
+ def enable_monitoring_dashboard(
2598
+ self,
2599
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
2600
+ '''
2601
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-loggingconfiguration.html#cfn-networkfirewall-loggingconfiguration-enablemonitoringdashboard
2602
+ '''
2603
+ result = self._values.get("enable_monitoring_dashboard")
2604
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
2605
+
2568
2606
  @builtins.property
2569
2607
  def firewall_name(self) -> typing.Optional[builtins.str]:
2570
2608
  '''The name of the firewall that the logging configuration is associated with.
@@ -6434,6 +6472,446 @@ class CfnTLSInspectionConfigurationProps:
6434
6472
  )
6435
6473
 
6436
6474
 
6475
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
6476
+ class CfnVpcEndpointAssociation(
6477
+ _CfnResource_9df397a6,
6478
+ metaclass=jsii.JSIIMeta,
6479
+ jsii_type="aws-cdk-lib.aws_networkfirewall.CfnVpcEndpointAssociation",
6480
+ ):
6481
+ '''A VPC endpoint association defines a single subnet to use for a firewall endpoint for a ``Firewall`` .
6482
+
6483
+ You can define VPC endpoint associations only in the Availability Zones that already have a subnet mapping defined in the ``Firewall`` resource.
6484
+ .. epigraph::
6485
+
6486
+ You can retrieve the list of Availability Zones that are available for use by calling ``DescribeFirewallMetadata`` .
6487
+
6488
+ To manage firewall endpoints, first, in the ``Firewall`` specification, you specify a single VPC and one subnet for each of the Availability Zones where you want to use the firewall. Then you can define additional endpoints as VPC endpoint associations.
6489
+
6490
+ You can use VPC endpoint associations to expand the protections of the firewall as follows:
6491
+
6492
+ - *Protect multiple VPCs with a single firewall* - You can use the firewall to protect other VPCs, either in your account or in accounts where the firewall is shared. You can only specify Availability Zones that already have a firewall endpoint defined in the ``Firewall`` subnet mappings.
6493
+ - *Define multiple firewall endpoints for a VPC in an Availability Zone* - You can create additional firewall endpoints for the VPC that you have defined in the firewall, in any Availability Zone that already has an endpoint defined in the ``Firewall`` subnet mappings. You can create multiple VPC endpoint associations for any other VPC where you use the firewall.
6494
+
6495
+ You can use AWS Resource Access Manager to share a ``Firewall`` that you own with other accounts, which gives them the ability to use the firewall to create VPC endpoint associations. For information about sharing a firewall, see ``PutResourcePolicy`` in this guide and see `Sharing Network Firewall resources <https://docs.aws.amazon.com/network-firewall/latest/developerguide/sharing.html>`_ in the *AWS Network Firewall Developer Guide* .
6496
+
6497
+ The status of the VPC endpoint association, which indicates whether it's ready to filter network traffic, is provided in the corresponding ``VpcEndpointAssociationStatus`` . You can retrieve both the association and its status by calling ``DescribeVpcEndpointAssociation`` .
6498
+
6499
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html
6500
+ :cloudformationResource: AWS::NetworkFirewall::VpcEndpointAssociation
6501
+ :exampleMetadata: fixture=_generated
6502
+
6503
+ Example::
6504
+
6505
+ # The code below shows an example of how to instantiate this type.
6506
+ # The values are placeholders you should change.
6507
+ from aws_cdk import aws_networkfirewall as networkfirewall
6508
+
6509
+ cfn_vpc_endpoint_association = networkfirewall.CfnVpcEndpointAssociation(self, "MyCfnVpcEndpointAssociation",
6510
+ firewall_arn="firewallArn",
6511
+ subnet_mapping=networkfirewall.CfnVpcEndpointAssociation.SubnetMappingProperty(
6512
+ subnet_id="subnetId",
6513
+
6514
+ # the properties below are optional
6515
+ ip_address_type="ipAddressType"
6516
+ ),
6517
+ vpc_id="vpcId",
6518
+
6519
+ # the properties below are optional
6520
+ description="description",
6521
+ tags=[CfnTag(
6522
+ key="key",
6523
+ value="value"
6524
+ )]
6525
+ )
6526
+ '''
6527
+
6528
+ def __init__(
6529
+ self,
6530
+ scope: _constructs_77d1e7e8.Construct,
6531
+ id: builtins.str,
6532
+ *,
6533
+ firewall_arn: builtins.str,
6534
+ subnet_mapping: typing.Union[_IResolvable_da3f097b, typing.Union["CfnVpcEndpointAssociation.SubnetMappingProperty", typing.Dict[builtins.str, typing.Any]]],
6535
+ vpc_id: builtins.str,
6536
+ description: typing.Optional[builtins.str] = None,
6537
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
6538
+ ) -> None:
6539
+ '''
6540
+ :param scope: Scope in which this resource is defined.
6541
+ :param id: Construct identifier for this resource (unique in its scope).
6542
+ :param firewall_arn: The Amazon Resource Name (ARN) of the firewall.
6543
+ :param subnet_mapping: The ID for a subnet that's used in an association with a firewall. This is used in ``CreateFirewall`` , ``AssociateSubnets`` , and ``CreateVpcEndpointAssociation`` . AWS Network Firewall creates an instance of the associated firewall in each subnet that you specify, to filter traffic in the subnet's Availability Zone.
6544
+ :param vpc_id: The unique identifier of the VPC for the endpoint association.
6545
+ :param description: A description of the VPC endpoint association.
6546
+ :param tags: The key:value pairs to associate with the resource.
6547
+ '''
6548
+ if __debug__:
6549
+ type_hints = typing.get_type_hints(_typecheckingstub__0573bf1b4145f0cb77953642be7dcead4ba79ff19313c048d55d52f50b71e1b3)
6550
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
6551
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
6552
+ props = CfnVpcEndpointAssociationProps(
6553
+ firewall_arn=firewall_arn,
6554
+ subnet_mapping=subnet_mapping,
6555
+ vpc_id=vpc_id,
6556
+ description=description,
6557
+ tags=tags,
6558
+ )
6559
+
6560
+ jsii.create(self.__class__, self, [scope, id, props])
6561
+
6562
+ @jsii.member(jsii_name="inspect")
6563
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
6564
+ '''Examines the CloudFormation resource and discloses attributes.
6565
+
6566
+ :param inspector: tree inspector to collect and process attributes.
6567
+ '''
6568
+ if __debug__:
6569
+ type_hints = typing.get_type_hints(_typecheckingstub__65d7c392a601d79f2fd4192b7743a475440dc80e37155fc4e745f070fec7a4ac)
6570
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
6571
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
6572
+
6573
+ @jsii.member(jsii_name="renderProperties")
6574
+ def _render_properties(
6575
+ self,
6576
+ props: typing.Mapping[builtins.str, typing.Any],
6577
+ ) -> typing.Mapping[builtins.str, typing.Any]:
6578
+ '''
6579
+ :param props: -
6580
+ '''
6581
+ if __debug__:
6582
+ type_hints = typing.get_type_hints(_typecheckingstub__92933d91056f4ba3495b844f1c559970dc539ea1af9552b31329e79d5d06e036)
6583
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
6584
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
6585
+
6586
+ @jsii.python.classproperty
6587
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
6588
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
6589
+ '''The CloudFormation resource type name for this resource class.'''
6590
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
6591
+
6592
+ @builtins.property
6593
+ @jsii.member(jsii_name="attrEndpointId")
6594
+ def attr_endpoint_id(self) -> builtins.str:
6595
+ '''An endpoint Id.
6596
+
6597
+ :cloudformationAttribute: EndpointId
6598
+ '''
6599
+ return typing.cast(builtins.str, jsii.get(self, "attrEndpointId"))
6600
+
6601
+ @builtins.property
6602
+ @jsii.member(jsii_name="attrVpcEndpointAssociationArn")
6603
+ def attr_vpc_endpoint_association_arn(self) -> builtins.str:
6604
+ '''The Amazon Resource Name (ARN) of a VPC endpoint association.
6605
+
6606
+ :cloudformationAttribute: VpcEndpointAssociationArn
6607
+ '''
6608
+ return typing.cast(builtins.str, jsii.get(self, "attrVpcEndpointAssociationArn"))
6609
+
6610
+ @builtins.property
6611
+ @jsii.member(jsii_name="attrVpcEndpointAssociationId")
6612
+ def attr_vpc_endpoint_association_id(self) -> builtins.str:
6613
+ '''The unique identifier of the VPC endpoint association.
6614
+
6615
+ :cloudformationAttribute: VpcEndpointAssociationId
6616
+ '''
6617
+ return typing.cast(builtins.str, jsii.get(self, "attrVpcEndpointAssociationId"))
6618
+
6619
+ @builtins.property
6620
+ @jsii.member(jsii_name="cdkTagManager")
6621
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
6622
+ '''Tag Manager which manages the tags for this resource.'''
6623
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
6624
+
6625
+ @builtins.property
6626
+ @jsii.member(jsii_name="cfnProperties")
6627
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
6628
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
6629
+
6630
+ @builtins.property
6631
+ @jsii.member(jsii_name="firewallArn")
6632
+ def firewall_arn(self) -> builtins.str:
6633
+ '''The Amazon Resource Name (ARN) of the firewall.'''
6634
+ return typing.cast(builtins.str, jsii.get(self, "firewallArn"))
6635
+
6636
+ @firewall_arn.setter
6637
+ def firewall_arn(self, value: builtins.str) -> None:
6638
+ if __debug__:
6639
+ type_hints = typing.get_type_hints(_typecheckingstub__4873642090d846acb67b83d329a7b6809d25db02946e5fd84612c726b796b3e3)
6640
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6641
+ jsii.set(self, "firewallArn", value) # pyright: ignore[reportArgumentType]
6642
+
6643
+ @builtins.property
6644
+ @jsii.member(jsii_name="subnetMapping")
6645
+ def subnet_mapping(
6646
+ self,
6647
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnVpcEndpointAssociation.SubnetMappingProperty"]:
6648
+ '''The ID for a subnet that's used in an association with a firewall.'''
6649
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnVpcEndpointAssociation.SubnetMappingProperty"], jsii.get(self, "subnetMapping"))
6650
+
6651
+ @subnet_mapping.setter
6652
+ def subnet_mapping(
6653
+ self,
6654
+ value: typing.Union[_IResolvable_da3f097b, "CfnVpcEndpointAssociation.SubnetMappingProperty"],
6655
+ ) -> None:
6656
+ if __debug__:
6657
+ type_hints = typing.get_type_hints(_typecheckingstub__a3d9b0b82919d3ce70488dc76e2455ae08bd18480a9794afad69806d772cd593)
6658
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6659
+ jsii.set(self, "subnetMapping", value) # pyright: ignore[reportArgumentType]
6660
+
6661
+ @builtins.property
6662
+ @jsii.member(jsii_name="vpcId")
6663
+ def vpc_id(self) -> builtins.str:
6664
+ '''The unique identifier of the VPC for the endpoint association.'''
6665
+ return typing.cast(builtins.str, jsii.get(self, "vpcId"))
6666
+
6667
+ @vpc_id.setter
6668
+ def vpc_id(self, value: builtins.str) -> None:
6669
+ if __debug__:
6670
+ type_hints = typing.get_type_hints(_typecheckingstub__ebc60917207a96abc5156cbba4fef32ab70bea3895d16bee96406b9486bc0767)
6671
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6672
+ jsii.set(self, "vpcId", value) # pyright: ignore[reportArgumentType]
6673
+
6674
+ @builtins.property
6675
+ @jsii.member(jsii_name="description")
6676
+ def description(self) -> typing.Optional[builtins.str]:
6677
+ '''A description of the VPC endpoint association.'''
6678
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "description"))
6679
+
6680
+ @description.setter
6681
+ def description(self, value: typing.Optional[builtins.str]) -> None:
6682
+ if __debug__:
6683
+ type_hints = typing.get_type_hints(_typecheckingstub__64391adefe7631ddc6978ebdc3e7251c31e95e8ed23e78e1c1e9d7261fa16f80)
6684
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6685
+ jsii.set(self, "description", value) # pyright: ignore[reportArgumentType]
6686
+
6687
+ @builtins.property
6688
+ @jsii.member(jsii_name="tags")
6689
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
6690
+ '''The key:value pairs to associate with the resource.'''
6691
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
6692
+
6693
+ @tags.setter
6694
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
6695
+ if __debug__:
6696
+ type_hints = typing.get_type_hints(_typecheckingstub__c17d9f2411e238295a7de2e84411c37ec368c1d40468f81aec3ce8b756fcc4a2)
6697
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
6698
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
6699
+
6700
+ @jsii.data_type(
6701
+ jsii_type="aws-cdk-lib.aws_networkfirewall.CfnVpcEndpointAssociation.SubnetMappingProperty",
6702
+ jsii_struct_bases=[],
6703
+ name_mapping={"subnet_id": "subnetId", "ip_address_type": "ipAddressType"},
6704
+ )
6705
+ class SubnetMappingProperty:
6706
+ def __init__(
6707
+ self,
6708
+ *,
6709
+ subnet_id: builtins.str,
6710
+ ip_address_type: typing.Optional[builtins.str] = None,
6711
+ ) -> None:
6712
+ '''The ID for a subnet that's used in an association with a firewall.
6713
+
6714
+ This is used in ``CreateFirewall`` , ``AssociateSubnets`` , and ``CreateVpcEndpointAssociation`` . AWS Network Firewall creates an instance of the associated firewall in each subnet that you specify, to filter traffic in the subnet's Availability Zone.
6715
+
6716
+ :param subnet_id: The unique identifier for the subnet.
6717
+ :param ip_address_type: The subnet's IP address type. You can't change the IP address type after you create the subnet.
6718
+
6719
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-vpcendpointassociation-subnetmapping.html
6720
+ :exampleMetadata: fixture=_generated
6721
+
6722
+ Example::
6723
+
6724
+ # The code below shows an example of how to instantiate this type.
6725
+ # The values are placeholders you should change.
6726
+ from aws_cdk import aws_networkfirewall as networkfirewall
6727
+
6728
+ subnet_mapping_property = networkfirewall.CfnVpcEndpointAssociation.SubnetMappingProperty(
6729
+ subnet_id="subnetId",
6730
+
6731
+ # the properties below are optional
6732
+ ip_address_type="ipAddressType"
6733
+ )
6734
+ '''
6735
+ if __debug__:
6736
+ type_hints = typing.get_type_hints(_typecheckingstub__ed6e084870d225a53477b08097053cc5b851f59b0c1d2ac3ce50dcb613b85015)
6737
+ check_type(argname="argument subnet_id", value=subnet_id, expected_type=type_hints["subnet_id"])
6738
+ check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
6739
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6740
+ "subnet_id": subnet_id,
6741
+ }
6742
+ if ip_address_type is not None:
6743
+ self._values["ip_address_type"] = ip_address_type
6744
+
6745
+ @builtins.property
6746
+ def subnet_id(self) -> builtins.str:
6747
+ '''The unique identifier for the subnet.
6748
+
6749
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-vpcendpointassociation-subnetmapping.html#cfn-networkfirewall-vpcendpointassociation-subnetmapping-subnetid
6750
+ '''
6751
+ result = self._values.get("subnet_id")
6752
+ assert result is not None, "Required property 'subnet_id' is missing"
6753
+ return typing.cast(builtins.str, result)
6754
+
6755
+ @builtins.property
6756
+ def ip_address_type(self) -> typing.Optional[builtins.str]:
6757
+ '''The subnet's IP address type.
6758
+
6759
+ You can't change the IP address type after you create the subnet.
6760
+
6761
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-vpcendpointassociation-subnetmapping.html#cfn-networkfirewall-vpcendpointassociation-subnetmapping-ipaddresstype
6762
+ '''
6763
+ result = self._values.get("ip_address_type")
6764
+ return typing.cast(typing.Optional[builtins.str], result)
6765
+
6766
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6767
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6768
+
6769
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6770
+ return not (rhs == self)
6771
+
6772
+ def __repr__(self) -> str:
6773
+ return "SubnetMappingProperty(%s)" % ", ".join(
6774
+ k + "=" + repr(v) for k, v in self._values.items()
6775
+ )
6776
+
6777
+
6778
+ @jsii.data_type(
6779
+ jsii_type="aws-cdk-lib.aws_networkfirewall.CfnVpcEndpointAssociationProps",
6780
+ jsii_struct_bases=[],
6781
+ name_mapping={
6782
+ "firewall_arn": "firewallArn",
6783
+ "subnet_mapping": "subnetMapping",
6784
+ "vpc_id": "vpcId",
6785
+ "description": "description",
6786
+ "tags": "tags",
6787
+ },
6788
+ )
6789
+ class CfnVpcEndpointAssociationProps:
6790
+ def __init__(
6791
+ self,
6792
+ *,
6793
+ firewall_arn: builtins.str,
6794
+ subnet_mapping: typing.Union[_IResolvable_da3f097b, typing.Union[CfnVpcEndpointAssociation.SubnetMappingProperty, typing.Dict[builtins.str, typing.Any]]],
6795
+ vpc_id: builtins.str,
6796
+ description: typing.Optional[builtins.str] = None,
6797
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
6798
+ ) -> None:
6799
+ '''Properties for defining a ``CfnVpcEndpointAssociation``.
6800
+
6801
+ :param firewall_arn: The Amazon Resource Name (ARN) of the firewall.
6802
+ :param subnet_mapping: The ID for a subnet that's used in an association with a firewall. This is used in ``CreateFirewall`` , ``AssociateSubnets`` , and ``CreateVpcEndpointAssociation`` . AWS Network Firewall creates an instance of the associated firewall in each subnet that you specify, to filter traffic in the subnet's Availability Zone.
6803
+ :param vpc_id: The unique identifier of the VPC for the endpoint association.
6804
+ :param description: A description of the VPC endpoint association.
6805
+ :param tags: The key:value pairs to associate with the resource.
6806
+
6807
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html
6808
+ :exampleMetadata: fixture=_generated
6809
+
6810
+ Example::
6811
+
6812
+ # The code below shows an example of how to instantiate this type.
6813
+ # The values are placeholders you should change.
6814
+ from aws_cdk import aws_networkfirewall as networkfirewall
6815
+
6816
+ cfn_vpc_endpoint_association_props = networkfirewall.CfnVpcEndpointAssociationProps(
6817
+ firewall_arn="firewallArn",
6818
+ subnet_mapping=networkfirewall.CfnVpcEndpointAssociation.SubnetMappingProperty(
6819
+ subnet_id="subnetId",
6820
+
6821
+ # the properties below are optional
6822
+ ip_address_type="ipAddressType"
6823
+ ),
6824
+ vpc_id="vpcId",
6825
+
6826
+ # the properties below are optional
6827
+ description="description",
6828
+ tags=[CfnTag(
6829
+ key="key",
6830
+ value="value"
6831
+ )]
6832
+ )
6833
+ '''
6834
+ if __debug__:
6835
+ type_hints = typing.get_type_hints(_typecheckingstub__3dbb62f97ee487edf99a31ab28f86b2ab2bef9c9c70286db4f91d315d1c53f76)
6836
+ check_type(argname="argument firewall_arn", value=firewall_arn, expected_type=type_hints["firewall_arn"])
6837
+ check_type(argname="argument subnet_mapping", value=subnet_mapping, expected_type=type_hints["subnet_mapping"])
6838
+ check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
6839
+ check_type(argname="argument description", value=description, expected_type=type_hints["description"])
6840
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
6841
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6842
+ "firewall_arn": firewall_arn,
6843
+ "subnet_mapping": subnet_mapping,
6844
+ "vpc_id": vpc_id,
6845
+ }
6846
+ if description is not None:
6847
+ self._values["description"] = description
6848
+ if tags is not None:
6849
+ self._values["tags"] = tags
6850
+
6851
+ @builtins.property
6852
+ def firewall_arn(self) -> builtins.str:
6853
+ '''The Amazon Resource Name (ARN) of the firewall.
6854
+
6855
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html#cfn-networkfirewall-vpcendpointassociation-firewallarn
6856
+ '''
6857
+ result = self._values.get("firewall_arn")
6858
+ assert result is not None, "Required property 'firewall_arn' is missing"
6859
+ return typing.cast(builtins.str, result)
6860
+
6861
+ @builtins.property
6862
+ def subnet_mapping(
6863
+ self,
6864
+ ) -> typing.Union[_IResolvable_da3f097b, CfnVpcEndpointAssociation.SubnetMappingProperty]:
6865
+ '''The ID for a subnet that's used in an association with a firewall.
6866
+
6867
+ This is used in ``CreateFirewall`` , ``AssociateSubnets`` , and ``CreateVpcEndpointAssociation`` . AWS Network Firewall creates an instance of the associated firewall in each subnet that you specify, to filter traffic in the subnet's Availability Zone.
6868
+
6869
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html#cfn-networkfirewall-vpcendpointassociation-subnetmapping
6870
+ '''
6871
+ result = self._values.get("subnet_mapping")
6872
+ assert result is not None, "Required property 'subnet_mapping' is missing"
6873
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnVpcEndpointAssociation.SubnetMappingProperty], result)
6874
+
6875
+ @builtins.property
6876
+ def vpc_id(self) -> builtins.str:
6877
+ '''The unique identifier of the VPC for the endpoint association.
6878
+
6879
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html#cfn-networkfirewall-vpcendpointassociation-vpcid
6880
+ '''
6881
+ result = self._values.get("vpc_id")
6882
+ assert result is not None, "Required property 'vpc_id' is missing"
6883
+ return typing.cast(builtins.str, result)
6884
+
6885
+ @builtins.property
6886
+ def description(self) -> typing.Optional[builtins.str]:
6887
+ '''A description of the VPC endpoint association.
6888
+
6889
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html#cfn-networkfirewall-vpcendpointassociation-description
6890
+ '''
6891
+ result = self._values.get("description")
6892
+ return typing.cast(typing.Optional[builtins.str], result)
6893
+
6894
+ @builtins.property
6895
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
6896
+ '''The key:value pairs to associate with the resource.
6897
+
6898
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-networkfirewall-vpcendpointassociation.html#cfn-networkfirewall-vpcendpointassociation-tags
6899
+ '''
6900
+ result = self._values.get("tags")
6901
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
6902
+
6903
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6904
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6905
+
6906
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6907
+ return not (rhs == self)
6908
+
6909
+ def __repr__(self) -> str:
6910
+ return "CfnVpcEndpointAssociationProps(%s)" % ", ".join(
6911
+ k + "=" + repr(v) for k, v in self._values.items()
6912
+ )
6913
+
6914
+
6437
6915
  __all__ = [
6438
6916
  "CfnFirewall",
6439
6917
  "CfnFirewallPolicy",
@@ -6445,6 +6923,8 @@ __all__ = [
6445
6923
  "CfnRuleGroupProps",
6446
6924
  "CfnTLSInspectionConfiguration",
6447
6925
  "CfnTLSInspectionConfigurationProps",
6926
+ "CfnVpcEndpointAssociation",
6927
+ "CfnVpcEndpointAssociationProps",
6448
6928
  ]
6449
6929
 
6450
6930
  publication.publish()
@@ -6725,6 +7205,7 @@ def _typecheckingstub__71487a7865ce1877156cecd1cb83afa7ffd5f6428fa2611a7537c9ccf
6725
7205
  *,
6726
7206
  firewall_arn: builtins.str,
6727
7207
  logging_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnLoggingConfiguration.LoggingConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
7208
+ enable_monitoring_dashboard: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
6728
7209
  firewall_name: typing.Optional[builtins.str] = None,
6729
7210
  ) -> None:
6730
7211
  """Type checking stubs"""
@@ -6754,6 +7235,12 @@ def _typecheckingstub__6379a583f20adcddf04ea938455ca9e96ed6e0a2293ffa4b839685154
6754
7235
  """Type checking stubs"""
6755
7236
  pass
6756
7237
 
7238
+ def _typecheckingstub__cd9d520dc417896b42fea56a33166ad81596a611f62bb71b7dca2be701c49cbe(
7239
+ value: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]],
7240
+ ) -> None:
7241
+ """Type checking stubs"""
7242
+ pass
7243
+
6757
7244
  def _typecheckingstub__1e3640e7313e33945bc2b7c00caa777b47e14239e160ded6a349405aeb0b47da(
6758
7245
  value: typing.Optional[builtins.str],
6759
7246
  ) -> None:
@@ -6780,6 +7267,7 @@ def _typecheckingstub__7dab36772798ea19c1d2e2f1e86d2099a88806994c157c7bd4e0d6217
6780
7267
  *,
6781
7268
  firewall_arn: builtins.str,
6782
7269
  logging_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnLoggingConfiguration.LoggingConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
7270
+ enable_monitoring_dashboard: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
6783
7271
  firewall_name: typing.Optional[builtins.str] = None,
6784
7272
  ) -> None:
6785
7273
  """Type checking stubs"""
@@ -7163,3 +7651,77 @@ def _typecheckingstub__f05137012f831af07bffb09e4ece1302036a8c7c23718d26dcb08f4bf
7163
7651
  ) -> None:
7164
7652
  """Type checking stubs"""
7165
7653
  pass
7654
+
7655
+ def _typecheckingstub__0573bf1b4145f0cb77953642be7dcead4ba79ff19313c048d55d52f50b71e1b3(
7656
+ scope: _constructs_77d1e7e8.Construct,
7657
+ id: builtins.str,
7658
+ *,
7659
+ firewall_arn: builtins.str,
7660
+ subnet_mapping: typing.Union[_IResolvable_da3f097b, typing.Union[CfnVpcEndpointAssociation.SubnetMappingProperty, typing.Dict[builtins.str, typing.Any]]],
7661
+ vpc_id: builtins.str,
7662
+ description: typing.Optional[builtins.str] = None,
7663
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7664
+ ) -> None:
7665
+ """Type checking stubs"""
7666
+ pass
7667
+
7668
+ def _typecheckingstub__65d7c392a601d79f2fd4192b7743a475440dc80e37155fc4e745f070fec7a4ac(
7669
+ inspector: _TreeInspector_488e0dd5,
7670
+ ) -> None:
7671
+ """Type checking stubs"""
7672
+ pass
7673
+
7674
+ def _typecheckingstub__92933d91056f4ba3495b844f1c559970dc539ea1af9552b31329e79d5d06e036(
7675
+ props: typing.Mapping[builtins.str, typing.Any],
7676
+ ) -> None:
7677
+ """Type checking stubs"""
7678
+ pass
7679
+
7680
+ def _typecheckingstub__4873642090d846acb67b83d329a7b6809d25db02946e5fd84612c726b796b3e3(
7681
+ value: builtins.str,
7682
+ ) -> None:
7683
+ """Type checking stubs"""
7684
+ pass
7685
+
7686
+ def _typecheckingstub__a3d9b0b82919d3ce70488dc76e2455ae08bd18480a9794afad69806d772cd593(
7687
+ value: typing.Union[_IResolvable_da3f097b, CfnVpcEndpointAssociation.SubnetMappingProperty],
7688
+ ) -> None:
7689
+ """Type checking stubs"""
7690
+ pass
7691
+
7692
+ def _typecheckingstub__ebc60917207a96abc5156cbba4fef32ab70bea3895d16bee96406b9486bc0767(
7693
+ value: builtins.str,
7694
+ ) -> None:
7695
+ """Type checking stubs"""
7696
+ pass
7697
+
7698
+ def _typecheckingstub__64391adefe7631ddc6978ebdc3e7251c31e95e8ed23e78e1c1e9d7261fa16f80(
7699
+ value: typing.Optional[builtins.str],
7700
+ ) -> None:
7701
+ """Type checking stubs"""
7702
+ pass
7703
+
7704
+ def _typecheckingstub__c17d9f2411e238295a7de2e84411c37ec368c1d40468f81aec3ce8b756fcc4a2(
7705
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
7706
+ ) -> None:
7707
+ """Type checking stubs"""
7708
+ pass
7709
+
7710
+ def _typecheckingstub__ed6e084870d225a53477b08097053cc5b851f59b0c1d2ac3ce50dcb613b85015(
7711
+ *,
7712
+ subnet_id: builtins.str,
7713
+ ip_address_type: typing.Optional[builtins.str] = None,
7714
+ ) -> None:
7715
+ """Type checking stubs"""
7716
+ pass
7717
+
7718
+ def _typecheckingstub__3dbb62f97ee487edf99a31ab28f86b2ab2bef9c9c70286db4f91d315d1c53f76(
7719
+ *,
7720
+ firewall_arn: builtins.str,
7721
+ subnet_mapping: typing.Union[_IResolvable_da3f097b, typing.Union[CfnVpcEndpointAssociation.SubnetMappingProperty, typing.Dict[builtins.str, typing.Any]]],
7722
+ vpc_id: builtins.str,
7723
+ description: typing.Optional[builtins.str] = None,
7724
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7725
+ ) -> None:
7726
+ """Type checking stubs"""
7727
+ pass