aws-cdk-lib 2.168.0__py3-none-any.whl → 2.170.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.
Files changed (40) 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.170.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_cloudfront/experimental/__init__.py +5 -0
  9. aws_cdk/aws_codebuild/__init__.py +2 -2
  10. aws_cdk/aws_connect/__init__.py +378 -0
  11. aws_cdk/aws_customerprofiles/__init__.py +44 -0
  12. aws_cdk/aws_deadline/__init__.py +299 -6
  13. aws_cdk/aws_dynamodb/__init__.py +47 -25
  14. aws_cdk/aws_ec2/__init__.py +6 -2
  15. aws_cdk/aws_ecs/__init__.py +28 -22
  16. aws_cdk/aws_efs/__init__.py +61 -4
  17. aws_cdk/aws_eks/__init__.py +116 -0
  18. aws_cdk/aws_gamelift/__init__.py +385 -251
  19. aws_cdk/aws_iot/__init__.py +209 -0
  20. aws_cdk/aws_iotfleetwise/__init__.py +550 -0
  21. aws_cdk/aws_iotsitewise/__init__.py +6 -3
  22. aws_cdk/aws_ivs/__init__.py +458 -0
  23. aws_cdk/aws_kinesisfirehose/__init__.py +90 -33
  24. aws_cdk/aws_lambda/__init__.py +150 -6
  25. aws_cdk/aws_lambda_event_sources/__init__.py +298 -1
  26. aws_cdk/aws_rbin/__init__.py +902 -0
  27. aws_cdk/aws_rds/__init__.py +115 -0
  28. aws_cdk/aws_route53resolver/__init__.py +76 -19
  29. aws_cdk/aws_sagemaker/__init__.py +32 -0
  30. aws_cdk/aws_sns/__init__.py +593 -8
  31. aws_cdk/aws_sns_subscriptions/__init__.py +68 -22
  32. aws_cdk/aws_synthetics/__init__.py +46 -0
  33. aws_cdk/aws_vpclattice/__init__.py +118 -2
  34. aws_cdk/aws_wisdom/__init__.py +16 -21
  35. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.170.0.dist-info}/METADATA +1 -1
  36. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.170.0.dist-info}/RECORD +40 -39
  37. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.170.0.dist-info}/LICENSE +0 -0
  38. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.170.0.dist-info}/NOTICE +0 -0
  39. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.170.0.dist-info}/WHEEL +0 -0
  40. {aws_cdk_lib-2.168.0.dist-info → aws_cdk_lib-2.170.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,
@@ -87,6 +87,7 @@ from ...aws_lambda import (
87
87
  MetricsConfig as _MetricsConfig_48ab59c4,
88
88
  ParamsAndSecretsLayerVersion as _ParamsAndSecretsLayerVersion_dce97f06,
89
89
  Permission as _Permission_9def3964,
90
+ ProvisionedPollerConfig as _ProvisionedPollerConfig_1025e063,
90
91
  RecursiveLoop as _RecursiveLoop_fc293827,
91
92
  Runtime as _Runtime_b4eaa844,
92
93
  RuntimeManagementMode as _RuntimeManagementMode_688c173b,
@@ -392,6 +393,7 @@ class EdgeFunction(
392
393
  metrics_config: typing.Optional[typing.Union[_MetricsConfig_48ab59c4, typing.Dict[builtins.str, typing.Any]]] = None,
393
394
  on_failure: typing.Optional[_IEventSourceDlq_5e2c6ad9] = None,
394
395
  parallelization_factor: typing.Optional[jsii.Number] = None,
396
+ provisioned_poller_config: typing.Optional[typing.Union[_ProvisionedPollerConfig_1025e063, typing.Dict[builtins.str, typing.Any]]] = None,
395
397
  report_batch_item_failures: typing.Optional[builtins.bool] = None,
396
398
  retry_attempts: typing.Optional[jsii.Number] = None,
397
399
  source_access_configurations: typing.Optional[typing.Sequence[typing.Union[_SourceAccessConfiguration_1926ff89, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -418,6 +420,7 @@ class EdgeFunction(
418
420
  :param metrics_config: Configuration for enhanced monitoring metrics collection When specified, enables collection of additional metrics for the stream event source. Default: - Enhanced monitoring is disabled
419
421
  :param on_failure: An Amazon SQS queue or Amazon SNS topic destination for discarded records. Default: discarded records are ignored
420
422
  :param parallelization_factor: The number of batches to process from each shard concurrently. Valid Range: - Minimum value of 1 - Maximum value of 10 Default: 1
423
+ :param provisioned_poller_config: Configuration for provisioned pollers that read from the event source. When specified, allows control over the minimum and maximum number of pollers that can be provisioned to process events from the source. Default: - no provisioned pollers
421
424
  :param report_batch_item_failures: Allow functions to return partially successful responses for a batch of records. Default: false
422
425
  :param retry_attempts: The maximum number of times to retry when the function returns an error. Set to ``undefined`` if you want lambda to keep retrying infinitely or until the record expires. Valid Range: - Minimum value of 0 - Maximum value of 10000 Default: - infinite or until the record expires.
423
426
  :param source_access_configurations: Specific settings like the authentication protocol or the VPC components to secure access to your event source. Default: - none
@@ -445,6 +448,7 @@ class EdgeFunction(
445
448
  metrics_config=metrics_config,
446
449
  on_failure=on_failure,
447
450
  parallelization_factor=parallelization_factor,
451
+ provisioned_poller_config=provisioned_poller_config,
448
452
  report_batch_item_failures=report_batch_item_failures,
449
453
  retry_attempts=retry_attempts,
450
454
  source_access_configurations=source_access_configurations,
@@ -2055,6 +2059,7 @@ def _typecheckingstub__e3a2f6769309cd3c52da869813738e2d4a94d233e574ada7ebba1654d
2055
2059
  metrics_config: typing.Optional[typing.Union[_MetricsConfig_48ab59c4, typing.Dict[builtins.str, typing.Any]]] = None,
2056
2060
  on_failure: typing.Optional[_IEventSourceDlq_5e2c6ad9] = None,
2057
2061
  parallelization_factor: typing.Optional[jsii.Number] = None,
2062
+ provisioned_poller_config: typing.Optional[typing.Union[_ProvisionedPollerConfig_1025e063, typing.Dict[builtins.str, typing.Any]]] = None,
2058
2063
  report_batch_item_failures: typing.Optional[builtins.bool] = None,
2059
2064
  retry_attempts: typing.Optional[jsii.Number] = None,
2060
2065
  source_access_configurations: typing.Optional[typing.Sequence[typing.Union[_SourceAccessConfiguration_1926ff89, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -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,