aws-cdk-lib 2.142.1__py3-none-any.whl → 2.143.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 (49) hide show
  1. aws_cdk/_jsii/__init__.py +1 -1
  2. aws_cdk/_jsii/{aws-cdk-lib@2.142.1.jsii.tgz → aws-cdk-lib@2.143.0.jsii.tgz} +0 -0
  3. aws_cdk/aws_amplify/__init__.py +12 -5
  4. aws_cdk/aws_backup/__init__.py +3 -3
  5. aws_cdk/aws_batch/__init__.py +237 -0
  6. aws_cdk/aws_bedrock/__init__.py +700 -16
  7. aws_cdk/aws_budgets/__init__.py +282 -3
  8. aws_cdk/aws_cloudtrail/__init__.py +12 -2
  9. aws_cdk/aws_codebuild/__init__.py +44 -0
  10. aws_cdk/aws_codepipeline/__init__.py +91 -4
  11. aws_cdk/aws_cognito/__init__.py +75 -0
  12. aws_cdk/aws_datazone/__init__.py +1743 -448
  13. aws_cdk/aws_dynamodb/__init__.py +60 -25
  14. aws_cdk/aws_ec2/__init__.py +112 -39
  15. aws_cdk/aws_ecs/__init__.py +3 -3
  16. aws_cdk/aws_ecs_patterns/__init__.py +106 -0
  17. aws_cdk/aws_eks/__init__.py +13 -10
  18. aws_cdk/aws_elasticache/__init__.py +9 -0
  19. aws_cdk/aws_events/__init__.py +219 -14
  20. aws_cdk/aws_events_targets/__init__.py +140 -3
  21. aws_cdk/aws_fms/__init__.py +42 -43
  22. aws_cdk/aws_fsx/__init__.py +3 -3
  23. aws_cdk/aws_identitystore/__init__.py +11 -11
  24. aws_cdk/aws_lambda/__init__.py +45 -0
  25. aws_cdk/aws_lambda_nodejs/__init__.py +16 -6
  26. aws_cdk/aws_lightsail/__init__.py +9 -0
  27. aws_cdk/aws_location/__init__.py +8 -4
  28. aws_cdk/aws_mediaconnect/__init__.py +1789 -39
  29. aws_cdk/aws_mediatailor/__init__.py +21 -1
  30. aws_cdk/aws_mwaa/__init__.py +82 -0
  31. aws_cdk/aws_neptune/__init__.py +374 -0
  32. aws_cdk/aws_personalize/__init__.py +9 -3
  33. aws_cdk/aws_pipes/__init__.py +7 -7
  34. aws_cdk/aws_quicksight/__init__.py +684 -156
  35. aws_cdk/aws_rds/__init__.py +88 -24
  36. aws_cdk/aws_redshift/__init__.py +0 -46
  37. aws_cdk/aws_route53resolver/__init__.py +23 -0
  38. aws_cdk/aws_s3/__init__.py +4 -4
  39. aws_cdk/aws_sagemaker/__init__.py +185 -4
  40. aws_cdk/aws_securityhub/__init__.py +387 -1
  41. aws_cdk/aws_ssm/__init__.py +14 -6
  42. aws_cdk/aws_sso/__init__.py +1243 -34
  43. aws_cdk/cx_api/__init__.py +16 -0
  44. {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.0.dist-info}/METADATA +1 -1
  45. {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.0.dist-info}/RECORD +49 -49
  46. {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.0.dist-info}/LICENSE +0 -0
  47. {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.0.dist-info}/NOTICE +0 -0
  48. {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.0.dist-info}/WHEEL +0 -0
  49. {aws_cdk_lib-2.142.1.dist-info → aws_cdk_lib-2.143.0.dist-info}/top_level.txt +0 -0
@@ -47,6 +47,8 @@ from .. import (
47
47
  CfnResource as _CfnResource_9df397a6,
48
48
  IInspectable as _IInspectable_c2943556,
49
49
  IResolvable as _IResolvable_da3f097b,
50
+ ITaggableV2 as _ITaggableV2_4e6798f8,
51
+ TagManager as _TagManager_0a598cb3,
50
52
  TreeInspector as _TreeInspector_488e0dd5,
51
53
  )
52
54
 
@@ -128,6 +130,12 @@ class CfnBudget(
128
130
  address="address",
129
131
  subscription_type="subscriptionType"
130
132
  )]
133
+ )],
134
+ resource_tags=[budgets.CfnBudget.ResourceTagProperty(
135
+ key="key",
136
+
137
+ # the properties below are optional
138
+ value="value"
131
139
  )]
132
140
  )
133
141
  '''
@@ -139,12 +147,14 @@ class CfnBudget(
139
147
  *,
140
148
  budget: typing.Union[_IResolvable_da3f097b, typing.Union["CfnBudget.BudgetDataProperty", typing.Dict[builtins.str, typing.Any]]],
141
149
  notifications_with_subscribers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnBudget.NotificationWithSubscribersProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
150
+ resource_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnBudget.ResourceTagProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
142
151
  ) -> None:
143
152
  '''
144
153
  :param scope: Scope in which this resource is defined.
145
154
  :param id: Construct identifier for this resource (unique in its scope).
146
155
  :param budget: The budget object that you want to create.
147
156
  :param notifications_with_subscribers: A notification that you want to associate with a budget. A budget can have up to five notifications, and each notification can have one SNS subscriber and up to 10 email subscribers. If you include notifications and subscribers in your ``CreateBudget`` call, AWS creates the notifications and subscribers for you.
157
+ :param resource_tags: An optional list of tags to associate with the specified budget. Each tag consists of a key and a value, and each key must be unique for the resource.
148
158
  '''
149
159
  if __debug__:
150
160
  type_hints = typing.get_type_hints(_typecheckingstub__fcf9a7d2538a7b213b0959a8dca9ebac8bd9adbb67b3989e4ad2e983d215ccb6)
@@ -153,6 +163,7 @@ class CfnBudget(
153
163
  props = CfnBudgetProps(
154
164
  budget=budget,
155
165
  notifications_with_subscribers=notifications_with_subscribers,
166
+ resource_tags=resource_tags,
156
167
  )
157
168
 
158
169
  jsii.create(self.__class__, self, [scope, id, props])
@@ -236,6 +247,24 @@ class CfnBudget(
236
247
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
237
248
  jsii.set(self, "notificationsWithSubscribers", value)
238
249
 
250
+ @builtins.property
251
+ @jsii.member(jsii_name="resourceTags")
252
+ def resource_tags(
253
+ self,
254
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnBudget.ResourceTagProperty"]]]]:
255
+ '''An optional list of tags to associate with the specified budget.'''
256
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnBudget.ResourceTagProperty"]]]], jsii.get(self, "resourceTags"))
257
+
258
+ @resource_tags.setter
259
+ def resource_tags(
260
+ self,
261
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnBudget.ResourceTagProperty"]]]],
262
+ ) -> None:
263
+ if __debug__:
264
+ type_hints = typing.get_type_hints(_typecheckingstub__c03097858c5aef99b0c71799e2e0ec8cbcfc49e31e5e257bb8efcdb48f4ac65a)
265
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
266
+ jsii.set(self, "resourceTags", value)
267
+
239
268
  @jsii.data_type(
240
269
  jsii_type="aws-cdk-lib.aws_budgets.CfnBudget.AutoAdjustDataProperty",
241
270
  jsii_struct_bases=[],
@@ -1114,6 +1143,79 @@ class CfnBudget(
1114
1143
  k + "=" + repr(v) for k, v in self._values.items()
1115
1144
  )
1116
1145
 
1146
+ @jsii.data_type(
1147
+ jsii_type="aws-cdk-lib.aws_budgets.CfnBudget.ResourceTagProperty",
1148
+ jsii_struct_bases=[],
1149
+ name_mapping={"key": "key", "value": "value"},
1150
+ )
1151
+ class ResourceTagProperty:
1152
+ def __init__(
1153
+ self,
1154
+ *,
1155
+ key: builtins.str,
1156
+ value: typing.Optional[builtins.str] = None,
1157
+ ) -> None:
1158
+ '''The tag structure that contains a tag key and value.
1159
+
1160
+ :param key: The key that's associated with the tag.
1161
+ :param value: The value that's associated with the tag.
1162
+
1163
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html
1164
+ :exampleMetadata: fixture=_generated
1165
+
1166
+ Example::
1167
+
1168
+ # The code below shows an example of how to instantiate this type.
1169
+ # The values are placeholders you should change.
1170
+ from aws_cdk import aws_budgets as budgets
1171
+
1172
+ resource_tag_property = budgets.CfnBudget.ResourceTagProperty(
1173
+ key="key",
1174
+
1175
+ # the properties below are optional
1176
+ value="value"
1177
+ )
1178
+ '''
1179
+ if __debug__:
1180
+ type_hints = typing.get_type_hints(_typecheckingstub__e03486d5108d620859fbdb4bf12682142c9fa8bc9c7ed65e4cf4a7a2d930b67a)
1181
+ check_type(argname="argument key", value=key, expected_type=type_hints["key"])
1182
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1183
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1184
+ "key": key,
1185
+ }
1186
+ if value is not None:
1187
+ self._values["value"] = value
1188
+
1189
+ @builtins.property
1190
+ def key(self) -> builtins.str:
1191
+ '''The key that's associated with the tag.
1192
+
1193
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html#cfn-budgets-budget-resourcetag-key
1194
+ '''
1195
+ result = self._values.get("key")
1196
+ assert result is not None, "Required property 'key' is missing"
1197
+ return typing.cast(builtins.str, result)
1198
+
1199
+ @builtins.property
1200
+ def value(self) -> typing.Optional[builtins.str]:
1201
+ '''The value that's associated with the tag.
1202
+
1203
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budget-resourcetag.html#cfn-budgets-budget-resourcetag-value
1204
+ '''
1205
+ result = self._values.get("value")
1206
+ return typing.cast(typing.Optional[builtins.str], result)
1207
+
1208
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1209
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1210
+
1211
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1212
+ return not (rhs == self)
1213
+
1214
+ def __repr__(self) -> str:
1215
+ return "ResourceTagProperty(%s)" % ", ".join(
1216
+ k + "=" + repr(v) for k, v in self._values.items()
1217
+ )
1218
+
1117
1219
  @jsii.data_type(
1118
1220
  jsii_type="aws-cdk-lib.aws_budgets.CfnBudget.SpendProperty",
1119
1221
  jsii_struct_bases=[],
@@ -1362,6 +1464,7 @@ class CfnBudget(
1362
1464
  name_mapping={
1363
1465
  "budget": "budget",
1364
1466
  "notifications_with_subscribers": "notificationsWithSubscribers",
1467
+ "resource_tags": "resourceTags",
1365
1468
  },
1366
1469
  )
1367
1470
  class CfnBudgetProps:
@@ -1370,11 +1473,13 @@ class CfnBudgetProps:
1370
1473
  *,
1371
1474
  budget: typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.BudgetDataProperty, typing.Dict[builtins.str, typing.Any]]],
1372
1475
  notifications_with_subscribers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.NotificationWithSubscribersProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
1476
+ resource_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
1373
1477
  ) -> None:
1374
1478
  '''Properties for defining a ``CfnBudget``.
1375
1479
 
1376
1480
  :param budget: The budget object that you want to create.
1377
1481
  :param notifications_with_subscribers: A notification that you want to associate with a budget. A budget can have up to five notifications, and each notification can have one SNS subscriber and up to 10 email subscribers. If you include notifications and subscribers in your ``CreateBudget`` call, AWS creates the notifications and subscribers for you.
1482
+ :param resource_tags: An optional list of tags to associate with the specified budget. Each tag consists of a key and a value, and each key must be unique for the resource.
1378
1483
 
1379
1484
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html
1380
1485
  :exampleMetadata: fixture=_generated
@@ -1442,6 +1547,12 @@ class CfnBudgetProps:
1442
1547
  address="address",
1443
1548
  subscription_type="subscriptionType"
1444
1549
  )]
1550
+ )],
1551
+ resource_tags=[budgets.CfnBudget.ResourceTagProperty(
1552
+ key="key",
1553
+
1554
+ # the properties below are optional
1555
+ value="value"
1445
1556
  )]
1446
1557
  )
1447
1558
  '''
@@ -1449,11 +1560,14 @@ class CfnBudgetProps:
1449
1560
  type_hints = typing.get_type_hints(_typecheckingstub__0bce15b7b8b999a87f796c503372a075fb7e77b171e9e458dd4b05e88e303d02)
1450
1561
  check_type(argname="argument budget", value=budget, expected_type=type_hints["budget"])
1451
1562
  check_type(argname="argument notifications_with_subscribers", value=notifications_with_subscribers, expected_type=type_hints["notifications_with_subscribers"])
1563
+ check_type(argname="argument resource_tags", value=resource_tags, expected_type=type_hints["resource_tags"])
1452
1564
  self._values: typing.Dict[builtins.str, typing.Any] = {
1453
1565
  "budget": budget,
1454
1566
  }
1455
1567
  if notifications_with_subscribers is not None:
1456
1568
  self._values["notifications_with_subscribers"] = notifications_with_subscribers
1569
+ if resource_tags is not None:
1570
+ self._values["resource_tags"] = resource_tags
1457
1571
 
1458
1572
  @builtins.property
1459
1573
  def budget(
@@ -1480,6 +1594,19 @@ class CfnBudgetProps:
1480
1594
  result = self._values.get("notifications_with_subscribers")
1481
1595
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnBudget.NotificationWithSubscribersProperty]]]], result)
1482
1596
 
1597
+ @builtins.property
1598
+ def resource_tags(
1599
+ self,
1600
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnBudget.ResourceTagProperty]]]]:
1601
+ '''An optional list of tags to associate with the specified budget.
1602
+
1603
+ Each tag consists of a key and a value, and each key must be unique for the resource.
1604
+
1605
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budget.html#cfn-budgets-budget-resourcetags
1606
+ '''
1607
+ result = self._values.get("resource_tags")
1608
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnBudget.ResourceTagProperty]]]], result)
1609
+
1483
1610
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
1484
1611
  return isinstance(rhs, self.__class__) and rhs._values == self._values
1485
1612
 
@@ -1492,7 +1619,7 @@ class CfnBudgetProps:
1492
1619
  )
1493
1620
 
1494
1621
 
1495
- @jsii.implements(_IInspectable_c2943556)
1622
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
1496
1623
  class CfnBudgetsAction(
1497
1624
  _CfnResource_9df397a6,
1498
1625
  metaclass=jsii.JSIIMeta,
@@ -1546,7 +1673,11 @@ class CfnBudgetsAction(
1546
1673
  )],
1547
1674
 
1548
1675
  # the properties below are optional
1549
- approval_model="approvalModel"
1676
+ approval_model="approvalModel",
1677
+ resource_tags=[budgets.CfnBudgetsAction.ResourceTagProperty(
1678
+ key="key",
1679
+ value="value"
1680
+ )]
1550
1681
  )
1551
1682
  '''
1552
1683
 
@@ -1563,6 +1694,7 @@ class CfnBudgetsAction(
1563
1694
  notification_type: builtins.str,
1564
1695
  subscribers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnBudgetsAction.SubscriberProperty", typing.Dict[builtins.str, typing.Any]]]]],
1565
1696
  approval_model: typing.Optional[builtins.str] = None,
1697
+ resource_tags: typing.Optional[typing.Sequence[typing.Union["CfnBudgetsAction.ResourceTagProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1566
1698
  ) -> None:
1567
1699
  '''
1568
1700
  :param scope: Scope in which this resource is defined.
@@ -1575,6 +1707,7 @@ class CfnBudgetsAction(
1575
1707
  :param notification_type: The type of a notification.
1576
1708
  :param subscribers: A list of subscribers.
1577
1709
  :param approval_model: This specifies if the action needs manual or automatic approval.
1710
+ :param resource_tags: An optional list of tags to associate with the specified budget action. Each tag consists of a key and a value, and each key must be unique for the resource.
1578
1711
  '''
1579
1712
  if __debug__:
1580
1713
  type_hints = typing.get_type_hints(_typecheckingstub__5feaf1ccce7286d2cae539317638953135d21b7e897f0ded2f3a275d0516a886)
@@ -1589,6 +1722,7 @@ class CfnBudgetsAction(
1589
1722
  notification_type=notification_type,
1590
1723
  subscribers=subscribers,
1591
1724
  approval_model=approval_model,
1725
+ resource_tags=resource_tags,
1592
1726
  )
1593
1727
 
1594
1728
  jsii.create(self.__class__, self, [scope, id, props])
@@ -1632,6 +1766,12 @@ class CfnBudgetsAction(
1632
1766
  '''
1633
1767
  return typing.cast(builtins.str, jsii.get(self, "attrActionId"))
1634
1768
 
1769
+ @builtins.property
1770
+ @jsii.member(jsii_name="cdkTagManager")
1771
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
1772
+ '''Tag Manager which manages the tags for this resource.'''
1773
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
1774
+
1635
1775
  @builtins.property
1636
1776
  @jsii.member(jsii_name="cfnProperties")
1637
1777
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
@@ -1756,6 +1896,24 @@ class CfnBudgetsAction(
1756
1896
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1757
1897
  jsii.set(self, "approvalModel", value)
1758
1898
 
1899
+ @builtins.property
1900
+ @jsii.member(jsii_name="resourceTags")
1901
+ def resource_tags(
1902
+ self,
1903
+ ) -> typing.Optional[typing.List["CfnBudgetsAction.ResourceTagProperty"]]:
1904
+ '''An optional list of tags to associate with the specified budget action.'''
1905
+ return typing.cast(typing.Optional[typing.List["CfnBudgetsAction.ResourceTagProperty"]], jsii.get(self, "resourceTags"))
1906
+
1907
+ @resource_tags.setter
1908
+ def resource_tags(
1909
+ self,
1910
+ value: typing.Optional[typing.List["CfnBudgetsAction.ResourceTagProperty"]],
1911
+ ) -> None:
1912
+ if __debug__:
1913
+ type_hints = typing.get_type_hints(_typecheckingstub__5c0b55478b3d0cc2e8da68677b4c8e94baa5da07866b29663a72a08753d6c596)
1914
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1915
+ jsii.set(self, "resourceTags", value)
1916
+
1759
1917
  @jsii.data_type(
1760
1918
  jsii_type="aws-cdk-lib.aws_budgets.CfnBudgetsAction.ActionThresholdProperty",
1761
1919
  jsii_struct_bases=[],
@@ -2045,6 +2203,72 @@ class CfnBudgetsAction(
2045
2203
  k + "=" + repr(v) for k, v in self._values.items()
2046
2204
  )
2047
2205
 
2206
+ @jsii.data_type(
2207
+ jsii_type="aws-cdk-lib.aws_budgets.CfnBudgetsAction.ResourceTagProperty",
2208
+ jsii_struct_bases=[],
2209
+ name_mapping={"key": "key", "value": "value"},
2210
+ )
2211
+ class ResourceTagProperty:
2212
+ def __init__(self, *, key: builtins.str, value: builtins.str) -> None:
2213
+ '''The tag structure that contains a tag key and value.
2214
+
2215
+ :param key: The key that's associated with the tag.
2216
+ :param value: The value that's associated with the tag.
2217
+
2218
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html
2219
+ :exampleMetadata: fixture=_generated
2220
+
2221
+ Example::
2222
+
2223
+ # The code below shows an example of how to instantiate this type.
2224
+ # The values are placeholders you should change.
2225
+ from aws_cdk import aws_budgets as budgets
2226
+
2227
+ resource_tag_property = budgets.CfnBudgetsAction.ResourceTagProperty(
2228
+ key="key",
2229
+ value="value"
2230
+ )
2231
+ '''
2232
+ if __debug__:
2233
+ type_hints = typing.get_type_hints(_typecheckingstub__fabea6df6ffb4670380a26b73c70c85b84ca2eb7ae2e51a88a30e3be83c7f735)
2234
+ check_type(argname="argument key", value=key, expected_type=type_hints["key"])
2235
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2236
+ self._values: typing.Dict[builtins.str, typing.Any] = {
2237
+ "key": key,
2238
+ "value": value,
2239
+ }
2240
+
2241
+ @builtins.property
2242
+ def key(self) -> builtins.str:
2243
+ '''The key that's associated with the tag.
2244
+
2245
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html#cfn-budgets-budgetsaction-resourcetag-key
2246
+ '''
2247
+ result = self._values.get("key")
2248
+ assert result is not None, "Required property 'key' is missing"
2249
+ return typing.cast(builtins.str, result)
2250
+
2251
+ @builtins.property
2252
+ def value(self) -> builtins.str:
2253
+ '''The value that's associated with the tag.
2254
+
2255
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-budgets-budgetsaction-resourcetag.html#cfn-budgets-budgetsaction-resourcetag-value
2256
+ '''
2257
+ result = self._values.get("value")
2258
+ assert result is not None, "Required property 'value' is missing"
2259
+ return typing.cast(builtins.str, result)
2260
+
2261
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2262
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2263
+
2264
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2265
+ return not (rhs == self)
2266
+
2267
+ def __repr__(self) -> str:
2268
+ return "ResourceTagProperty(%s)" % ", ".join(
2269
+ k + "=" + repr(v) for k, v in self._values.items()
2270
+ )
2271
+
2048
2272
  @jsii.data_type(
2049
2273
  jsii_type="aws-cdk-lib.aws_budgets.CfnBudgetsAction.ScpActionDefinitionProperty",
2050
2274
  jsii_struct_bases=[],
@@ -2294,6 +2518,7 @@ class CfnBudgetsAction(
2294
2518
  "notification_type": "notificationType",
2295
2519
  "subscribers": "subscribers",
2296
2520
  "approval_model": "approvalModel",
2521
+ "resource_tags": "resourceTags",
2297
2522
  },
2298
2523
  )
2299
2524
  class CfnBudgetsActionProps:
@@ -2308,6 +2533,7 @@ class CfnBudgetsActionProps:
2308
2533
  notification_type: builtins.str,
2309
2534
  subscribers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudgetsAction.SubscriberProperty, typing.Dict[builtins.str, typing.Any]]]]],
2310
2535
  approval_model: typing.Optional[builtins.str] = None,
2536
+ resource_tags: typing.Optional[typing.Sequence[typing.Union[CfnBudgetsAction.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2311
2537
  ) -> None:
2312
2538
  '''Properties for defining a ``CfnBudgetsAction``.
2313
2539
 
@@ -2319,6 +2545,7 @@ class CfnBudgetsActionProps:
2319
2545
  :param notification_type: The type of a notification.
2320
2546
  :param subscribers: A list of subscribers.
2321
2547
  :param approval_model: This specifies if the action needs manual or automatic approval.
2548
+ :param resource_tags: An optional list of tags to associate with the specified budget action. Each tag consists of a key and a value, and each key must be unique for the resource.
2322
2549
 
2323
2550
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html
2324
2551
  :exampleMetadata: fixture=_generated
@@ -2363,7 +2590,11 @@ class CfnBudgetsActionProps:
2363
2590
  )],
2364
2591
 
2365
2592
  # the properties below are optional
2366
- approval_model="approvalModel"
2593
+ approval_model="approvalModel",
2594
+ resource_tags=[budgets.CfnBudgetsAction.ResourceTagProperty(
2595
+ key="key",
2596
+ value="value"
2597
+ )]
2367
2598
  )
2368
2599
  '''
2369
2600
  if __debug__:
@@ -2376,6 +2607,7 @@ class CfnBudgetsActionProps:
2376
2607
  check_type(argname="argument notification_type", value=notification_type, expected_type=type_hints["notification_type"])
2377
2608
  check_type(argname="argument subscribers", value=subscribers, expected_type=type_hints["subscribers"])
2378
2609
  check_type(argname="argument approval_model", value=approval_model, expected_type=type_hints["approval_model"])
2610
+ check_type(argname="argument resource_tags", value=resource_tags, expected_type=type_hints["resource_tags"])
2379
2611
  self._values: typing.Dict[builtins.str, typing.Any] = {
2380
2612
  "action_threshold": action_threshold,
2381
2613
  "action_type": action_type,
@@ -2387,6 +2619,8 @@ class CfnBudgetsActionProps:
2387
2619
  }
2388
2620
  if approval_model is not None:
2389
2621
  self._values["approval_model"] = approval_model
2622
+ if resource_tags is not None:
2623
+ self._values["resource_tags"] = resource_tags
2390
2624
 
2391
2625
  @builtins.property
2392
2626
  def action_threshold(
@@ -2479,6 +2713,19 @@ class CfnBudgetsActionProps:
2479
2713
  result = self._values.get("approval_model")
2480
2714
  return typing.cast(typing.Optional[builtins.str], result)
2481
2715
 
2716
+ @builtins.property
2717
+ def resource_tags(
2718
+ self,
2719
+ ) -> typing.Optional[typing.List[CfnBudgetsAction.ResourceTagProperty]]:
2720
+ '''An optional list of tags to associate with the specified budget action.
2721
+
2722
+ Each tag consists of a key and a value, and each key must be unique for the resource.
2723
+
2724
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-budgets-budgetsaction.html#cfn-budgets-budgetsaction-resourcetags
2725
+ '''
2726
+ result = self._values.get("resource_tags")
2727
+ return typing.cast(typing.Optional[typing.List[CfnBudgetsAction.ResourceTagProperty]], result)
2728
+
2482
2729
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
2483
2730
  return isinstance(rhs, self.__class__) and rhs._values == self._values
2484
2731
 
@@ -2506,6 +2753,7 @@ def _typecheckingstub__fcf9a7d2538a7b213b0959a8dca9ebac8bd9adbb67b3989e4ad2e983d
2506
2753
  *,
2507
2754
  budget: typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.BudgetDataProperty, typing.Dict[builtins.str, typing.Any]]],
2508
2755
  notifications_with_subscribers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.NotificationWithSubscribersProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
2756
+ resource_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
2509
2757
  ) -> None:
2510
2758
  """Type checking stubs"""
2511
2759
  pass
@@ -2534,6 +2782,12 @@ def _typecheckingstub__338a591d66627dac6d0524a4af3df9ae2f64ac27737f12b95bc7243a4
2534
2782
  """Type checking stubs"""
2535
2783
  pass
2536
2784
 
2785
+ def _typecheckingstub__c03097858c5aef99b0c71799e2e0ec8cbcfc49e31e5e257bb8efcdb48f4ac65a(
2786
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnBudget.ResourceTagProperty]]]],
2787
+ ) -> None:
2788
+ """Type checking stubs"""
2789
+ pass
2790
+
2537
2791
  def _typecheckingstub__ed95504d1222347c1591bd33e0256ea9c7cfabe8856c857ffa5ee97b56e6455f(
2538
2792
  *,
2539
2793
  auto_adjust_type: builtins.str,
@@ -2599,6 +2853,14 @@ def _typecheckingstub__07866499303a1a9ab70a645ecbda245fb51598e896b81d4f01f9cffee
2599
2853
  """Type checking stubs"""
2600
2854
  pass
2601
2855
 
2856
+ def _typecheckingstub__e03486d5108d620859fbdb4bf12682142c9fa8bc9c7ed65e4cf4a7a2d930b67a(
2857
+ *,
2858
+ key: builtins.str,
2859
+ value: typing.Optional[builtins.str] = None,
2860
+ ) -> None:
2861
+ """Type checking stubs"""
2862
+ pass
2863
+
2602
2864
  def _typecheckingstub__5a81264d854f3d578cfafd932e1a5385f5f235b0b2fd9984ec61d7cd42705c9d(
2603
2865
  *,
2604
2866
  amount: jsii.Number,
@@ -2627,6 +2889,7 @@ def _typecheckingstub__0bce15b7b8b999a87f796c503372a075fb7e77b171e9e458dd4b05e88
2627
2889
  *,
2628
2890
  budget: typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.BudgetDataProperty, typing.Dict[builtins.str, typing.Any]]],
2629
2891
  notifications_with_subscribers: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.NotificationWithSubscribersProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
2892
+ resource_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudget.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
2630
2893
  ) -> None:
2631
2894
  """Type checking stubs"""
2632
2895
  pass
@@ -2643,6 +2906,7 @@ def _typecheckingstub__5feaf1ccce7286d2cae539317638953135d21b7e897f0ded2f3a275d0
2643
2906
  notification_type: builtins.str,
2644
2907
  subscribers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudgetsAction.SubscriberProperty, typing.Dict[builtins.str, typing.Any]]]]],
2645
2908
  approval_model: typing.Optional[builtins.str] = None,
2909
+ resource_tags: typing.Optional[typing.Sequence[typing.Union[CfnBudgetsAction.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2646
2910
  ) -> None:
2647
2911
  """Type checking stubs"""
2648
2912
  pass
@@ -2707,6 +2971,12 @@ def _typecheckingstub__cc9b0ed2b1fd2266f52e8858e29800b46ee5d46db67048e5fcafb370f
2707
2971
  """Type checking stubs"""
2708
2972
  pass
2709
2973
 
2974
+ def _typecheckingstub__5c0b55478b3d0cc2e8da68677b4c8e94baa5da07866b29663a72a08753d6c596(
2975
+ value: typing.Optional[typing.List[CfnBudgetsAction.ResourceTagProperty]],
2976
+ ) -> None:
2977
+ """Type checking stubs"""
2978
+ pass
2979
+
2710
2980
  def _typecheckingstub__652e2954f340271681973613d60d4049ebd81a75c8987611d889045de156b8b3(
2711
2981
  *,
2712
2982
  type: builtins.str,
@@ -2734,6 +3004,14 @@ def _typecheckingstub__22f7bad74675d504f2471ac5656611eebbc86ce649e820a38f5961c5a
2734
3004
  """Type checking stubs"""
2735
3005
  pass
2736
3006
 
3007
+ def _typecheckingstub__fabea6df6ffb4670380a26b73c70c85b84ca2eb7ae2e51a88a30e3be83c7f735(
3008
+ *,
3009
+ key: builtins.str,
3010
+ value: builtins.str,
3011
+ ) -> None:
3012
+ """Type checking stubs"""
3013
+ pass
3014
+
2737
3015
  def _typecheckingstub__31fd74b3c2a89d6419f8ea513fe7d522d39278beb5f299a80f1ee727475e6777(
2738
3016
  *,
2739
3017
  policy_id: builtins.str,
@@ -2769,6 +3047,7 @@ def _typecheckingstub__2bf8a3fb960018ac6b97a0b01c3bd29dd4bf1acba7443236249ad39f7
2769
3047
  notification_type: builtins.str,
2770
3048
  subscribers: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnBudgetsAction.SubscriberProperty, typing.Dict[builtins.str, typing.Any]]]]],
2771
3049
  approval_model: typing.Optional[builtins.str] = None,
3050
+ resource_tags: typing.Optional[typing.Sequence[typing.Union[CfnBudgetsAction.ResourceTagProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2772
3051
  ) -> None:
2773
3052
  """Type checking stubs"""
2774
3053
  pass