aws-cdk-lib 2.137.0__py3-none-any.whl → 2.139.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 (73) hide show
  1. aws_cdk/__init__.py +8 -0
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.137.0.jsii.tgz → aws-cdk-lib@2.139.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amplify/__init__.py +29 -113
  5. aws_cdk/aws_apigateway/__init__.py +29 -16
  6. aws_cdk/aws_appconfig/__init__.py +315 -77
  7. aws_cdk/aws_appintegrations/__init__.py +55 -6
  8. aws_cdk/aws_apprunner/__init__.py +5 -2
  9. aws_cdk/aws_appsync/__init__.py +400 -13
  10. aws_cdk/aws_aps/__init__.py +64 -47
  11. aws_cdk/aws_autoscaling/__init__.py +62 -60
  12. aws_cdk/aws_b2bi/__init__.py +2 -6
  13. aws_cdk/aws_backup/__init__.py +53 -57
  14. aws_cdk/aws_batch/__init__.py +109 -0
  15. aws_cdk/aws_bcmdataexports/__init__.py +1114 -0
  16. aws_cdk/aws_bedrock/__init__.py +4144 -0
  17. aws_cdk/aws_chatbot/__init__.py +6 -4
  18. aws_cdk/aws_cleanrooms/__init__.py +526 -3
  19. aws_cdk/aws_cleanroomsml/__init__.py +960 -0
  20. aws_cdk/aws_cloudtrail/__init__.py +10 -10
  21. aws_cdk/aws_cloudwatch/__init__.py +244 -8
  22. aws_cdk/aws_codebuild/__init__.py +27 -22
  23. aws_cdk/aws_codeconnections/__init__.py +435 -0
  24. aws_cdk/aws_cognito/__init__.py +175 -79
  25. aws_cdk/aws_datazone/__init__.py +22 -0
  26. aws_cdk/aws_deadline/__init__.py +5394 -0
  27. aws_cdk/aws_dms/__init__.py +2 -4
  28. aws_cdk/aws_ec2/__init__.py +402 -247
  29. aws_cdk/aws_ecr/__init__.py +630 -0
  30. aws_cdk/aws_ecs/__init__.py +361 -20
  31. aws_cdk/aws_efs/__init__.py +594 -2
  32. aws_cdk/aws_elasticache/__init__.py +86 -32
  33. aws_cdk/aws_elasticloadbalancingv2/__init__.py +75 -10
  34. aws_cdk/aws_emr/__init__.py +2 -2
  35. aws_cdk/aws_entityresolution/__init__.py +1982 -773
  36. aws_cdk/aws_events_targets/__init__.py +17 -4
  37. aws_cdk/aws_globalaccelerator/__init__.py +443 -0
  38. aws_cdk/aws_iam/__init__.py +1 -2
  39. aws_cdk/aws_internetmonitor/__init__.py +14 -6
  40. aws_cdk/aws_ivs/__init__.py +1273 -71
  41. aws_cdk/aws_kms/__init__.py +44 -0
  42. aws_cdk/aws_lambda/__init__.py +9 -0
  43. aws_cdk/aws_mediatailor/__init__.py +41 -0
  44. aws_cdk/aws_oam/__init__.py +204 -0
  45. aws_cdk/aws_personalize/__init__.py +8 -6
  46. aws_cdk/aws_pinpoint/__init__.py +5 -3
  47. aws_cdk/aws_pipes/__init__.py +5 -1
  48. aws_cdk/aws_quicksight/__init__.py +12 -6
  49. aws_cdk/aws_rds/__init__.py +370 -96
  50. aws_cdk/aws_redshiftserverless/__init__.py +157 -0
  51. aws_cdk/aws_route53/__init__.py +587 -14
  52. aws_cdk/aws_sagemaker/__init__.py +233 -2
  53. aws_cdk/aws_securityhub/__init__.py +4940 -102
  54. aws_cdk/aws_securitylake/__init__.py +1326 -89
  55. aws_cdk/aws_ses_actions/__init__.py +155 -0
  56. aws_cdk/aws_sns/__init__.py +61 -4
  57. aws_cdk/aws_ssm/__init__.py +5 -2
  58. aws_cdk/aws_ssmcontacts/__init__.py +11 -4
  59. aws_cdk/aws_stepfunctions/__init__.py +8 -16
  60. aws_cdk/aws_stepfunctions_tasks/__init__.py +676 -1
  61. aws_cdk/aws_timestream/__init__.py +1045 -0
  62. aws_cdk/aws_transfer/__init__.py +19 -10
  63. aws_cdk/aws_verifiedpermissions/__init__.py +114 -37
  64. aws_cdk/aws_wisdom/__init__.py +2 -2
  65. aws_cdk/aws_workspacesthinclient/__init__.py +8 -8
  66. aws_cdk/custom_resources/__init__.py +688 -26
  67. aws_cdk/cx_api/__init__.py +17 -0
  68. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/METADATA +3 -3
  69. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/RECORD +73 -69
  70. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/LICENSE +0 -0
  71. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/NOTICE +0 -0
  72. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/WHEEL +0 -0
  73. {aws_cdk_lib-2.137.0.dist-info → aws_cdk_lib-2.139.0.dist-info}/top_level.txt +0 -0
@@ -720,6 +720,7 @@ class CfnKey(
720
720
  multi_region: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
721
721
  origin: typing.Optional[builtins.str] = None,
722
722
  pending_window_in_days: typing.Optional[jsii.Number] = None,
723
+ rotation_period_in_days: typing.Optional[jsii.Number] = None,
723
724
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
724
725
  ) -> None:
725
726
  '''
@@ -735,6 +736,7 @@ class CfnKey(
735
736
  :param multi_region: Creates a multi-Region primary key that you can replicate in other AWS Regions . You can't change the ``MultiRegion`` value after the KMS key is created. For a list of AWS Regions in which multi-Region keys are supported, see `Multi-Region keys in AWS KMS <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ in the ** . .. epigraph:: If you change the value of the ``MultiRegion`` property on an existing KMS key, the update request fails, regardless of the value of the ```UpdateReplacePolicy`` attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html>`_ . This prevents you from accidentally deleting a KMS key by changing an immutable property value. For a multi-Region key, set to this property to ``true`` . For a single-Region key, omit this property or set it to ``false`` . The default value is ``false`` . *Multi-Region keys* are an AWS KMS feature that lets you create multiple interoperable KMS keys in different AWS Regions . Because these KMS keys have the same key ID, key material, and other metadata, you can use them to encrypt data in one AWS Region and decrypt it in a different AWS Region without making a cross-Region call or exposing the plaintext data. For more information, see `Multi-Region keys <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ in the *AWS Key Management Service Developer Guide* . You can create a symmetric encryption, HMAC, or asymmetric multi-Region KMS key, and you can create a multi-Region key with imported key material. However, you cannot create a multi-Region key in a custom key store. To create a replica of this primary key in a different AWS Region , create an `AWS::KMS::ReplicaKey <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html>`_ resource in a CloudFormation stack in the replica Region. Specify the key ARN of this primary key. Default: - false
736
737
  :param origin: The source of the key material for the KMS key. You cannot change the origin after you create the KMS key. The default is ``AWS_KMS`` , which means that AWS KMS creates the key material. To `create a KMS key with no key material <https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-create-cmk.html>`_ (for imported key material), set this value to ``EXTERNAL`` . For more information about importing key material into AWS KMS , see `Importing Key Material <https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html>`_ in the *AWS Key Management Service Developer Guide* . You can ignore ``ENABLED`` when Origin is ``EXTERNAL`` . When a KMS key with Origin ``EXTERNAL`` is created, the key state is ``PENDING_IMPORT`` and ``ENABLED`` is ``false`` . After you import the key material, ``ENABLED`` updated to ``true`` . The KMS key can then be used for Cryptographic Operations. .. epigraph:: AWS CloudFormation doesn't support creating an ``Origin`` parameter of the ``AWS_CLOUDHSM`` or ``EXTERNAL_KEY_STORE`` values. Default: - "AWS_KMS"
737
738
  :param pending_window_in_days: Specifies the number of days in the waiting period before AWS KMS deletes a KMS key that has been removed from a CloudFormation stack. Enter a value between 7 and 30 days. The default value is 30 days. When you remove a KMS key from a CloudFormation stack, AWS KMS schedules the KMS key for deletion and starts the mandatory waiting period. The ``PendingWindowInDays`` property determines the length of waiting period. During the waiting period, the key state of KMS key is ``Pending Deletion`` or ``Pending Replica Deletion`` , which prevents the KMS key from being used in cryptographic operations. When the waiting period expires, AWS KMS permanently deletes the KMS key. AWS KMS will not delete a `multi-Region primary key <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ that has replica keys. If you remove a multi-Region primary key from a CloudFormation stack, its key state changes to ``PendingReplicaDeletion`` so it cannot be replicated or used in cryptographic operations. This state can persist indefinitely. When the last of its replica keys is deleted, the key state of the primary key changes to ``PendingDeletion`` and the waiting period specified by ``PendingWindowInDays`` begins. When this waiting period expires, AWS KMS deletes the primary key. For details, see `Deleting multi-Region keys <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-delete.html>`_ in the *AWS Key Management Service Developer Guide* . You cannot use a CloudFormation template to cancel deletion of the KMS key after you remove it from the stack, regardless of the waiting period. If you specify a KMS key in your template, even one with the same name, CloudFormation creates a new KMS key. To cancel deletion of a KMS key, use the AWS KMS console or the `CancelKeyDeletion <https://docs.aws.amazon.com/kms/latest/APIReference/API_CancelKeyDeletion.html>`_ operation. For information about the ``Pending Deletion`` and ``Pending Replica Deletion`` key states, see `Key state: Effect on your KMS key <https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html>`_ in the *AWS Key Management Service Developer Guide* . For more information about deleting KMS keys, see the `ScheduleKeyDeletion <https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html>`_ operation in the *AWS Key Management Service API Reference* and `Deleting KMS keys <https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html>`_ in the *AWS Key Management Service Developer Guide* .
739
+ :param rotation_period_in_days: The number of days between each automatic rotation. The default value is 365 days. Default: - 365
738
740
  :param tags: Assigns one or more tags to the replica key. .. epigraph:: Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see `ABAC for AWS KMS <https://docs.aws.amazon.com/kms/latest/developerguide/abac.html>`_ in the *AWS Key Management Service Developer Guide* . For information about tags in AWS KMS , see `Tagging keys <https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html>`_ in the *AWS Key Management Service Developer Guide* . For information about tags in CloudFormation, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
739
741
  '''
740
742
  if __debug__:
@@ -752,6 +754,7 @@ class CfnKey(
752
754
  multi_region=multi_region,
753
755
  origin=origin,
754
756
  pending_window_in_days=pending_window_in_days,
757
+ rotation_period_in_days=rotation_period_in_days,
755
758
  tags=tags,
756
759
  )
757
760
 
@@ -976,6 +979,19 @@ class CfnKey(
976
979
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
977
980
  jsii.set(self, "pendingWindowInDays", value)
978
981
 
982
+ @builtins.property
983
+ @jsii.member(jsii_name="rotationPeriodInDays")
984
+ def rotation_period_in_days(self) -> typing.Optional[jsii.Number]:
985
+ '''The number of days between each automatic rotation.'''
986
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "rotationPeriodInDays"))
987
+
988
+ @rotation_period_in_days.setter
989
+ def rotation_period_in_days(self, value: typing.Optional[jsii.Number]) -> None:
990
+ if __debug__:
991
+ type_hints = typing.get_type_hints(_typecheckingstub__3b766cb0a8ed53bed340510bfb429fb6a5f36d2f63f9c7718fb1f0c92f2fbc59)
992
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
993
+ jsii.set(self, "rotationPeriodInDays", value)
994
+
979
995
  @builtins.property
980
996
  @jsii.member(jsii_name="tagsRaw")
981
997
  def tags_raw(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
@@ -1004,6 +1020,7 @@ class CfnKey(
1004
1020
  "multi_region": "multiRegion",
1005
1021
  "origin": "origin",
1006
1022
  "pending_window_in_days": "pendingWindowInDays",
1023
+ "rotation_period_in_days": "rotationPeriodInDays",
1007
1024
  "tags": "tags",
1008
1025
  },
1009
1026
  )
@@ -1021,6 +1038,7 @@ class CfnKeyProps:
1021
1038
  multi_region: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
1022
1039
  origin: typing.Optional[builtins.str] = None,
1023
1040
  pending_window_in_days: typing.Optional[jsii.Number] = None,
1041
+ rotation_period_in_days: typing.Optional[jsii.Number] = None,
1024
1042
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1025
1043
  ) -> None:
1026
1044
  '''Properties for defining a ``CfnKey``.
@@ -1035,6 +1053,7 @@ class CfnKeyProps:
1035
1053
  :param multi_region: Creates a multi-Region primary key that you can replicate in other AWS Regions . You can't change the ``MultiRegion`` value after the KMS key is created. For a list of AWS Regions in which multi-Region keys are supported, see `Multi-Region keys in AWS KMS <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ in the ** . .. epigraph:: If you change the value of the ``MultiRegion`` property on an existing KMS key, the update request fails, regardless of the value of the ```UpdateReplacePolicy`` attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatereplacepolicy.html>`_ . This prevents you from accidentally deleting a KMS key by changing an immutable property value. For a multi-Region key, set to this property to ``true`` . For a single-Region key, omit this property or set it to ``false`` . The default value is ``false`` . *Multi-Region keys* are an AWS KMS feature that lets you create multiple interoperable KMS keys in different AWS Regions . Because these KMS keys have the same key ID, key material, and other metadata, you can use them to encrypt data in one AWS Region and decrypt it in a different AWS Region without making a cross-Region call or exposing the plaintext data. For more information, see `Multi-Region keys <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ in the *AWS Key Management Service Developer Guide* . You can create a symmetric encryption, HMAC, or asymmetric multi-Region KMS key, and you can create a multi-Region key with imported key material. However, you cannot create a multi-Region key in a custom key store. To create a replica of this primary key in a different AWS Region , create an `AWS::KMS::ReplicaKey <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-replicakey.html>`_ resource in a CloudFormation stack in the replica Region. Specify the key ARN of this primary key. Default: - false
1036
1054
  :param origin: The source of the key material for the KMS key. You cannot change the origin after you create the KMS key. The default is ``AWS_KMS`` , which means that AWS KMS creates the key material. To `create a KMS key with no key material <https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys-create-cmk.html>`_ (for imported key material), set this value to ``EXTERNAL`` . For more information about importing key material into AWS KMS , see `Importing Key Material <https://docs.aws.amazon.com/kms/latest/developerguide/importing-keys.html>`_ in the *AWS Key Management Service Developer Guide* . You can ignore ``ENABLED`` when Origin is ``EXTERNAL`` . When a KMS key with Origin ``EXTERNAL`` is created, the key state is ``PENDING_IMPORT`` and ``ENABLED`` is ``false`` . After you import the key material, ``ENABLED`` updated to ``true`` . The KMS key can then be used for Cryptographic Operations. .. epigraph:: AWS CloudFormation doesn't support creating an ``Origin`` parameter of the ``AWS_CLOUDHSM`` or ``EXTERNAL_KEY_STORE`` values. Default: - "AWS_KMS"
1037
1055
  :param pending_window_in_days: Specifies the number of days in the waiting period before AWS KMS deletes a KMS key that has been removed from a CloudFormation stack. Enter a value between 7 and 30 days. The default value is 30 days. When you remove a KMS key from a CloudFormation stack, AWS KMS schedules the KMS key for deletion and starts the mandatory waiting period. The ``PendingWindowInDays`` property determines the length of waiting period. During the waiting period, the key state of KMS key is ``Pending Deletion`` or ``Pending Replica Deletion`` , which prevents the KMS key from being used in cryptographic operations. When the waiting period expires, AWS KMS permanently deletes the KMS key. AWS KMS will not delete a `multi-Region primary key <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-overview.html>`_ that has replica keys. If you remove a multi-Region primary key from a CloudFormation stack, its key state changes to ``PendingReplicaDeletion`` so it cannot be replicated or used in cryptographic operations. This state can persist indefinitely. When the last of its replica keys is deleted, the key state of the primary key changes to ``PendingDeletion`` and the waiting period specified by ``PendingWindowInDays`` begins. When this waiting period expires, AWS KMS deletes the primary key. For details, see `Deleting multi-Region keys <https://docs.aws.amazon.com/kms/latest/developerguide/multi-region-keys-delete.html>`_ in the *AWS Key Management Service Developer Guide* . You cannot use a CloudFormation template to cancel deletion of the KMS key after you remove it from the stack, regardless of the waiting period. If you specify a KMS key in your template, even one with the same name, CloudFormation creates a new KMS key. To cancel deletion of a KMS key, use the AWS KMS console or the `CancelKeyDeletion <https://docs.aws.amazon.com/kms/latest/APIReference/API_CancelKeyDeletion.html>`_ operation. For information about the ``Pending Deletion`` and ``Pending Replica Deletion`` key states, see `Key state: Effect on your KMS key <https://docs.aws.amazon.com/kms/latest/developerguide/key-state.html>`_ in the *AWS Key Management Service Developer Guide* . For more information about deleting KMS keys, see the `ScheduleKeyDeletion <https://docs.aws.amazon.com/kms/latest/APIReference/API_ScheduleKeyDeletion.html>`_ operation in the *AWS Key Management Service API Reference* and `Deleting KMS keys <https://docs.aws.amazon.com/kms/latest/developerguide/deleting-keys.html>`_ in the *AWS Key Management Service Developer Guide* .
1056
+ :param rotation_period_in_days: The number of days between each automatic rotation. The default value is 365 days. Default: - 365
1038
1057
  :param tags: Assigns one or more tags to the replica key. .. epigraph:: Tagging or untagging a KMS key can allow or deny permission to the KMS key. For details, see `ABAC for AWS KMS <https://docs.aws.amazon.com/kms/latest/developerguide/abac.html>`_ in the *AWS Key Management Service Developer Guide* . For information about tags in AWS KMS , see `Tagging keys <https://docs.aws.amazon.com/kms/latest/developerguide/tagging-keys.html>`_ in the *AWS Key Management Service Developer Guide* . For information about tags in CloudFormation, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
1039
1058
 
1040
1059
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html
@@ -1059,6 +1078,7 @@ class CfnKeyProps:
1059
1078
  multi_region=False,
1060
1079
  origin="origin",
1061
1080
  pending_window_in_days=123,
1081
+ rotation_period_in_days=123,
1062
1082
  tags=[CfnTag(
1063
1083
  key="key",
1064
1084
  value="value"
@@ -1077,6 +1097,7 @@ class CfnKeyProps:
1077
1097
  check_type(argname="argument multi_region", value=multi_region, expected_type=type_hints["multi_region"])
1078
1098
  check_type(argname="argument origin", value=origin, expected_type=type_hints["origin"])
1079
1099
  check_type(argname="argument pending_window_in_days", value=pending_window_in_days, expected_type=type_hints["pending_window_in_days"])
1100
+ check_type(argname="argument rotation_period_in_days", value=rotation_period_in_days, expected_type=type_hints["rotation_period_in_days"])
1080
1101
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
1081
1102
  self._values: typing.Dict[builtins.str, typing.Any] = {}
1082
1103
  if bypass_policy_lockout_safety_check is not None:
@@ -1099,6 +1120,8 @@ class CfnKeyProps:
1099
1120
  self._values["origin"] = origin
1100
1121
  if pending_window_in_days is not None:
1101
1122
  self._values["pending_window_in_days"] = pending_window_in_days
1123
+ if rotation_period_in_days is not None:
1124
+ self._values["rotation_period_in_days"] = rotation_period_in_days
1102
1125
  if tags is not None:
1103
1126
  self._values["tags"] = tags
1104
1127
 
@@ -1326,6 +1349,19 @@ class CfnKeyProps:
1326
1349
  result = self._values.get("pending_window_in_days")
1327
1350
  return typing.cast(typing.Optional[jsii.Number], result)
1328
1351
 
1352
+ @builtins.property
1353
+ def rotation_period_in_days(self) -> typing.Optional[jsii.Number]:
1354
+ '''The number of days between each automatic rotation.
1355
+
1356
+ The default value is 365 days.
1357
+
1358
+ :default: - 365
1359
+
1360
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kms-key.html#cfn-kms-key-rotationperiodindays
1361
+ '''
1362
+ result = self._values.get("rotation_period_in_days")
1363
+ return typing.cast(typing.Optional[jsii.Number], result)
1364
+
1329
1365
  @builtins.property
1330
1366
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
1331
1367
  '''Assigns one or more tags to the replica key.
@@ -3186,6 +3222,7 @@ def _typecheckingstub__5ea678e9e5a947601d16e5bb11fec3683fbb15bba768bee0b88be7e19
3186
3222
  multi_region: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3187
3223
  origin: typing.Optional[builtins.str] = None,
3188
3224
  pending_window_in_days: typing.Optional[jsii.Number] = None,
3225
+ rotation_period_in_days: typing.Optional[jsii.Number] = None,
3189
3226
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3190
3227
  ) -> None:
3191
3228
  """Type checking stubs"""
@@ -3263,6 +3300,12 @@ def _typecheckingstub__1d3e524eda3827ec1d53e329afc207f3ef954caf7cf407b25faef721f
3263
3300
  """Type checking stubs"""
3264
3301
  pass
3265
3302
 
3303
+ def _typecheckingstub__3b766cb0a8ed53bed340510bfb429fb6a5f36d2f63f9c7718fb1f0c92f2fbc59(
3304
+ value: typing.Optional[jsii.Number],
3305
+ ) -> None:
3306
+ """Type checking stubs"""
3307
+ pass
3308
+
3266
3309
  def _typecheckingstub__b85648b8166c62900697e128ab3a35c1360fdab37323145ed7b7c76dd91c4576(
3267
3310
  value: typing.Optional[typing.List[_CfnTag_f6864754]],
3268
3311
  ) -> None:
@@ -3281,6 +3324,7 @@ def _typecheckingstub__52751771c8b3e52917eaf0c78bad67c065fa3f95795e92f5eab3e92ce
3281
3324
  multi_region: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3282
3325
  origin: typing.Optional[builtins.str] = None,
3283
3326
  pending_window_in_days: typing.Optional[jsii.Number] = None,
3327
+ rotation_period_in_days: typing.Optional[jsii.Number] = None,
3284
3328
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3285
3329
  ) -> None:
3286
3330
  """Type checking stubs"""
@@ -2917,6 +2917,15 @@ class CfnAlias(
2917
2917
  '''The CloudFormation resource type name for this resource class.'''
2918
2918
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
2919
2919
 
2920
+ @builtins.property
2921
+ @jsii.member(jsii_name="attrAliasArn")
2922
+ def attr_alias_arn(self) -> builtins.str:
2923
+ '''Lambda Alias ARN generated by the service.
2924
+
2925
+ :cloudformationAttribute: AliasArn
2926
+ '''
2927
+ return typing.cast(builtins.str, jsii.get(self, "attrAliasArn"))
2928
+
2920
2929
  @builtins.property
2921
2930
  @jsii.member(jsii_name="attrId")
2922
2931
  def attr_id(self) -> builtins.str:
@@ -96,6 +96,7 @@ class CfnChannel(
96
96
  playback_mode="playbackMode",
97
97
 
98
98
  # the properties below are optional
99
+ audiences=["audiences"],
99
100
  filler_slate=mediatailor.CfnChannel.SlateSourceProperty(
100
101
  source_location_name="sourceLocationName",
101
102
  vod_source_name="vodSourceName"
@@ -122,6 +123,7 @@ class CfnChannel(
122
123
  channel_name: builtins.str,
123
124
  outputs: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnChannel.RequestOutputItemProperty", typing.Dict[builtins.str, typing.Any]]]]],
124
125
  playback_mode: builtins.str,
126
+ audiences: typing.Optional[typing.Sequence[builtins.str]] = None,
125
127
  filler_slate: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnChannel.SlateSourceProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
126
128
  log_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnChannel.LogConfigurationForChannelProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
127
129
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -134,6 +136,7 @@ class CfnChannel(
134
136
  :param channel_name: The name of the channel.
135
137
  :param outputs: The channel's output properties.
136
138
  :param playback_mode: The type of playback mode for this channel. ``LINEAR`` - Programs play back-to-back only once. ``LOOP`` - Programs play back-to-back in an endless loop. When the last program in the schedule plays, playback loops back to the first program in the schedule.
139
+ :param audiences: The list of audiences defined in channel.
137
140
  :param filler_slate: The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the ``LINEAR`` ``PlaybackMode`` . MediaTailor doesn't support filler slate for channels using the ``LOOP`` ``PlaybackMode`` .
138
141
  :param log_configuration: The log configuration.
139
142
  :param tags: The tags to assign to the channel. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see `Tagging AWS Elemental MediaTailor Resources <https://docs.aws.amazon.com/mediatailor/latest/ug/tagging.html>`_ .
@@ -148,6 +151,7 @@ class CfnChannel(
148
151
  channel_name=channel_name,
149
152
  outputs=outputs,
150
153
  playback_mode=playback_mode,
154
+ audiences=audiences,
151
155
  filler_slate=filler_slate,
152
156
  log_configuration=log_configuration,
153
157
  tags=tags,
@@ -250,6 +254,19 @@ class CfnChannel(
250
254
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
251
255
  jsii.set(self, "playbackMode", value)
252
256
 
257
+ @builtins.property
258
+ @jsii.member(jsii_name="audiences")
259
+ def audiences(self) -> typing.Optional[typing.List[builtins.str]]:
260
+ '''The list of audiences defined in channel.'''
261
+ return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "audiences"))
262
+
263
+ @audiences.setter
264
+ def audiences(self, value: typing.Optional[typing.List[builtins.str]]) -> None:
265
+ if __debug__:
266
+ type_hints = typing.get_type_hints(_typecheckingstub__978734f277fe2347cb97632bb681ac7a90ce350df65be207f74234337bd3d49b)
267
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
268
+ jsii.set(self, "audiences", value)
269
+
253
270
  @builtins.property
254
271
  @jsii.member(jsii_name="fillerSlate")
255
272
  def filler_slate(
@@ -1017,6 +1034,7 @@ class CfnChannelPolicyProps:
1017
1034
  "channel_name": "channelName",
1018
1035
  "outputs": "outputs",
1019
1036
  "playback_mode": "playbackMode",
1037
+ "audiences": "audiences",
1020
1038
  "filler_slate": "fillerSlate",
1021
1039
  "log_configuration": "logConfiguration",
1022
1040
  "tags": "tags",
@@ -1031,6 +1049,7 @@ class CfnChannelProps:
1031
1049
  channel_name: builtins.str,
1032
1050
  outputs: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.RequestOutputItemProperty, typing.Dict[builtins.str, typing.Any]]]]],
1033
1051
  playback_mode: builtins.str,
1052
+ audiences: typing.Optional[typing.Sequence[builtins.str]] = None,
1034
1053
  filler_slate: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.SlateSourceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1035
1054
  log_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.LogConfigurationForChannelProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1036
1055
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -1042,6 +1061,7 @@ class CfnChannelProps:
1042
1061
  :param channel_name: The name of the channel.
1043
1062
  :param outputs: The channel's output properties.
1044
1063
  :param playback_mode: The type of playback mode for this channel. ``LINEAR`` - Programs play back-to-back only once. ``LOOP`` - Programs play back-to-back in an endless loop. When the last program in the schedule plays, playback loops back to the first program in the schedule.
1064
+ :param audiences: The list of audiences defined in channel.
1045
1065
  :param filler_slate: The slate used to fill gaps between programs in the schedule. You must configure filler slate if your channel uses the ``LINEAR`` ``PlaybackMode`` . MediaTailor doesn't support filler slate for channels using the ``LOOP`` ``PlaybackMode`` .
1046
1066
  :param log_configuration: The log configuration.
1047
1067
  :param tags: The tags to assign to the channel. Tags are key-value pairs that you can associate with Amazon resources to help with organization, access control, and cost tracking. For more information, see `Tagging AWS Elemental MediaTailor Resources <https://docs.aws.amazon.com/mediatailor/latest/ug/tagging.html>`_ .
@@ -1078,6 +1098,7 @@ class CfnChannelProps:
1078
1098
  playback_mode="playbackMode",
1079
1099
 
1080
1100
  # the properties below are optional
1101
+ audiences=["audiences"],
1081
1102
  filler_slate=mediatailor.CfnChannel.SlateSourceProperty(
1082
1103
  source_location_name="sourceLocationName",
1083
1104
  vod_source_name="vodSourceName"
@@ -1100,6 +1121,7 @@ class CfnChannelProps:
1100
1121
  check_type(argname="argument channel_name", value=channel_name, expected_type=type_hints["channel_name"])
1101
1122
  check_type(argname="argument outputs", value=outputs, expected_type=type_hints["outputs"])
1102
1123
  check_type(argname="argument playback_mode", value=playback_mode, expected_type=type_hints["playback_mode"])
1124
+ check_type(argname="argument audiences", value=audiences, expected_type=type_hints["audiences"])
1103
1125
  check_type(argname="argument filler_slate", value=filler_slate, expected_type=type_hints["filler_slate"])
1104
1126
  check_type(argname="argument log_configuration", value=log_configuration, expected_type=type_hints["log_configuration"])
1105
1127
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
@@ -1110,6 +1132,8 @@ class CfnChannelProps:
1110
1132
  "outputs": outputs,
1111
1133
  "playback_mode": playback_mode,
1112
1134
  }
1135
+ if audiences is not None:
1136
+ self._values["audiences"] = audiences
1113
1137
  if filler_slate is not None:
1114
1138
  self._values["filler_slate"] = filler_slate
1115
1139
  if log_configuration is not None:
@@ -1157,6 +1181,15 @@ class CfnChannelProps:
1157
1181
  assert result is not None, "Required property 'playback_mode' is missing"
1158
1182
  return typing.cast(builtins.str, result)
1159
1183
 
1184
+ @builtins.property
1185
+ def audiences(self) -> typing.Optional[typing.List[builtins.str]]:
1186
+ '''The list of audiences defined in channel.
1187
+
1188
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-mediatailor-channel.html#cfn-mediatailor-channel-audiences
1189
+ '''
1190
+ result = self._values.get("audiences")
1191
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
1192
+
1160
1193
  @builtins.property
1161
1194
  def filler_slate(
1162
1195
  self,
@@ -4172,6 +4205,7 @@ def _typecheckingstub__95afc802641850838d7d754c58072c279165a93bff5fc055789c1090a
4172
4205
  channel_name: builtins.str,
4173
4206
  outputs: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.RequestOutputItemProperty, typing.Dict[builtins.str, typing.Any]]]]],
4174
4207
  playback_mode: builtins.str,
4208
+ audiences: typing.Optional[typing.Sequence[builtins.str]] = None,
4175
4209
  filler_slate: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.SlateSourceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4176
4210
  log_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.LogConfigurationForChannelProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4177
4211
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -4211,6 +4245,12 @@ def _typecheckingstub__0f01c3b2a4d663235632876690f021c08885e2683808fd8f8354ec563
4211
4245
  """Type checking stubs"""
4212
4246
  pass
4213
4247
 
4248
+ def _typecheckingstub__978734f277fe2347cb97632bb681ac7a90ce350df65be207f74234337bd3d49b(
4249
+ value: typing.Optional[typing.List[builtins.str]],
4250
+ ) -> None:
4251
+ """Type checking stubs"""
4252
+ pass
4253
+
4214
4254
  def _typecheckingstub__bb99598f2b90f05f74078bf9dbab5d32c9f963ec0c7f60fc84c741cd7f7a72d5(
4215
4255
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnChannel.SlateSourceProperty]],
4216
4256
  ) -> None:
@@ -4338,6 +4378,7 @@ def _typecheckingstub__34f9c53dfc17c104058553b2c51bffbfeea7885ab9628618cedcaf863
4338
4378
  channel_name: builtins.str,
4339
4379
  outputs: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.RequestOutputItemProperty, typing.Dict[builtins.str, typing.Any]]]]],
4340
4380
  playback_mode: builtins.str,
4381
+ audiences: typing.Optional[typing.Sequence[builtins.str]] = None,
4341
4382
  filler_slate: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.SlateSourceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4342
4383
  log_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnChannel.LogConfigurationForChannelProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4343
4384
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -46,6 +46,7 @@ import constructs as _constructs_77d1e7e8
46
46
  from .. import (
47
47
  CfnResource as _CfnResource_9df397a6,
48
48
  IInspectable as _IInspectable_c2943556,
49
+ IResolvable as _IResolvable_da3f097b,
49
50
  ITaggable as _ITaggable_36806126,
50
51
  TagManager as _TagManager_0a598cb3,
51
52
  TreeInspector as _TreeInspector_488e0dd5,
@@ -84,6 +85,14 @@ class CfnLink(
84
85
 
85
86
  # the properties below are optional
86
87
  label_template="labelTemplate",
88
+ link_configuration=oam.CfnLink.LinkConfigurationProperty(
89
+ log_group_configuration=oam.CfnLink.LinkFilterProperty(
90
+ filter="filter"
91
+ ),
92
+ metric_configuration=oam.CfnLink.LinkFilterProperty(
93
+ filter="filter"
94
+ )
95
+ ),
87
96
  tags={
88
97
  "tags_key": "tags"
89
98
  }
@@ -98,6 +107,7 @@ class CfnLink(
98
107
  resource_types: typing.Sequence[builtins.str],
99
108
  sink_identifier: builtins.str,
100
109
  label_template: typing.Optional[builtins.str] = None,
110
+ link_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLink.LinkConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
101
111
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
102
112
  ) -> None:
103
113
  '''
@@ -106,6 +116,7 @@ class CfnLink(
106
116
  :param resource_types: An array of strings that define which types of data that the source account shares with the monitoring account. Valid values are ``AWS::CloudWatch::Metric | AWS::Logs::LogGroup | AWS::XRay::Trace | AWS::ApplicationInsights::Application | AWS::InternetMonitor::Monitor`` .
107
117
  :param sink_identifier: The ARN of the sink in the monitoring account that you want to link to. You can use `ListSinks <https://docs.aws.amazon.com/OAM/latest/APIReference/API_ListSinks.html>`_ to find the ARNs of sinks.
108
118
  :param label_template: Specify a friendly human-readable name to use to identify this source account when you are viewing data from it in the monitoring account. You can include the following variables in your template: - ``$AccountName`` is the name of the account - ``$AccountEmail`` is a globally-unique email address, which includes the email domain, such as ``mariagarcia@example.com`` - ``$AccountEmailNoDomain`` is an email address without the domain name, such as ``mariagarcia``
119
+ :param link_configuration:
109
120
  :param tags: An array of key-value pairs to apply to the link. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
110
121
  '''
111
122
  if __debug__:
@@ -116,6 +127,7 @@ class CfnLink(
116
127
  resource_types=resource_types,
117
128
  sink_identifier=sink_identifier,
118
129
  label_template=label_template,
130
+ link_configuration=link_configuration,
119
131
  tags=tags,
120
132
  )
121
133
 
@@ -223,6 +235,23 @@ class CfnLink(
223
235
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
224
236
  jsii.set(self, "labelTemplate", value)
225
237
 
238
+ @builtins.property
239
+ @jsii.member(jsii_name="linkConfiguration")
240
+ def link_configuration(
241
+ self,
242
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkConfigurationProperty"]]:
243
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkConfigurationProperty"]], jsii.get(self, "linkConfiguration"))
244
+
245
+ @link_configuration.setter
246
+ def link_configuration(
247
+ self,
248
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkConfigurationProperty"]],
249
+ ) -> None:
250
+ if __debug__:
251
+ type_hints = typing.get_type_hints(_typecheckingstub__27fdc6d36999b24ee51a7ee604dfe60c82600027c0449d54ba66cc13499ab90c)
252
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
253
+ jsii.set(self, "linkConfiguration", value)
254
+
226
255
  @builtins.property
227
256
  @jsii.member(jsii_name="tagsRaw")
228
257
  def tags_raw(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
@@ -239,6 +268,134 @@ class CfnLink(
239
268
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
240
269
  jsii.set(self, "tagsRaw", value)
241
270
 
271
+ @jsii.data_type(
272
+ jsii_type="aws-cdk-lib.aws_oam.CfnLink.LinkConfigurationProperty",
273
+ jsii_struct_bases=[],
274
+ name_mapping={
275
+ "log_group_configuration": "logGroupConfiguration",
276
+ "metric_configuration": "metricConfiguration",
277
+ },
278
+ )
279
+ class LinkConfigurationProperty:
280
+ def __init__(
281
+ self,
282
+ *,
283
+ log_group_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLink.LinkFilterProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
284
+ metric_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnLink.LinkFilterProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
285
+ ) -> None:
286
+ '''
287
+ :param log_group_configuration:
288
+ :param metric_configuration:
289
+
290
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkconfiguration.html
291
+ :exampleMetadata: fixture=_generated
292
+
293
+ Example::
294
+
295
+ # The code below shows an example of how to instantiate this type.
296
+ # The values are placeholders you should change.
297
+ from aws_cdk import aws_oam as oam
298
+
299
+ link_configuration_property = oam.CfnLink.LinkConfigurationProperty(
300
+ log_group_configuration=oam.CfnLink.LinkFilterProperty(
301
+ filter="filter"
302
+ ),
303
+ metric_configuration=oam.CfnLink.LinkFilterProperty(
304
+ filter="filter"
305
+ )
306
+ )
307
+ '''
308
+ if __debug__:
309
+ type_hints = typing.get_type_hints(_typecheckingstub__ec2ec5a3ca147f06b311c2c2b0a7e72f655d6d296f564d1ae2c8d5d08d27c5d6)
310
+ check_type(argname="argument log_group_configuration", value=log_group_configuration, expected_type=type_hints["log_group_configuration"])
311
+ check_type(argname="argument metric_configuration", value=metric_configuration, expected_type=type_hints["metric_configuration"])
312
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
313
+ if log_group_configuration is not None:
314
+ self._values["log_group_configuration"] = log_group_configuration
315
+ if metric_configuration is not None:
316
+ self._values["metric_configuration"] = metric_configuration
317
+
318
+ @builtins.property
319
+ def log_group_configuration(
320
+ self,
321
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkFilterProperty"]]:
322
+ '''
323
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkconfiguration.html#cfn-oam-link-linkconfiguration-loggroupconfiguration
324
+ '''
325
+ result = self._values.get("log_group_configuration")
326
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkFilterProperty"]], result)
327
+
328
+ @builtins.property
329
+ def metric_configuration(
330
+ self,
331
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkFilterProperty"]]:
332
+ '''
333
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkconfiguration.html#cfn-oam-link-linkconfiguration-metricconfiguration
334
+ '''
335
+ result = self._values.get("metric_configuration")
336
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLink.LinkFilterProperty"]], result)
337
+
338
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
339
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
340
+
341
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
342
+ return not (rhs == self)
343
+
344
+ def __repr__(self) -> str:
345
+ return "LinkConfigurationProperty(%s)" % ", ".join(
346
+ k + "=" + repr(v) for k, v in self._values.items()
347
+ )
348
+
349
+ @jsii.data_type(
350
+ jsii_type="aws-cdk-lib.aws_oam.CfnLink.LinkFilterProperty",
351
+ jsii_struct_bases=[],
352
+ name_mapping={"filter": "filter"},
353
+ )
354
+ class LinkFilterProperty:
355
+ def __init__(self, *, filter: builtins.str) -> None:
356
+ '''
357
+ :param filter:
358
+
359
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkfilter.html
360
+ :exampleMetadata: fixture=_generated
361
+
362
+ Example::
363
+
364
+ # The code below shows an example of how to instantiate this type.
365
+ # The values are placeholders you should change.
366
+ from aws_cdk import aws_oam as oam
367
+
368
+ link_filter_property = oam.CfnLink.LinkFilterProperty(
369
+ filter="filter"
370
+ )
371
+ '''
372
+ if __debug__:
373
+ type_hints = typing.get_type_hints(_typecheckingstub__3a6822df441121f7f9fd0663c8f7c4745082bfd61605fab5fc6e5ce1c75b1f52)
374
+ check_type(argname="argument filter", value=filter, expected_type=type_hints["filter"])
375
+ self._values: typing.Dict[builtins.str, typing.Any] = {
376
+ "filter": filter,
377
+ }
378
+
379
+ @builtins.property
380
+ def filter(self) -> builtins.str:
381
+ '''
382
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-oam-link-linkfilter.html#cfn-oam-link-linkfilter-filter
383
+ '''
384
+ result = self._values.get("filter")
385
+ assert result is not None, "Required property 'filter' is missing"
386
+ return typing.cast(builtins.str, result)
387
+
388
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
389
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
390
+
391
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
392
+ return not (rhs == self)
393
+
394
+ def __repr__(self) -> str:
395
+ return "LinkFilterProperty(%s)" % ", ".join(
396
+ k + "=" + repr(v) for k, v in self._values.items()
397
+ )
398
+
242
399
 
243
400
  @jsii.data_type(
244
401
  jsii_type="aws-cdk-lib.aws_oam.CfnLinkProps",
@@ -247,6 +404,7 @@ class CfnLink(
247
404
  "resource_types": "resourceTypes",
248
405
  "sink_identifier": "sinkIdentifier",
249
406
  "label_template": "labelTemplate",
407
+ "link_configuration": "linkConfiguration",
250
408
  "tags": "tags",
251
409
  },
252
410
  )
@@ -257,6 +415,7 @@ class CfnLinkProps:
257
415
  resource_types: typing.Sequence[builtins.str],
258
416
  sink_identifier: builtins.str,
259
417
  label_template: typing.Optional[builtins.str] = None,
418
+ link_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLink.LinkConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
260
419
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
261
420
  ) -> None:
262
421
  '''Properties for defining a ``CfnLink``.
@@ -264,6 +423,7 @@ class CfnLinkProps:
264
423
  :param resource_types: An array of strings that define which types of data that the source account shares with the monitoring account. Valid values are ``AWS::CloudWatch::Metric | AWS::Logs::LogGroup | AWS::XRay::Trace | AWS::ApplicationInsights::Application | AWS::InternetMonitor::Monitor`` .
265
424
  :param sink_identifier: The ARN of the sink in the monitoring account that you want to link to. You can use `ListSinks <https://docs.aws.amazon.com/OAM/latest/APIReference/API_ListSinks.html>`_ to find the ARNs of sinks.
266
425
  :param label_template: Specify a friendly human-readable name to use to identify this source account when you are viewing data from it in the monitoring account. You can include the following variables in your template: - ``$AccountName`` is the name of the account - ``$AccountEmail`` is a globally-unique email address, which includes the email domain, such as ``mariagarcia@example.com`` - ``$AccountEmailNoDomain`` is an email address without the domain name, such as ``mariagarcia``
426
+ :param link_configuration:
267
427
  :param tags: An array of key-value pairs to apply to the link. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
268
428
 
269
429
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html
@@ -281,6 +441,14 @@ class CfnLinkProps:
281
441
 
282
442
  # the properties below are optional
283
443
  label_template="labelTemplate",
444
+ link_configuration=oam.CfnLink.LinkConfigurationProperty(
445
+ log_group_configuration=oam.CfnLink.LinkFilterProperty(
446
+ filter="filter"
447
+ ),
448
+ metric_configuration=oam.CfnLink.LinkFilterProperty(
449
+ filter="filter"
450
+ )
451
+ ),
284
452
  tags={
285
453
  "tags_key": "tags"
286
454
  }
@@ -291,6 +459,7 @@ class CfnLinkProps:
291
459
  check_type(argname="argument resource_types", value=resource_types, expected_type=type_hints["resource_types"])
292
460
  check_type(argname="argument sink_identifier", value=sink_identifier, expected_type=type_hints["sink_identifier"])
293
461
  check_type(argname="argument label_template", value=label_template, expected_type=type_hints["label_template"])
462
+ check_type(argname="argument link_configuration", value=link_configuration, expected_type=type_hints["link_configuration"])
294
463
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
295
464
  self._values: typing.Dict[builtins.str, typing.Any] = {
296
465
  "resource_types": resource_types,
@@ -298,6 +467,8 @@ class CfnLinkProps:
298
467
  }
299
468
  if label_template is not None:
300
469
  self._values["label_template"] = label_template
470
+ if link_configuration is not None:
471
+ self._values["link_configuration"] = link_configuration
301
472
  if tags is not None:
302
473
  self._values["tags"] = tags
303
474
 
@@ -340,6 +511,16 @@ class CfnLinkProps:
340
511
  result = self._values.get("label_template")
341
512
  return typing.cast(typing.Optional[builtins.str], result)
342
513
 
514
+ @builtins.property
515
+ def link_configuration(
516
+ self,
517
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLink.LinkConfigurationProperty]]:
518
+ '''
519
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-oam-link.html#cfn-oam-link-linkconfiguration
520
+ '''
521
+ result = self._values.get("link_configuration")
522
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLink.LinkConfigurationProperty]], result)
523
+
343
524
  @builtins.property
344
525
  def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
345
526
  '''An array of key-value pairs to apply to the link.
@@ -635,6 +816,7 @@ def _typecheckingstub__2ffbd6521de55eb2e3d4f2bc8edac2d144f850a53dbdfd3dac4b15916
635
816
  resource_types: typing.Sequence[builtins.str],
636
817
  sink_identifier: builtins.str,
637
818
  label_template: typing.Optional[builtins.str] = None,
819
+ link_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLink.LinkConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
638
820
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
639
821
  ) -> None:
640
822
  """Type checking stubs"""
@@ -670,17 +852,39 @@ def _typecheckingstub__997e0a25bd896cf32312772dad16f8a1714d949b05e540d8b70c8452e
670
852
  """Type checking stubs"""
671
853
  pass
672
854
 
855
+ def _typecheckingstub__27fdc6d36999b24ee51a7ee604dfe60c82600027c0449d54ba66cc13499ab90c(
856
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLink.LinkConfigurationProperty]],
857
+ ) -> None:
858
+ """Type checking stubs"""
859
+ pass
860
+
673
861
  def _typecheckingstub__db8d2dd2bb0af63f05d76d96179bc7f7bcb803b9dedeabd14ee88e08a8734269(
674
862
  value: typing.Optional[typing.Mapping[builtins.str, builtins.str]],
675
863
  ) -> None:
676
864
  """Type checking stubs"""
677
865
  pass
678
866
 
867
+ def _typecheckingstub__ec2ec5a3ca147f06b311c2c2b0a7e72f655d6d296f564d1ae2c8d5d08d27c5d6(
868
+ *,
869
+ log_group_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLink.LinkFilterProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
870
+ metric_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLink.LinkFilterProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
871
+ ) -> None:
872
+ """Type checking stubs"""
873
+ pass
874
+
875
+ def _typecheckingstub__3a6822df441121f7f9fd0663c8f7c4745082bfd61605fab5fc6e5ce1c75b1f52(
876
+ *,
877
+ filter: builtins.str,
878
+ ) -> None:
879
+ """Type checking stubs"""
880
+ pass
881
+
679
882
  def _typecheckingstub__debdd90801a5b490b9ec98da9bb17f5329c1db3816f558321a3ce7bdfb7aab12(
680
883
  *,
681
884
  resource_types: typing.Sequence[builtins.str],
682
885
  sink_identifier: builtins.str,
683
886
  label_template: typing.Optional[builtins.str] = None,
887
+ link_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnLink.LinkConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
684
888
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
685
889
  ) -> None:
686
890
  """Type checking stubs"""