aws-cdk-lib 2.168.0__py3-none-any.whl → 2.169.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 (37) hide show
  1. aws_cdk/__init__.py +2 -0
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.168.0.jsii.tgz → aws-cdk-lib@2.169.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_accessanalyzer/__init__.py +244 -13
  5. aws_cdk/aws_applicationsignals/__init__.py +8 -1
  6. aws_cdk/aws_autoscaling/__init__.py +310 -9
  7. aws_cdk/aws_cloudfront/__init__.py +50 -0
  8. aws_cdk/aws_codebuild/__init__.py +2 -2
  9. aws_cdk/aws_connect/__init__.py +378 -0
  10. aws_cdk/aws_customerprofiles/__init__.py +44 -0
  11. aws_cdk/aws_deadline/__init__.py +299 -6
  12. aws_cdk/aws_dynamodb/__init__.py +47 -25
  13. aws_cdk/aws_ec2/__init__.py +6 -2
  14. aws_cdk/aws_ecs/__init__.py +28 -22
  15. aws_cdk/aws_efs/__init__.py +61 -4
  16. aws_cdk/aws_eks/__init__.py +116 -0
  17. aws_cdk/aws_gamelift/__init__.py +385 -251
  18. aws_cdk/aws_iot/__init__.py +209 -0
  19. aws_cdk/aws_iotfleetwise/__init__.py +550 -0
  20. aws_cdk/aws_iotsitewise/__init__.py +6 -3
  21. aws_cdk/aws_ivs/__init__.py +458 -0
  22. aws_cdk/aws_kinesisfirehose/__init__.py +90 -33
  23. aws_cdk/aws_rbin/__init__.py +902 -0
  24. aws_cdk/aws_rds/__init__.py +115 -0
  25. aws_cdk/aws_route53resolver/__init__.py +76 -19
  26. aws_cdk/aws_sagemaker/__init__.py +32 -0
  27. aws_cdk/aws_sns/__init__.py +593 -8
  28. aws_cdk/aws_sns_subscriptions/__init__.py +68 -22
  29. aws_cdk/aws_synthetics/__init__.py +46 -0
  30. aws_cdk/aws_vpclattice/__init__.py +118 -2
  31. aws_cdk/aws_wisdom/__init__.py +16 -21
  32. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/METADATA +1 -1
  33. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/RECORD +37 -36
  34. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/LICENSE +0 -0
  35. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/NOTICE +0 -0
  36. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/WHEEL +0 -0
  37. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.169.0.dist-info}/top_level.txt +0 -0
@@ -225,6 +225,39 @@ cloudfront.Distribution(self, "myDist",
225
225
  )
226
226
  ```
227
227
 
228
+ ### Attaching WAF Web Acls
229
+
230
+ You can attach the AWS WAF web ACL to a CloudFront distribution.
231
+
232
+ To specify a web ACL created using the latest version of AWS WAF, use the ACL ARN, for example
233
+ `arn:aws:wafv2:us-east-1:123456789012:global/webacl/ExampleWebACL/473e64fd-f30b-4765-81a0-62ad96dd167a`.
234
+ The web ACL must be in the `us-east-1` region.
235
+
236
+ To specify a web ACL created using AWS WAF Classic, use the ACL ID, for example `473e64fd-f30b-4765-81a0-62ad96dd167a`.
237
+
238
+ ```python
239
+ # bucket_origin: origins.S3Origin
240
+ # web_acl: wafv2.CfnWebACL
241
+
242
+ distribution = cloudfront.Distribution(self, "Distribution",
243
+ default_behavior=cloudfront.BehaviorOptions(origin=bucket_origin),
244
+ web_acl_id=web_acl.attr_arn
245
+ )
246
+ ```
247
+
248
+ You can also attach a web ACL to a distribution after creation.
249
+
250
+ ```python
251
+ # bucket_origin: origins.S3Origin
252
+ # web_acl: wafv2.CfnWebACL
253
+
254
+ distribution = cloudfront.Distribution(self, "Distribution",
255
+ default_behavior=cloudfront.BehaviorOptions(origin=bucket_origin)
256
+ )
257
+
258
+ distribution.attach_web_acl_id(web_acl.attr_arn)
259
+ ```
260
+
228
261
  ### Customizing Cache Keys and TTLs with Cache Policies
229
262
 
230
263
  You can use a cache policy to improve your cache hit ratio by controlling the values (URL query strings, HTTP headers, and cookies)
@@ -23753,6 +23786,17 @@ class Distribution(
23753
23786
 
23754
23787
  return typing.cast(None, jsii.invoke(self, "addBehavior", [path_pattern, origin, behavior_options]))
23755
23788
 
23789
+ @jsii.member(jsii_name="attachWebAclId")
23790
+ def attach_web_acl_id(self, web_acl_id: builtins.str) -> None:
23791
+ '''Attach WAF WebACL to this CloudFront distribution.
23792
+
23793
+ :param web_acl_id: The WAF WebACL to associate with this distribution.
23794
+ '''
23795
+ if __debug__:
23796
+ type_hints = typing.get_type_hints(_typecheckingstub__12aa9fa01675ec283b93d82dff1b83aaf4ed90beee1e944bba61b1e00701d82a)
23797
+ check_type(argname="argument web_acl_id", value=web_acl_id, expected_type=type_hints["web_acl_id"])
23798
+ return typing.cast(None, jsii.invoke(self, "attachWebAclId", [web_acl_id]))
23799
+
23756
23800
  @jsii.member(jsii_name="grant")
23757
23801
  def grant(
23758
23802
  self,
@@ -27176,6 +27220,12 @@ def _typecheckingstub__f94c33f8f74d148b7c436f42a002e770c6ad95241e489b963596aea62
27176
27220
  """Type checking stubs"""
27177
27221
  pass
27178
27222
 
27223
+ def _typecheckingstub__12aa9fa01675ec283b93d82dff1b83aaf4ed90beee1e944bba61b1e00701d82a(
27224
+ web_acl_id: builtins.str,
27225
+ ) -> None:
27226
+ """Type checking stubs"""
27227
+ pass
27228
+
27179
27229
  def _typecheckingstub__570665aa807bcddef2b06088f934fc7c08e51ec76b12bb573dce40bcd558c053(
27180
27230
  identity: _IGrantable_71c4f5de,
27181
27231
  *actions: builtins.str,
@@ -6097,7 +6097,7 @@ class CfnProject(
6097
6097
  :param git_submodules_config: Information about the Git submodules configuration for the build project.
6098
6098
  :param insecure_ssl: This is used with GitHub Enterprise only. Set to true to ignore SSL warnings while connecting to your GitHub Enterprise project repository. The default value is ``false`` . ``InsecureSsl`` should be used for testing purposes only. It should not be used in a production environment.
6099
6099
  :param location: Information about the location of the source code to be built. Valid values include:. - For source code settings that are specified in the source action of a pipeline in CodePipeline, ``location`` should not be specified. If it is specified, CodePipeline ignores it. This is because CodePipeline uses the settings in a pipeline's source action instead of this value. - For source code in an CodeCommit repository, the HTTPS clone URL to the repository that contains the source code and the buildspec file (for example, ``https://git-codecommit.<region-ID>.amazonaws.com/v1/repos/<repo-name>`` ). - For source code in an Amazon S3 input bucket, one of the following. - The path to the ZIP file that contains the source code (for example, ``<bucket-name>/<path>/<object-name>.zip`` ). - The path to the folder that contains the source code (for example, ``<bucket-name>/<path-to-source-code>/<folder>/`` ). - For source code in a GitHub repository, the HTTPS clone URL to the repository that contains the source and the buildspec file. You must connect your AWS account to your GitHub account. Use the AWS CodeBuild console to start creating a build project. When you use the console to connect (or reconnect) with GitHub, on the GitHub *Authorize application* page, for *Organization access* , choose *Request access* next to each repository you want to allow AWS CodeBuild to have access to, and then choose *Authorize application* . (After you have connected to your GitHub account, you do not need to finish creating the build project. You can leave the AWS CodeBuild console.) To instruct AWS CodeBuild to use this connection, in the ``source`` object, set the ``auth`` object's ``type`` value to ``OAUTH`` . - For source code in an GitLab or self-managed GitLab repository, the HTTPS clone URL to the repository that contains the source and the buildspec file. You must connect your AWS account to your GitLab account. Use the AWS CodeBuild console to start creating a build project. When you use the console to connect (or reconnect) with GitLab, on the Connections *Authorize application* page, choose *Authorize* . Then on the AWS CodeConnections *Create GitLab connection* page, choose *Connect to GitLab* . (After you have connected to your GitLab account, you do not need to finish creating the build project. You can leave the AWS CodeBuild console.) To instruct AWS CodeBuild to override the default connection and use this connection instead, set the ``auth`` object's ``type`` value to ``CODECONNECTIONS`` in the ``source`` object. - For source code in a Bitbucket repository, the HTTPS clone URL to the repository that contains the source and the buildspec file. You must connect your AWS account to your Bitbucket account. Use the AWS CodeBuild console to start creating a build project. When you use the console to connect (or reconnect) with Bitbucket, on the Bitbucket *Confirm access to your account* page, choose *Grant access* . (After you have connected to your Bitbucket account, you do not need to finish creating the build project. You can leave the AWS CodeBuild console.) To instruct AWS CodeBuild to use this connection, in the ``source`` object, set the ``auth`` object's ``type`` value to ``OAUTH`` . If you specify ``CODEPIPELINE`` for the ``Type`` property, don't specify this property. For all of the other types, you must specify ``Location`` .
6100
- :param report_build_status: Set to true to report the status of a build's start and finish to your source provider. This option is valid only when your source provider is GitHub, GitHub Enterprise, or Bitbucket. If this is set and you use a different source provider, an ``invalidInputException`` is thrown.
6100
+ :param report_build_status: Set to true to report the status of a build's start and finish to your source provider. This option is valid only when your source provider is GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket. If this is set and you use a different source provider, an ``invalidInputException`` is thrown.
6101
6101
  :param source_identifier: An identifier for this project source. The identifier can only contain alphanumeric characters and underscores, and must be less than 128 characters in length.
6102
6102
 
6103
6103
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html
@@ -6284,7 +6284,7 @@ class CfnProject(
6284
6284
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
6285
6285
  '''Set to true to report the status of a build's start and finish to your source provider.
6286
6286
 
6287
- This option is valid only when your source provider is GitHub, GitHub Enterprise, or Bitbucket. If this is set and you use a different source provider, an ``invalidInputException`` is thrown.
6287
+ This option is valid only when your source provider is GitHub, GitHub Enterprise, GitLab, GitLab Self Managed, or Bitbucket. If this is set and you use a different source provider, an ``invalidInputException`` is thrown.
6288
6288
 
6289
6289
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codebuild-project-source.html#cfn-codebuild-project-source-reportbuildstatus
6290
6290
  '''
@@ -1427,6 +1427,316 @@ class CfnContactFlowProps:
1427
1427
  )
1428
1428
 
1429
1429
 
1430
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
1431
+ class CfnEmailAddress(
1432
+ _CfnResource_9df397a6,
1433
+ metaclass=jsii.JSIIMeta,
1434
+ jsii_type="aws-cdk-lib.aws_connect.CfnEmailAddress",
1435
+ ):
1436
+ '''Resource Type definition for AWS::Connect::EmailAddress.
1437
+
1438
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html
1439
+ :cloudformationResource: AWS::Connect::EmailAddress
1440
+ :exampleMetadata: fixture=_generated
1441
+
1442
+ Example::
1443
+
1444
+ # The code below shows an example of how to instantiate this type.
1445
+ # The values are placeholders you should change.
1446
+ from aws_cdk import aws_connect as connect
1447
+
1448
+ cfn_email_address = connect.CfnEmailAddress(self, "MyCfnEmailAddress",
1449
+ email_address="emailAddress",
1450
+ instance_arn="instanceArn",
1451
+
1452
+ # the properties below are optional
1453
+ description="description",
1454
+ display_name="displayName",
1455
+ tags=[CfnTag(
1456
+ key="key",
1457
+ value="value"
1458
+ )]
1459
+ )
1460
+ '''
1461
+
1462
+ def __init__(
1463
+ self,
1464
+ scope: _constructs_77d1e7e8.Construct,
1465
+ id: builtins.str,
1466
+ *,
1467
+ email_address: builtins.str,
1468
+ instance_arn: builtins.str,
1469
+ description: typing.Optional[builtins.str] = None,
1470
+ display_name: typing.Optional[builtins.str] = None,
1471
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1472
+ ) -> None:
1473
+ '''
1474
+ :param scope: Scope in which this resource is defined.
1475
+ :param id: Construct identifier for this resource (unique in its scope).
1476
+ :param email_address: Email address to be created for this instance.
1477
+ :param instance_arn: The identifier of the Amazon Connect instance.
1478
+ :param description: A description for the email address.
1479
+ :param display_name: The display name for the email address.
1480
+ :param tags: One or more tags.
1481
+ '''
1482
+ if __debug__:
1483
+ type_hints = typing.get_type_hints(_typecheckingstub__82663491f0adb2dbe44ce9a95c4b21bf5d7529ba2b8adcceab5da9bedc3d1370)
1484
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
1485
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
1486
+ props = CfnEmailAddressProps(
1487
+ email_address=email_address,
1488
+ instance_arn=instance_arn,
1489
+ description=description,
1490
+ display_name=display_name,
1491
+ tags=tags,
1492
+ )
1493
+
1494
+ jsii.create(self.__class__, self, [scope, id, props])
1495
+
1496
+ @jsii.member(jsii_name="inspect")
1497
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
1498
+ '''Examines the CloudFormation resource and discloses attributes.
1499
+
1500
+ :param inspector: tree inspector to collect and process attributes.
1501
+ '''
1502
+ if __debug__:
1503
+ type_hints = typing.get_type_hints(_typecheckingstub__c4fe51dacac1b484c4e303934d80f7bb4cfcbe3351b63a935760ef841d11b0b7)
1504
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
1505
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
1506
+
1507
+ @jsii.member(jsii_name="renderProperties")
1508
+ def _render_properties(
1509
+ self,
1510
+ props: typing.Mapping[builtins.str, typing.Any],
1511
+ ) -> typing.Mapping[builtins.str, typing.Any]:
1512
+ '''
1513
+ :param props: -
1514
+ '''
1515
+ if __debug__:
1516
+ type_hints = typing.get_type_hints(_typecheckingstub__33b6216cbb956627e9dc575454fc3e8d5aea1a3207ec56ce9cb765691a426336)
1517
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
1518
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
1519
+
1520
+ @jsii.python.classproperty
1521
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
1522
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
1523
+ '''The CloudFormation resource type name for this resource class.'''
1524
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
1525
+
1526
+ @builtins.property
1527
+ @jsii.member(jsii_name="attrEmailAddressArn")
1528
+ def attr_email_address_arn(self) -> builtins.str:
1529
+ '''The identifier of the email address.
1530
+
1531
+ :cloudformationAttribute: EmailAddressArn
1532
+ '''
1533
+ return typing.cast(builtins.str, jsii.get(self, "attrEmailAddressArn"))
1534
+
1535
+ @builtins.property
1536
+ @jsii.member(jsii_name="cdkTagManager")
1537
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
1538
+ '''Tag Manager which manages the tags for this resource.'''
1539
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
1540
+
1541
+ @builtins.property
1542
+ @jsii.member(jsii_name="cfnProperties")
1543
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
1544
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
1545
+
1546
+ @builtins.property
1547
+ @jsii.member(jsii_name="emailAddress")
1548
+ def email_address(self) -> builtins.str:
1549
+ '''Email address to be created for this instance.'''
1550
+ return typing.cast(builtins.str, jsii.get(self, "emailAddress"))
1551
+
1552
+ @email_address.setter
1553
+ def email_address(self, value: builtins.str) -> None:
1554
+ if __debug__:
1555
+ type_hints = typing.get_type_hints(_typecheckingstub__e26e2300df70e94e938287749de7109892ad93f49e461b69b020622739163c1c)
1556
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1557
+ jsii.set(self, "emailAddress", value) # pyright: ignore[reportArgumentType]
1558
+
1559
+ @builtins.property
1560
+ @jsii.member(jsii_name="instanceArn")
1561
+ def instance_arn(self) -> builtins.str:
1562
+ '''The identifier of the Amazon Connect instance.'''
1563
+ return typing.cast(builtins.str, jsii.get(self, "instanceArn"))
1564
+
1565
+ @instance_arn.setter
1566
+ def instance_arn(self, value: builtins.str) -> None:
1567
+ if __debug__:
1568
+ type_hints = typing.get_type_hints(_typecheckingstub__4897e979b60cf9112f8c5f689498588562efda825c4b629f911babccfbbd14f3)
1569
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1570
+ jsii.set(self, "instanceArn", value) # pyright: ignore[reportArgumentType]
1571
+
1572
+ @builtins.property
1573
+ @jsii.member(jsii_name="description")
1574
+ def description(self) -> typing.Optional[builtins.str]:
1575
+ '''A description for the email address.'''
1576
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "description"))
1577
+
1578
+ @description.setter
1579
+ def description(self, value: typing.Optional[builtins.str]) -> None:
1580
+ if __debug__:
1581
+ type_hints = typing.get_type_hints(_typecheckingstub__9ecb3e2768e9a204b64d2a27ff4d4239810f03f60c999f10faf989234a4aa95f)
1582
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1583
+ jsii.set(self, "description", value) # pyright: ignore[reportArgumentType]
1584
+
1585
+ @builtins.property
1586
+ @jsii.member(jsii_name="displayName")
1587
+ def display_name(self) -> typing.Optional[builtins.str]:
1588
+ '''The display name for the email address.'''
1589
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "displayName"))
1590
+
1591
+ @display_name.setter
1592
+ def display_name(self, value: typing.Optional[builtins.str]) -> None:
1593
+ if __debug__:
1594
+ type_hints = typing.get_type_hints(_typecheckingstub__ea8987f3e91ef810959c56c99b1cff317c190bc87329ffea9f144b19adab4460)
1595
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1596
+ jsii.set(self, "displayName", value) # pyright: ignore[reportArgumentType]
1597
+
1598
+ @builtins.property
1599
+ @jsii.member(jsii_name="tags")
1600
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1601
+ '''One or more tags.'''
1602
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
1603
+
1604
+ @tags.setter
1605
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
1606
+ if __debug__:
1607
+ type_hints = typing.get_type_hints(_typecheckingstub__0842a9bd625bd6676921b5b4d09d963f3c01dd351f002f2878919bed280da0c1)
1608
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1609
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
1610
+
1611
+
1612
+ @jsii.data_type(
1613
+ jsii_type="aws-cdk-lib.aws_connect.CfnEmailAddressProps",
1614
+ jsii_struct_bases=[],
1615
+ name_mapping={
1616
+ "email_address": "emailAddress",
1617
+ "instance_arn": "instanceArn",
1618
+ "description": "description",
1619
+ "display_name": "displayName",
1620
+ "tags": "tags",
1621
+ },
1622
+ )
1623
+ class CfnEmailAddressProps:
1624
+ def __init__(
1625
+ self,
1626
+ *,
1627
+ email_address: builtins.str,
1628
+ instance_arn: builtins.str,
1629
+ description: typing.Optional[builtins.str] = None,
1630
+ display_name: typing.Optional[builtins.str] = None,
1631
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1632
+ ) -> None:
1633
+ '''Properties for defining a ``CfnEmailAddress``.
1634
+
1635
+ :param email_address: Email address to be created for this instance.
1636
+ :param instance_arn: The identifier of the Amazon Connect instance.
1637
+ :param description: A description for the email address.
1638
+ :param display_name: The display name for the email address.
1639
+ :param tags: One or more tags.
1640
+
1641
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html
1642
+ :exampleMetadata: fixture=_generated
1643
+
1644
+ Example::
1645
+
1646
+ # The code below shows an example of how to instantiate this type.
1647
+ # The values are placeholders you should change.
1648
+ from aws_cdk import aws_connect as connect
1649
+
1650
+ cfn_email_address_props = connect.CfnEmailAddressProps(
1651
+ email_address="emailAddress",
1652
+ instance_arn="instanceArn",
1653
+
1654
+ # the properties below are optional
1655
+ description="description",
1656
+ display_name="displayName",
1657
+ tags=[CfnTag(
1658
+ key="key",
1659
+ value="value"
1660
+ )]
1661
+ )
1662
+ '''
1663
+ if __debug__:
1664
+ type_hints = typing.get_type_hints(_typecheckingstub__925fc69049d4896dd3262cfb6f2706a7c9f3ca052fe3aac9c63f99ad79e7def4)
1665
+ check_type(argname="argument email_address", value=email_address, expected_type=type_hints["email_address"])
1666
+ check_type(argname="argument instance_arn", value=instance_arn, expected_type=type_hints["instance_arn"])
1667
+ check_type(argname="argument description", value=description, expected_type=type_hints["description"])
1668
+ check_type(argname="argument display_name", value=display_name, expected_type=type_hints["display_name"])
1669
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
1670
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1671
+ "email_address": email_address,
1672
+ "instance_arn": instance_arn,
1673
+ }
1674
+ if description is not None:
1675
+ self._values["description"] = description
1676
+ if display_name is not None:
1677
+ self._values["display_name"] = display_name
1678
+ if tags is not None:
1679
+ self._values["tags"] = tags
1680
+
1681
+ @builtins.property
1682
+ def email_address(self) -> builtins.str:
1683
+ '''Email address to be created for this instance.
1684
+
1685
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html#cfn-connect-emailaddress-emailaddress
1686
+ '''
1687
+ result = self._values.get("email_address")
1688
+ assert result is not None, "Required property 'email_address' is missing"
1689
+ return typing.cast(builtins.str, result)
1690
+
1691
+ @builtins.property
1692
+ def instance_arn(self) -> builtins.str:
1693
+ '''The identifier of the Amazon Connect instance.
1694
+
1695
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html#cfn-connect-emailaddress-instancearn
1696
+ '''
1697
+ result = self._values.get("instance_arn")
1698
+ assert result is not None, "Required property 'instance_arn' is missing"
1699
+ return typing.cast(builtins.str, result)
1700
+
1701
+ @builtins.property
1702
+ def description(self) -> typing.Optional[builtins.str]:
1703
+ '''A description for the email address.
1704
+
1705
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html#cfn-connect-emailaddress-description
1706
+ '''
1707
+ result = self._values.get("description")
1708
+ return typing.cast(typing.Optional[builtins.str], result)
1709
+
1710
+ @builtins.property
1711
+ def display_name(self) -> typing.Optional[builtins.str]:
1712
+ '''The display name for the email address.
1713
+
1714
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html#cfn-connect-emailaddress-displayname
1715
+ '''
1716
+ result = self._values.get("display_name")
1717
+ return typing.cast(typing.Optional[builtins.str], result)
1718
+
1719
+ @builtins.property
1720
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1721
+ '''One or more tags.
1722
+
1723
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-connect-emailaddress.html#cfn-connect-emailaddress-tags
1724
+ '''
1725
+ result = self._values.get("tags")
1726
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
1727
+
1728
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1729
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1730
+
1731
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1732
+ return not (rhs == self)
1733
+
1734
+ def __repr__(self) -> str:
1735
+ return "CfnEmailAddressProps(%s)" % ", ".join(
1736
+ k + "=" + repr(v) for k, v in self._values.items()
1737
+ )
1738
+
1739
+
1430
1740
  @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
1431
1741
  class CfnEvaluationForm(
1432
1742
  _CfnResource_9df397a6,
@@ -15452,6 +15762,8 @@ __all__ = [
15452
15762
  "CfnContactFlowModule",
15453
15763
  "CfnContactFlowModuleProps",
15454
15764
  "CfnContactFlowProps",
15765
+ "CfnEmailAddress",
15766
+ "CfnEmailAddressProps",
15455
15767
  "CfnEvaluationForm",
15456
15768
  "CfnEvaluationFormProps",
15457
15769
  "CfnHoursOfOperation",
@@ -15786,6 +16098,72 @@ def _typecheckingstub__c0555b19a226cc1a8bd054951921ffd23e0c635fe29a3d69a330d8262
15786
16098
  """Type checking stubs"""
15787
16099
  pass
15788
16100
 
16101
+ def _typecheckingstub__82663491f0adb2dbe44ce9a95c4b21bf5d7529ba2b8adcceab5da9bedc3d1370(
16102
+ scope: _constructs_77d1e7e8.Construct,
16103
+ id: builtins.str,
16104
+ *,
16105
+ email_address: builtins.str,
16106
+ instance_arn: builtins.str,
16107
+ description: typing.Optional[builtins.str] = None,
16108
+ display_name: typing.Optional[builtins.str] = None,
16109
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
16110
+ ) -> None:
16111
+ """Type checking stubs"""
16112
+ pass
16113
+
16114
+ def _typecheckingstub__c4fe51dacac1b484c4e303934d80f7bb4cfcbe3351b63a935760ef841d11b0b7(
16115
+ inspector: _TreeInspector_488e0dd5,
16116
+ ) -> None:
16117
+ """Type checking stubs"""
16118
+ pass
16119
+
16120
+ def _typecheckingstub__33b6216cbb956627e9dc575454fc3e8d5aea1a3207ec56ce9cb765691a426336(
16121
+ props: typing.Mapping[builtins.str, typing.Any],
16122
+ ) -> None:
16123
+ """Type checking stubs"""
16124
+ pass
16125
+
16126
+ def _typecheckingstub__e26e2300df70e94e938287749de7109892ad93f49e461b69b020622739163c1c(
16127
+ value: builtins.str,
16128
+ ) -> None:
16129
+ """Type checking stubs"""
16130
+ pass
16131
+
16132
+ def _typecheckingstub__4897e979b60cf9112f8c5f689498588562efda825c4b629f911babccfbbd14f3(
16133
+ value: builtins.str,
16134
+ ) -> None:
16135
+ """Type checking stubs"""
16136
+ pass
16137
+
16138
+ def _typecheckingstub__9ecb3e2768e9a204b64d2a27ff4d4239810f03f60c999f10faf989234a4aa95f(
16139
+ value: typing.Optional[builtins.str],
16140
+ ) -> None:
16141
+ """Type checking stubs"""
16142
+ pass
16143
+
16144
+ def _typecheckingstub__ea8987f3e91ef810959c56c99b1cff317c190bc87329ffea9f144b19adab4460(
16145
+ value: typing.Optional[builtins.str],
16146
+ ) -> None:
16147
+ """Type checking stubs"""
16148
+ pass
16149
+
16150
+ def _typecheckingstub__0842a9bd625bd6676921b5b4d09d963f3c01dd351f002f2878919bed280da0c1(
16151
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
16152
+ ) -> None:
16153
+ """Type checking stubs"""
16154
+ pass
16155
+
16156
+ def _typecheckingstub__925fc69049d4896dd3262cfb6f2706a7c9f3ca052fe3aac9c63f99ad79e7def4(
16157
+ *,
16158
+ email_address: builtins.str,
16159
+ instance_arn: builtins.str,
16160
+ description: typing.Optional[builtins.str] = None,
16161
+ display_name: typing.Optional[builtins.str] = None,
16162
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
16163
+ ) -> None:
16164
+ """Type checking stubs"""
16165
+ pass
16166
+
15789
16167
  def _typecheckingstub__67672e07b9b284918b4f61d0c04df64749fd2f5f1f5a07e093b1e338fae6f20d(
15790
16168
  scope: _constructs_77d1e7e8.Construct,
15791
16169
  id: builtins.str,
@@ -2944,6 +2944,7 @@ class CfnIntegration(
2944
2944
  domain_name="domainName",
2945
2945
 
2946
2946
  # the properties below are optional
2947
+ event_trigger_names=["eventTriggerNames"],
2947
2948
  flow_definition=customerprofiles.CfnIntegration.FlowDefinitionProperty(
2948
2949
  flow_name="flowName",
2949
2950
  kms_arn="kmsArn",
@@ -3039,6 +3040,7 @@ class CfnIntegration(
3039
3040
  id: builtins.str,
3040
3041
  *,
3041
3042
  domain_name: builtins.str,
3043
+ event_trigger_names: typing.Optional[typing.Sequence[builtins.str]] = None,
3042
3044
  flow_definition: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnIntegration.FlowDefinitionProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3043
3045
  object_type_name: typing.Optional[builtins.str] = None,
3044
3046
  object_type_names: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnIntegration.ObjectTypeMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -3049,6 +3051,7 @@ class CfnIntegration(
3049
3051
  :param scope: Scope in which this resource is defined.
3050
3052
  :param id: Construct identifier for this resource (unique in its scope).
3051
3053
  :param domain_name: The unique name of the domain.
3054
+ :param event_trigger_names: A list of unique names for active event triggers associated with the integration.
3052
3055
  :param flow_definition: The configuration that controls how Customer Profiles retrieves data from the source.
3053
3056
  :param object_type_name: The name of the profile object type mapping to use.
3054
3057
  :param object_type_names: The object type mapping.
@@ -3061,6 +3064,7 @@ class CfnIntegration(
3061
3064
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3062
3065
  props = CfnIntegrationProps(
3063
3066
  domain_name=domain_name,
3067
+ event_trigger_names=event_trigger_names,
3064
3068
  flow_definition=flow_definition,
3065
3069
  object_type_name=object_type_name,
3066
3070
  object_type_names=object_type_names,
@@ -3142,6 +3146,22 @@ class CfnIntegration(
3142
3146
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3143
3147
  jsii.set(self, "domainName", value) # pyright: ignore[reportArgumentType]
3144
3148
 
3149
+ @builtins.property
3150
+ @jsii.member(jsii_name="eventTriggerNames")
3151
+ def event_trigger_names(self) -> typing.Optional[typing.List[builtins.str]]:
3152
+ '''A list of unique names for active event triggers associated with the integration.'''
3153
+ return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "eventTriggerNames"))
3154
+
3155
+ @event_trigger_names.setter
3156
+ def event_trigger_names(
3157
+ self,
3158
+ value: typing.Optional[typing.List[builtins.str]],
3159
+ ) -> None:
3160
+ if __debug__:
3161
+ type_hints = typing.get_type_hints(_typecheckingstub__2353defad4ed0b7f19993fda09b6c2619751d1fb77397c9b4957634b704a6fba)
3162
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3163
+ jsii.set(self, "eventTriggerNames", value) # pyright: ignore[reportArgumentType]
3164
+
3145
3165
  @builtins.property
3146
3166
  @jsii.member(jsii_name="flowDefinition")
3147
3167
  def flow_definition(
@@ -4835,6 +4855,7 @@ class CfnIntegration(
4835
4855
  jsii_struct_bases=[],
4836
4856
  name_mapping={
4837
4857
  "domain_name": "domainName",
4858
+ "event_trigger_names": "eventTriggerNames",
4838
4859
  "flow_definition": "flowDefinition",
4839
4860
  "object_type_name": "objectTypeName",
4840
4861
  "object_type_names": "objectTypeNames",
@@ -4847,6 +4868,7 @@ class CfnIntegrationProps:
4847
4868
  self,
4848
4869
  *,
4849
4870
  domain_name: builtins.str,
4871
+ event_trigger_names: typing.Optional[typing.Sequence[builtins.str]] = None,
4850
4872
  flow_definition: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegration.FlowDefinitionProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4851
4873
  object_type_name: typing.Optional[builtins.str] = None,
4852
4874
  object_type_names: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegration.ObjectTypeMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -4856,6 +4878,7 @@ class CfnIntegrationProps:
4856
4878
  '''Properties for defining a ``CfnIntegration``.
4857
4879
 
4858
4880
  :param domain_name: The unique name of the domain.
4881
+ :param event_trigger_names: A list of unique names for active event triggers associated with the integration.
4859
4882
  :param flow_definition: The configuration that controls how Customer Profiles retrieves data from the source.
4860
4883
  :param object_type_name: The name of the profile object type mapping to use.
4861
4884
  :param object_type_names: The object type mapping.
@@ -4875,6 +4898,7 @@ class CfnIntegrationProps:
4875
4898
  domain_name="domainName",
4876
4899
 
4877
4900
  # the properties below are optional
4901
+ event_trigger_names=["eventTriggerNames"],
4878
4902
  flow_definition=customerprofiles.CfnIntegration.FlowDefinitionProperty(
4879
4903
  flow_name="flowName",
4880
4904
  kms_arn="kmsArn",
@@ -4966,6 +4990,7 @@ class CfnIntegrationProps:
4966
4990
  if __debug__:
4967
4991
  type_hints = typing.get_type_hints(_typecheckingstub__52bfebce0bd12cb9d9ed6354b0627c3f2946899ecf1ba8120aa70c1e1e22428d)
4968
4992
  check_type(argname="argument domain_name", value=domain_name, expected_type=type_hints["domain_name"])
4993
+ check_type(argname="argument event_trigger_names", value=event_trigger_names, expected_type=type_hints["event_trigger_names"])
4969
4994
  check_type(argname="argument flow_definition", value=flow_definition, expected_type=type_hints["flow_definition"])
4970
4995
  check_type(argname="argument object_type_name", value=object_type_name, expected_type=type_hints["object_type_name"])
4971
4996
  check_type(argname="argument object_type_names", value=object_type_names, expected_type=type_hints["object_type_names"])
@@ -4974,6 +4999,8 @@ class CfnIntegrationProps:
4974
4999
  self._values: typing.Dict[builtins.str, typing.Any] = {
4975
5000
  "domain_name": domain_name,
4976
5001
  }
5002
+ if event_trigger_names is not None:
5003
+ self._values["event_trigger_names"] = event_trigger_names
4977
5004
  if flow_definition is not None:
4978
5005
  self._values["flow_definition"] = flow_definition
4979
5006
  if object_type_name is not None:
@@ -4995,6 +5022,15 @@ class CfnIntegrationProps:
4995
5022
  assert result is not None, "Required property 'domain_name' is missing"
4996
5023
  return typing.cast(builtins.str, result)
4997
5024
 
5025
+ @builtins.property
5026
+ def event_trigger_names(self) -> typing.Optional[typing.List[builtins.str]]:
5027
+ '''A list of unique names for active event triggers associated with the integration.
5028
+
5029
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-customerprofiles-integration.html#cfn-customerprofiles-integration-eventtriggernames
5030
+ '''
5031
+ result = self._values.get("event_trigger_names")
5032
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
5033
+
4998
5034
  @builtins.property
4999
5035
  def flow_definition(
5000
5036
  self,
@@ -6349,6 +6385,7 @@ def _typecheckingstub__b8211c08b95eabfe008b27ab5b3b74bab34f671b7bd9761e15cdb090d
6349
6385
  id: builtins.str,
6350
6386
  *,
6351
6387
  domain_name: builtins.str,
6388
+ event_trigger_names: typing.Optional[typing.Sequence[builtins.str]] = None,
6352
6389
  flow_definition: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegration.FlowDefinitionProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6353
6390
  object_type_name: typing.Optional[builtins.str] = None,
6354
6391
  object_type_names: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegration.ObjectTypeMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
@@ -6376,6 +6413,12 @@ def _typecheckingstub__7d13bac4a06b95e4fadaf50aaed39e2383120484f2d6e868a652119e3
6376
6413
  """Type checking stubs"""
6377
6414
  pass
6378
6415
 
6416
+ def _typecheckingstub__2353defad4ed0b7f19993fda09b6c2619751d1fb77397c9b4957634b704a6fba(
6417
+ value: typing.Optional[typing.List[builtins.str]],
6418
+ ) -> None:
6419
+ """Type checking stubs"""
6420
+ pass
6421
+
6379
6422
  def _typecheckingstub__eda84696baed289de5f577073d9697fd7b0969af55567086ad86e6466b533e14(
6380
6423
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnIntegration.FlowDefinitionProperty]],
6381
6424
  ) -> None:
@@ -6553,6 +6596,7 @@ def _typecheckingstub__6fec16a3ec50ec7d597e7573ae1e24e531163b732505e322d5ef39e92
6553
6596
  def _typecheckingstub__52bfebce0bd12cb9d9ed6354b0627c3f2946899ecf1ba8120aa70c1e1e22428d(
6554
6597
  *,
6555
6598
  domain_name: builtins.str,
6599
+ event_trigger_names: typing.Optional[typing.Sequence[builtins.str]] = None,
6556
6600
  flow_definition: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegration.FlowDefinitionProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6557
6601
  object_type_name: typing.Optional[builtins.str] = None,
6558
6602
  object_type_names: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegration.ObjectTypeMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,