aws-cdk-lib 2.167.2__py3-none-any.whl → 2.168.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 (44) hide show
  1. aws_cdk/__init__.py +2081 -0
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.167.2.jsii.tgz → aws-cdk-lib@2.168.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_applicationautoscaling/__init__.py +1691 -95
  5. aws_cdk/aws_applicationinsights/__init__.py +41 -0
  6. aws_cdk/aws_applicationsignals/__init__.py +117 -0
  7. aws_cdk/aws_autoscaling/__init__.py +441 -6
  8. aws_cdk/aws_batch/__init__.py +202 -5
  9. aws_cdk/aws_bedrock/__init__.py +12 -12
  10. aws_cdk/aws_cleanrooms/__init__.py +17 -8
  11. aws_cdk/aws_cloudformation/__init__.py +2571 -492
  12. aws_cdk/aws_cloudfront/__init__.py +231 -0
  13. aws_cdk/aws_cloudfront/experimental/__init__.py +5 -0
  14. aws_cdk/aws_cloudfront_origins/__init__.py +714 -132
  15. aws_cdk/aws_cloudtrail/__init__.py +52 -14
  16. aws_cdk/aws_codebuild/__init__.py +668 -2
  17. aws_cdk/aws_connectcampaignsv2/__init__.py +3376 -0
  18. aws_cdk/aws_dynamodb/__init__.py +332 -11
  19. aws_cdk/aws_ec2/__init__.py +13 -4
  20. aws_cdk/aws_ecs/__init__.py +213 -0
  21. aws_cdk/aws_elasticloadbalancingv2/__init__.py +160 -11
  22. aws_cdk/aws_fis/__init__.py +495 -0
  23. aws_cdk/aws_gamelift/__init__.py +3101 -1135
  24. aws_cdk/aws_kinesisfirehose/__init__.py +696 -5
  25. aws_cdk/aws_lambda/__init__.py +634 -259
  26. aws_cdk/aws_lambda_destinations/__init__.py +73 -0
  27. aws_cdk/aws_lambda_event_sources/__init__.py +102 -2
  28. aws_cdk/aws_location/__init__.py +18 -18
  29. aws_cdk/aws_mediastore/__init__.py +22 -10
  30. aws_cdk/aws_opensearchservice/__init__.py +6 -0
  31. aws_cdk/aws_quicksight/__init__.py +35 -19
  32. aws_cdk/aws_rds/__init__.py +51 -3
  33. aws_cdk/aws_securityhub/__init__.py +11 -14
  34. aws_cdk/aws_ses/__init__.py +58 -5
  35. aws_cdk/aws_stepfunctions_tasks/__init__.py +1601 -8
  36. aws_cdk/aws_transfer/__init__.py +0 -8
  37. aws_cdk/aws_vpclattice/__init__.py +39 -0
  38. aws_cdk/aws_wisdom/__init__.py +134 -85
  39. {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/METADATA +1 -1
  40. {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/RECORD +44 -43
  41. {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/LICENSE +0 -0
  42. {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/NOTICE +0 -0
  43. {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/WHEEL +0 -0
  44. {aws_cdk_lib-2.167.2.dist-info → aws_cdk_lib-2.168.0.dist-info}/top_level.txt +0 -0
@@ -1578,6 +1578,10 @@ class CfnGlobalTable(
1578
1578
  ),
1579
1579
 
1580
1580
  # the properties below are optional
1581
+ warm_throughput=dynamodb.CfnGlobalTable.WarmThroughputProperty(
1582
+ read_units_per_second=123,
1583
+ write_units_per_second=123
1584
+ ),
1581
1585
  write_on_demand_throughput_settings=dynamodb.CfnGlobalTable.WriteOnDemandThroughputSettingsProperty(
1582
1586
  max_write_request_units=123
1583
1587
  ),
@@ -1626,6 +1630,10 @@ class CfnGlobalTable(
1626
1630
  # the properties below are optional
1627
1631
  attribute_name="attributeName"
1628
1632
  ),
1633
+ warm_throughput=dynamodb.CfnGlobalTable.WarmThroughputProperty(
1634
+ read_units_per_second=123,
1635
+ write_units_per_second=123
1636
+ ),
1629
1637
  write_on_demand_throughput_settings=dynamodb.CfnGlobalTable.WriteOnDemandThroughputSettingsProperty(
1630
1638
  max_write_request_units=123
1631
1639
  ),
@@ -1664,6 +1672,7 @@ class CfnGlobalTable(
1664
1672
  stream_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.StreamSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1665
1673
  table_name: typing.Optional[builtins.str] = None,
1666
1674
  time_to_live_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.TimeToLiveSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1675
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.WarmThroughputProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1667
1676
  write_on_demand_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.WriteOnDemandThroughputSettingsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1668
1677
  write_provisioned_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.WriteProvisionedThroughputSettingsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1669
1678
  ) -> None:
@@ -1680,7 +1689,8 @@ class CfnGlobalTable(
1680
1689
  :param stream_specification: Specifies the streams settings on your global table. You must provide a value for this property if your global table contains more than one replica. You can only change the streams settings if your global table has only one replica.
1681
1690
  :param table_name: A name for the global table. If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID as the table name. For more information, see `Name type <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html>`_ . .. epigraph:: If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
1682
1691
  :param time_to_live_specification: Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas.
1683
- :param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
1692
+ :param warm_throughput:
1693
+ :param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
1684
1694
  :param write_provisioned_throughput_settings: Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if ``BillingMode`` is set to ``PROVISIONED`` .
1685
1695
  '''
1686
1696
  if __debug__:
@@ -1698,6 +1708,7 @@ class CfnGlobalTable(
1698
1708
  stream_specification=stream_specification,
1699
1709
  table_name=table_name,
1700
1710
  time_to_live_specification=time_to_live_specification,
1711
+ warm_throughput=warm_throughput,
1701
1712
  write_on_demand_throughput_settings=write_on_demand_throughput_settings,
1702
1713
  write_provisioned_throughput_settings=write_provisioned_throughput_settings,
1703
1714
  )
@@ -1947,6 +1958,23 @@ class CfnGlobalTable(
1947
1958
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1948
1959
  jsii.set(self, "timeToLiveSpecification", value) # pyright: ignore[reportArgumentType]
1949
1960
 
1961
+ @builtins.property
1962
+ @jsii.member(jsii_name="warmThroughput")
1963
+ def warm_throughput(
1964
+ self,
1965
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WarmThroughputProperty"]]:
1966
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WarmThroughputProperty"]], jsii.get(self, "warmThroughput"))
1967
+
1968
+ @warm_throughput.setter
1969
+ def warm_throughput(
1970
+ self,
1971
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WarmThroughputProperty"]],
1972
+ ) -> None:
1973
+ if __debug__:
1974
+ type_hints = typing.get_type_hints(_typecheckingstub__5cffa71e41723d2cc6240a56e0993116de480cb2c21c1c9bb92de9599718c4b2)
1975
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1976
+ jsii.set(self, "warmThroughput", value) # pyright: ignore[reportArgumentType]
1977
+
1950
1978
  @builtins.property
1951
1979
  @jsii.member(jsii_name="writeOnDemandThroughputSettings")
1952
1980
  def write_on_demand_throughput_settings(
@@ -2247,6 +2275,7 @@ class CfnGlobalTable(
2247
2275
  "index_name": "indexName",
2248
2276
  "key_schema": "keySchema",
2249
2277
  "projection": "projection",
2278
+ "warm_throughput": "warmThroughput",
2250
2279
  "write_on_demand_throughput_settings": "writeOnDemandThroughputSettings",
2251
2280
  "write_provisioned_throughput_settings": "writeProvisionedThroughputSettings",
2252
2281
  },
@@ -2258,6 +2287,7 @@ class CfnGlobalTable(
2258
2287
  index_name: builtins.str,
2259
2288
  key_schema: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.KeySchemaProperty", typing.Dict[builtins.str, typing.Any]]]]],
2260
2289
  projection: typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.ProjectionProperty", typing.Dict[builtins.str, typing.Any]]],
2290
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.WarmThroughputProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2261
2291
  write_on_demand_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.WriteOnDemandThroughputSettingsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2262
2292
  write_provisioned_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGlobalTable.WriteProvisionedThroughputSettingsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2263
2293
  ) -> None:
@@ -2268,7 +2298,8 @@ class CfnGlobalTable(
2268
2298
  :param index_name: The name of the global secondary index. The name must be unique among all other indexes on this table.
2269
2299
  :param key_schema: The complete key schema for a global secondary index, which consists of one or more pairs of attribute names and key types: - ``HASH`` - partition key - ``RANGE`` - sort key > The partition key of an item is also known as its *hash attribute* . The term "hash attribute" derives from DynamoDB's usage of an internal hash function to evenly distribute data items across partitions, based on their partition key values. .. epigraph:: The sort key of an item is also known as its *range attribute* . The term "range attribute" derives from the way DynamoDB stores items with the same partition key physically close together, in sorted order by the sort key value.
2270
2300
  :param projection: Represents attributes that are copied (projected) from the table into the global secondary index. These are in addition to the primary key attributes and index key attributes, which are automatically projected.
2271
- :param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
2301
+ :param warm_throughput:
2302
+ :param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
2272
2303
  :param write_provisioned_throughput_settings: Defines write capacity settings for the global secondary index. You must specify a value for this property if the table's ``BillingMode`` is ``PROVISIONED`` . All replicas will have the same write capacity settings for this global secondary index.
2273
2304
 
2274
2305
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globalsecondaryindex.html
@@ -2292,6 +2323,10 @@ class CfnGlobalTable(
2292
2323
  ),
2293
2324
 
2294
2325
  # the properties below are optional
2326
+ warm_throughput=dynamodb.CfnGlobalTable.WarmThroughputProperty(
2327
+ read_units_per_second=123,
2328
+ write_units_per_second=123
2329
+ ),
2295
2330
  write_on_demand_throughput_settings=dynamodb.CfnGlobalTable.WriteOnDemandThroughputSettingsProperty(
2296
2331
  max_write_request_units=123
2297
2332
  ),
@@ -2319,6 +2354,7 @@ class CfnGlobalTable(
2319
2354
  check_type(argname="argument index_name", value=index_name, expected_type=type_hints["index_name"])
2320
2355
  check_type(argname="argument key_schema", value=key_schema, expected_type=type_hints["key_schema"])
2321
2356
  check_type(argname="argument projection", value=projection, expected_type=type_hints["projection"])
2357
+ check_type(argname="argument warm_throughput", value=warm_throughput, expected_type=type_hints["warm_throughput"])
2322
2358
  check_type(argname="argument write_on_demand_throughput_settings", value=write_on_demand_throughput_settings, expected_type=type_hints["write_on_demand_throughput_settings"])
2323
2359
  check_type(argname="argument write_provisioned_throughput_settings", value=write_provisioned_throughput_settings, expected_type=type_hints["write_provisioned_throughput_settings"])
2324
2360
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -2326,6 +2362,8 @@ class CfnGlobalTable(
2326
2362
  "key_schema": key_schema,
2327
2363
  "projection": projection,
2328
2364
  }
2365
+ if warm_throughput is not None:
2366
+ self._values["warm_throughput"] = warm_throughput
2329
2367
  if write_on_demand_throughput_settings is not None:
2330
2368
  self._values["write_on_demand_throughput_settings"] = write_on_demand_throughput_settings
2331
2369
  if write_provisioned_throughput_settings is not None:
@@ -2374,13 +2412,23 @@ class CfnGlobalTable(
2374
2412
  assert result is not None, "Required property 'projection' is missing"
2375
2413
  return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.ProjectionProperty"], result)
2376
2414
 
2415
+ @builtins.property
2416
+ def warm_throughput(
2417
+ self,
2418
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WarmThroughputProperty"]]:
2419
+ '''
2420
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globalsecondaryindex.html#cfn-dynamodb-globaltable-globalsecondaryindex-warmthroughput
2421
+ '''
2422
+ result = self._values.get("warm_throughput")
2423
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WarmThroughputProperty"]], result)
2424
+
2377
2425
  @builtins.property
2378
2426
  def write_on_demand_throughput_settings(
2379
2427
  self,
2380
2428
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.WriteOnDemandThroughputSettingsProperty"]]:
2381
2429
  '''Sets the write request settings for a global table or a global secondary index.
2382
2430
 
2383
- You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
2431
+ You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
2384
2432
 
2385
2433
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-globalsecondaryindex.html#cfn-dynamodb-globaltable-globalsecondaryindex-writeondemandthroughputsettings
2386
2434
  '''
@@ -2839,7 +2887,7 @@ class CfnGlobalTable(
2839
2887
  ) -> None:
2840
2888
  '''Sets the read request settings for a replica table or a replica global secondary index.
2841
2889
 
2842
- You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
2890
+ You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
2843
2891
 
2844
2892
  :param max_read_request_units: Maximum number of read request units for the specified replica of a global table.
2845
2893
 
@@ -2997,7 +3045,7 @@ class CfnGlobalTable(
2997
3045
 
2998
3046
  :param index_name: The name of the global secondary index. The name must be unique among all other indexes on this table.
2999
3047
  :param contributor_insights_specification: Updates the status for contributor insights for a specific table or index. CloudWatch Contributor Insights for DynamoDB graphs display the partition key and (if applicable) sort key of frequently accessed items and frequently throttled items in plaintext. If you require the use of AWS Key Management Service (KMS) to encrypt this table’s partition key and sort key data with an AWS managed key or customer managed key, you should not enable CloudWatch Contributor Insights for DynamoDB for this table.
3000
- :param read_on_demand_throughput_settings: Sets the read request settings for a replica global secondary index. You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
3048
+ :param read_on_demand_throughput_settings: Sets the read request settings for a replica global secondary index. You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
3001
3049
  :param read_provisioned_throughput_settings: Allows you to specify the read capacity settings for a replica global secondary index when the ``BillingMode`` is set to ``PROVISIONED`` .
3002
3050
 
3003
3051
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaglobalsecondaryindexspecification.html
@@ -3086,7 +3134,7 @@ class CfnGlobalTable(
3086
3134
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGlobalTable.ReadOnDemandThroughputSettingsProperty"]]:
3087
3135
  '''Sets the read request settings for a replica global secondary index.
3088
3136
 
3089
- You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
3137
+ You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
3090
3138
 
3091
3139
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-replicaglobalsecondaryindexspecification.html#cfn-dynamodb-globaltable-replicaglobalsecondaryindexspecification-readondemandthroughputsettings
3092
3140
  '''
@@ -3998,6 +4046,76 @@ class CfnGlobalTable(
3998
4046
  k + "=" + repr(v) for k, v in self._values.items()
3999
4047
  )
4000
4048
 
4049
+ @jsii.data_type(
4050
+ jsii_type="aws-cdk-lib.aws_dynamodb.CfnGlobalTable.WarmThroughputProperty",
4051
+ jsii_struct_bases=[],
4052
+ name_mapping={
4053
+ "read_units_per_second": "readUnitsPerSecond",
4054
+ "write_units_per_second": "writeUnitsPerSecond",
4055
+ },
4056
+ )
4057
+ class WarmThroughputProperty:
4058
+ def __init__(
4059
+ self,
4060
+ *,
4061
+ read_units_per_second: typing.Optional[jsii.Number] = None,
4062
+ write_units_per_second: typing.Optional[jsii.Number] = None,
4063
+ ) -> None:
4064
+ '''
4065
+ :param read_units_per_second:
4066
+ :param write_units_per_second:
4067
+
4068
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-warmthroughput.html
4069
+ :exampleMetadata: fixture=_generated
4070
+
4071
+ Example::
4072
+
4073
+ # The code below shows an example of how to instantiate this type.
4074
+ # The values are placeholders you should change.
4075
+ from aws_cdk import aws_dynamodb as dynamodb
4076
+
4077
+ warm_throughput_property = dynamodb.CfnGlobalTable.WarmThroughputProperty(
4078
+ read_units_per_second=123,
4079
+ write_units_per_second=123
4080
+ )
4081
+ '''
4082
+ if __debug__:
4083
+ type_hints = typing.get_type_hints(_typecheckingstub__0b4a9630f73ba64974f75710b10a566fd0d88349b6d07fc41deb6fac3b443b29)
4084
+ check_type(argname="argument read_units_per_second", value=read_units_per_second, expected_type=type_hints["read_units_per_second"])
4085
+ check_type(argname="argument write_units_per_second", value=write_units_per_second, expected_type=type_hints["write_units_per_second"])
4086
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
4087
+ if read_units_per_second is not None:
4088
+ self._values["read_units_per_second"] = read_units_per_second
4089
+ if write_units_per_second is not None:
4090
+ self._values["write_units_per_second"] = write_units_per_second
4091
+
4092
+ @builtins.property
4093
+ def read_units_per_second(self) -> typing.Optional[jsii.Number]:
4094
+ '''
4095
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-warmthroughput.html#cfn-dynamodb-globaltable-warmthroughput-readunitspersecond
4096
+ '''
4097
+ result = self._values.get("read_units_per_second")
4098
+ return typing.cast(typing.Optional[jsii.Number], result)
4099
+
4100
+ @builtins.property
4101
+ def write_units_per_second(self) -> typing.Optional[jsii.Number]:
4102
+ '''
4103
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-globaltable-warmthroughput.html#cfn-dynamodb-globaltable-warmthroughput-writeunitspersecond
4104
+ '''
4105
+ result = self._values.get("write_units_per_second")
4106
+ return typing.cast(typing.Optional[jsii.Number], result)
4107
+
4108
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4109
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4110
+
4111
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4112
+ return not (rhs == self)
4113
+
4114
+ def __repr__(self) -> str:
4115
+ return "WarmThroughputProperty(%s)" % ", ".join(
4116
+ k + "=" + repr(v) for k, v in self._values.items()
4117
+ )
4118
+
4001
4119
  @jsii.data_type(
4002
4120
  jsii_type="aws-cdk-lib.aws_dynamodb.CfnGlobalTable.WriteOnDemandThroughputSettingsProperty",
4003
4121
  jsii_struct_bases=[],
@@ -4011,7 +4129,7 @@ class CfnGlobalTable(
4011
4129
  ) -> None:
4012
4130
  '''Sets the write request settings for a global table or a global secondary index.
4013
4131
 
4014
- You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
4132
+ You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
4015
4133
 
4016
4134
  :param max_write_request_units: Maximum number of write request settings for the specified replica of a global table.
4017
4135
 
@@ -4145,6 +4263,7 @@ class CfnGlobalTable(
4145
4263
  "stream_specification": "streamSpecification",
4146
4264
  "table_name": "tableName",
4147
4265
  "time_to_live_specification": "timeToLiveSpecification",
4266
+ "warm_throughput": "warmThroughput",
4148
4267
  "write_on_demand_throughput_settings": "writeOnDemandThroughputSettings",
4149
4268
  "write_provisioned_throughput_settings": "writeProvisionedThroughputSettings",
4150
4269
  },
@@ -4163,6 +4282,7 @@ class CfnGlobalTableProps:
4163
4282
  stream_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.StreamSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4164
4283
  table_name: typing.Optional[builtins.str] = None,
4165
4284
  time_to_live_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.TimeToLiveSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4285
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WarmThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4166
4286
  write_on_demand_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WriteOnDemandThroughputSettingsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4167
4287
  write_provisioned_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WriteProvisionedThroughputSettingsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4168
4288
  ) -> None:
@@ -4178,7 +4298,8 @@ class CfnGlobalTableProps:
4178
4298
  :param stream_specification: Specifies the streams settings on your global table. You must provide a value for this property if your global table contains more than one replica. You can only change the streams settings if your global table has only one replica.
4179
4299
  :param table_name: A name for the global table. If you don't specify a name, AWS CloudFormation generates a unique ID and uses that ID as the table name. For more information, see `Name type <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html>`_ . .. epigraph:: If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
4180
4300
  :param time_to_live_specification: Specifies the time to live (TTL) settings for the table. This setting will be applied to all replicas.
4181
- :param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
4301
+ :param warm_throughput:
4302
+ :param write_on_demand_throughput_settings: Sets the write request settings for a global table or a global secondary index. You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
4182
4303
  :param write_provisioned_throughput_settings: Specifies an auto scaling policy for write capacity. This policy will be applied to all replicas. This setting must be specified if ``BillingMode`` is set to ``PROVISIONED`` .
4183
4304
 
4184
4305
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html
@@ -4300,6 +4421,10 @@ class CfnGlobalTableProps:
4300
4421
  ),
4301
4422
 
4302
4423
  # the properties below are optional
4424
+ warm_throughput=dynamodb.CfnGlobalTable.WarmThroughputProperty(
4425
+ read_units_per_second=123,
4426
+ write_units_per_second=123
4427
+ ),
4303
4428
  write_on_demand_throughput_settings=dynamodb.CfnGlobalTable.WriteOnDemandThroughputSettingsProperty(
4304
4429
  max_write_request_units=123
4305
4430
  ),
@@ -4348,6 +4473,10 @@ class CfnGlobalTableProps:
4348
4473
  # the properties below are optional
4349
4474
  attribute_name="attributeName"
4350
4475
  ),
4476
+ warm_throughput=dynamodb.CfnGlobalTable.WarmThroughputProperty(
4477
+ read_units_per_second=123,
4478
+ write_units_per_second=123
4479
+ ),
4351
4480
  write_on_demand_throughput_settings=dynamodb.CfnGlobalTable.WriteOnDemandThroughputSettingsProperty(
4352
4481
  max_write_request_units=123
4353
4482
  ),
@@ -4382,6 +4511,7 @@ class CfnGlobalTableProps:
4382
4511
  check_type(argname="argument stream_specification", value=stream_specification, expected_type=type_hints["stream_specification"])
4383
4512
  check_type(argname="argument table_name", value=table_name, expected_type=type_hints["table_name"])
4384
4513
  check_type(argname="argument time_to_live_specification", value=time_to_live_specification, expected_type=type_hints["time_to_live_specification"])
4514
+ check_type(argname="argument warm_throughput", value=warm_throughput, expected_type=type_hints["warm_throughput"])
4385
4515
  check_type(argname="argument write_on_demand_throughput_settings", value=write_on_demand_throughput_settings, expected_type=type_hints["write_on_demand_throughput_settings"])
4386
4516
  check_type(argname="argument write_provisioned_throughput_settings", value=write_provisioned_throughput_settings, expected_type=type_hints["write_provisioned_throughput_settings"])
4387
4517
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -4403,6 +4533,8 @@ class CfnGlobalTableProps:
4403
4533
  self._values["table_name"] = table_name
4404
4534
  if time_to_live_specification is not None:
4405
4535
  self._values["time_to_live_specification"] = time_to_live_specification
4536
+ if warm_throughput is not None:
4537
+ self._values["warm_throughput"] = warm_throughput
4406
4538
  if write_on_demand_throughput_settings is not None:
4407
4539
  self._values["write_on_demand_throughput_settings"] = write_on_demand_throughput_settings
4408
4540
  if write_provisioned_throughput_settings is not None:
@@ -4550,13 +4682,23 @@ class CfnGlobalTableProps:
4550
4682
  result = self._values.get("time_to_live_specification")
4551
4683
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGlobalTable.TimeToLiveSpecificationProperty]], result)
4552
4684
 
4685
+ @builtins.property
4686
+ def warm_throughput(
4687
+ self,
4688
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGlobalTable.WarmThroughputProperty]]:
4689
+ '''
4690
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html#cfn-dynamodb-globaltable-warmthroughput
4691
+ '''
4692
+ result = self._values.get("warm_throughput")
4693
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGlobalTable.WarmThroughputProperty]], result)
4694
+
4553
4695
  @builtins.property
4554
4696
  def write_on_demand_throughput_settings(
4555
4697
  self,
4556
4698
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGlobalTable.WriteOnDemandThroughputSettingsProperty]]:
4557
4699
  '''Sets the write request settings for a global table or a global secondary index.
4558
4700
 
4559
- You must specify this setting if you set the ``BillingMode`` to ``PAY_PER_REQUEST`` .
4701
+ You can only specify this setting if your resource uses the ``PAY_PER_REQUEST`` ``BillingMode`` .
4560
4702
 
4561
4703
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-globaltable.html#cfn-dynamodb-globaltable-writeondemandthroughputsettings
4562
4704
  '''
@@ -4602,7 +4744,7 @@ class CfnTable(
4602
4744
 
4603
4745
  .. epigraph::
4604
4746
 
4605
- Our guidance is to use the latest schema documented here for your AWS CloudFormation templates. This schema supports the provisioning of all table settings below. When using this schema in your AWS CloudFormation templates, please ensure that your Identity and Access Management ( IAM ) policies are updated with appropriate permissions to allow for the authorization of these setting changes.
4747
+ Our guidance is to use the latest schema documented for your AWS CloudFormation templates. This schema supports the provisioning of all table settings below. When using this schema in your AWS CloudFormation templates, please ensure that your Identity and Access Management ( IAM ) policies are updated with appropriate permissions to allow for the authorization of these setting changes.
4606
4748
 
4607
4749
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html
4608
4750
  :cloudformationResource: AWS::DynamoDB::Table
@@ -4654,6 +4796,10 @@ class CfnTable(
4654
4796
  provisioned_throughput=dynamodb.CfnTable.ProvisionedThroughputProperty(
4655
4797
  read_capacity_units=123,
4656
4798
  write_capacity_units=123
4799
+ ),
4800
+ warm_throughput=dynamodb.CfnTable.WarmThroughputProperty(
4801
+ read_units_per_second=123,
4802
+ write_units_per_second=123
4657
4803
  )
4658
4804
  )],
4659
4805
  import_source_specification=dynamodb.CfnTable.ImportSourceSpecificationProperty(
@@ -4732,6 +4878,10 @@ class CfnTable(
4732
4878
 
4733
4879
  # the properties below are optional
4734
4880
  attribute_name="attributeName"
4881
+ ),
4882
+ warm_throughput=dynamodb.CfnTable.WarmThroughputProperty(
4883
+ read_units_per_second=123,
4884
+ write_units_per_second=123
4735
4885
  )
4736
4886
  )
4737
4887
  '''
@@ -4760,6 +4910,7 @@ class CfnTable(
4760
4910
  table_name: typing.Optional[builtins.str] = None,
4761
4911
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4762
4912
  time_to_live_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTable.TimeToLiveSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4913
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTable.WarmThroughputProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4763
4914
  ) -> None:
4764
4915
  '''
4765
4916
  :param scope: Scope in which this resource is defined.
@@ -4783,6 +4934,7 @@ class CfnTable(
4783
4934
  :param table_name: A name for the table. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the table name. For more information, see `Name Type <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html>`_ . .. epigraph:: If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
4784
4935
  :param tags: An array of key-value pairs to apply to this resource. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
4785
4936
  :param time_to_live_specification: Specifies the Time to Live (TTL) settings for the table. .. epigraph:: For detailed information about the limits in DynamoDB, see `Limits in Amazon DynamoDB <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html>`_ in the Amazon DynamoDB Developer Guide.
4937
+ :param warm_throughput:
4786
4938
  '''
4787
4939
  if __debug__:
4788
4940
  type_hints = typing.get_type_hints(_typecheckingstub__9c4a83992df200bfde2ccfe129994eeacab105432a2509473861feb736dd5ea6)
@@ -4808,6 +4960,7 @@ class CfnTable(
4808
4960
  table_name=table_name,
4809
4961
  tags=tags,
4810
4962
  time_to_live_specification=time_to_live_specification,
4963
+ warm_throughput=warm_throughput,
4811
4964
  )
4812
4965
 
4813
4966
  jsii.create(self.__class__, self, [scope, id, props])
@@ -5200,6 +5353,23 @@ class CfnTable(
5200
5353
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5201
5354
  jsii.set(self, "timeToLiveSpecification", value) # pyright: ignore[reportArgumentType]
5202
5355
 
5356
+ @builtins.property
5357
+ @jsii.member(jsii_name="warmThroughput")
5358
+ def warm_throughput(
5359
+ self,
5360
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.WarmThroughputProperty"]]:
5361
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.WarmThroughputProperty"]], jsii.get(self, "warmThroughput"))
5362
+
5363
+ @warm_throughput.setter
5364
+ def warm_throughput(
5365
+ self,
5366
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.WarmThroughputProperty"]],
5367
+ ) -> None:
5368
+ if __debug__:
5369
+ type_hints = typing.get_type_hints(_typecheckingstub__8eb093514d81ccb0743d4c6abe13c5421f3570760fac0d429feb8eb70cd70401)
5370
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5371
+ jsii.set(self, "warmThroughput", value) # pyright: ignore[reportArgumentType]
5372
+
5203
5373
  @jsii.data_type(
5204
5374
  jsii_type="aws-cdk-lib.aws_dynamodb.CfnTable.AttributeDefinitionProperty",
5205
5375
  jsii_struct_bases=[],
@@ -5418,6 +5588,7 @@ class CfnTable(
5418
5588
  "contributor_insights_specification": "contributorInsightsSpecification",
5419
5589
  "on_demand_throughput": "onDemandThroughput",
5420
5590
  "provisioned_throughput": "provisionedThroughput",
5591
+ "warm_throughput": "warmThroughput",
5421
5592
  },
5422
5593
  )
5423
5594
  class GlobalSecondaryIndexProperty:
@@ -5430,6 +5601,7 @@ class CfnTable(
5430
5601
  contributor_insights_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTable.ContributorInsightsSpecificationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5431
5602
  on_demand_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTable.OnDemandThroughputProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5432
5603
  provisioned_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTable.ProvisionedThroughputProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5604
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTable.WarmThroughputProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5433
5605
  ) -> None:
5434
5606
  '''Represents the properties of a global secondary index.
5435
5607
 
@@ -5439,6 +5611,7 @@ class CfnTable(
5439
5611
  :param contributor_insights_specification: The settings used to enable or disable CloudWatch Contributor Insights for the specified global secondary index.
5440
5612
  :param on_demand_throughput: The maximum number of read and write units for the specified global secondary index. If you use this parameter, you must specify ``MaxReadRequestUnits`` , ``MaxWriteRequestUnits`` , or both.
5441
5613
  :param provisioned_throughput: Represents the provisioned throughput settings for the specified global secondary index. For current minimum and maximum provisioned throughput values, see `Service, Account, and Table Quotas <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html>`_ in the *Amazon DynamoDB Developer Guide* .
5614
+ :param warm_throughput:
5442
5615
 
5443
5616
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-globalsecondaryindex.html
5444
5617
  :exampleMetadata: fixture=_generated
@@ -5471,6 +5644,10 @@ class CfnTable(
5471
5644
  provisioned_throughput=dynamodb.CfnTable.ProvisionedThroughputProperty(
5472
5645
  read_capacity_units=123,
5473
5646
  write_capacity_units=123
5647
+ ),
5648
+ warm_throughput=dynamodb.CfnTable.WarmThroughputProperty(
5649
+ read_units_per_second=123,
5650
+ write_units_per_second=123
5474
5651
  )
5475
5652
  )
5476
5653
  '''
@@ -5482,6 +5659,7 @@ class CfnTable(
5482
5659
  check_type(argname="argument contributor_insights_specification", value=contributor_insights_specification, expected_type=type_hints["contributor_insights_specification"])
5483
5660
  check_type(argname="argument on_demand_throughput", value=on_demand_throughput, expected_type=type_hints["on_demand_throughput"])
5484
5661
  check_type(argname="argument provisioned_throughput", value=provisioned_throughput, expected_type=type_hints["provisioned_throughput"])
5662
+ check_type(argname="argument warm_throughput", value=warm_throughput, expected_type=type_hints["warm_throughput"])
5485
5663
  self._values: typing.Dict[builtins.str, typing.Any] = {
5486
5664
  "index_name": index_name,
5487
5665
  "key_schema": key_schema,
@@ -5493,6 +5671,8 @@ class CfnTable(
5493
5671
  self._values["on_demand_throughput"] = on_demand_throughput
5494
5672
  if provisioned_throughput is not None:
5495
5673
  self._values["provisioned_throughput"] = provisioned_throughput
5674
+ if warm_throughput is not None:
5675
+ self._values["warm_throughput"] = warm_throughput
5496
5676
 
5497
5677
  @builtins.property
5498
5678
  def index_name(self) -> builtins.str:
@@ -5574,6 +5754,16 @@ class CfnTable(
5574
5754
  result = self._values.get("provisioned_throughput")
5575
5755
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.ProvisionedThroughputProperty"]], result)
5576
5756
 
5757
+ @builtins.property
5758
+ def warm_throughput(
5759
+ self,
5760
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.WarmThroughputProperty"]]:
5761
+ '''
5762
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-globalsecondaryindex.html#cfn-dynamodb-table-globalsecondaryindex-warmthroughput
5763
+ '''
5764
+ result = self._values.get("warm_throughput")
5765
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTable.WarmThroughputProperty"]], result)
5766
+
5577
5767
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
5578
5768
  return isinstance(rhs, self.__class__) and rhs._values == self._values
5579
5769
 
@@ -6789,6 +6979,76 @@ class CfnTable(
6789
6979
  k + "=" + repr(v) for k, v in self._values.items()
6790
6980
  )
6791
6981
 
6982
+ @jsii.data_type(
6983
+ jsii_type="aws-cdk-lib.aws_dynamodb.CfnTable.WarmThroughputProperty",
6984
+ jsii_struct_bases=[],
6985
+ name_mapping={
6986
+ "read_units_per_second": "readUnitsPerSecond",
6987
+ "write_units_per_second": "writeUnitsPerSecond",
6988
+ },
6989
+ )
6990
+ class WarmThroughputProperty:
6991
+ def __init__(
6992
+ self,
6993
+ *,
6994
+ read_units_per_second: typing.Optional[jsii.Number] = None,
6995
+ write_units_per_second: typing.Optional[jsii.Number] = None,
6996
+ ) -> None:
6997
+ '''
6998
+ :param read_units_per_second:
6999
+ :param write_units_per_second:
7000
+
7001
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-warmthroughput.html
7002
+ :exampleMetadata: fixture=_generated
7003
+
7004
+ Example::
7005
+
7006
+ # The code below shows an example of how to instantiate this type.
7007
+ # The values are placeholders you should change.
7008
+ from aws_cdk import aws_dynamodb as dynamodb
7009
+
7010
+ warm_throughput_property = dynamodb.CfnTable.WarmThroughputProperty(
7011
+ read_units_per_second=123,
7012
+ write_units_per_second=123
7013
+ )
7014
+ '''
7015
+ if __debug__:
7016
+ type_hints = typing.get_type_hints(_typecheckingstub__1ddf88a87c38a2c772533f42deb8bc496ef2b564e2f9605ed588471312d01306)
7017
+ check_type(argname="argument read_units_per_second", value=read_units_per_second, expected_type=type_hints["read_units_per_second"])
7018
+ check_type(argname="argument write_units_per_second", value=write_units_per_second, expected_type=type_hints["write_units_per_second"])
7019
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
7020
+ if read_units_per_second is not None:
7021
+ self._values["read_units_per_second"] = read_units_per_second
7022
+ if write_units_per_second is not None:
7023
+ self._values["write_units_per_second"] = write_units_per_second
7024
+
7025
+ @builtins.property
7026
+ def read_units_per_second(self) -> typing.Optional[jsii.Number]:
7027
+ '''
7028
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-warmthroughput.html#cfn-dynamodb-table-warmthroughput-readunitspersecond
7029
+ '''
7030
+ result = self._values.get("read_units_per_second")
7031
+ return typing.cast(typing.Optional[jsii.Number], result)
7032
+
7033
+ @builtins.property
7034
+ def write_units_per_second(self) -> typing.Optional[jsii.Number]:
7035
+ '''
7036
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-table-warmthroughput.html#cfn-dynamodb-table-warmthroughput-writeunitspersecond
7037
+ '''
7038
+ result = self._values.get("write_units_per_second")
7039
+ return typing.cast(typing.Optional[jsii.Number], result)
7040
+
7041
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
7042
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
7043
+
7044
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
7045
+ return not (rhs == self)
7046
+
7047
+ def __repr__(self) -> str:
7048
+ return "WarmThroughputProperty(%s)" % ", ".join(
7049
+ k + "=" + repr(v) for k, v in self._values.items()
7050
+ )
7051
+
6792
7052
 
6793
7053
  @jsii.data_type(
6794
7054
  jsii_type="aws-cdk-lib.aws_dynamodb.CfnTableProps",
@@ -6813,6 +7073,7 @@ class CfnTable(
6813
7073
  "table_name": "tableName",
6814
7074
  "tags": "tags",
6815
7075
  "time_to_live_specification": "timeToLiveSpecification",
7076
+ "warm_throughput": "warmThroughput",
6816
7077
  },
6817
7078
  )
6818
7079
  class CfnTableProps:
@@ -6838,6 +7099,7 @@ class CfnTableProps:
6838
7099
  table_name: typing.Optional[builtins.str] = None,
6839
7100
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
6840
7101
  time_to_live_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.TimeToLiveSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7102
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.WarmThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6841
7103
  ) -> None:
6842
7104
  '''Properties for defining a ``CfnTable``.
6843
7105
 
@@ -6860,6 +7122,7 @@ class CfnTableProps:
6860
7122
  :param table_name: A name for the table. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the table name. For more information, see `Name Type <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html>`_ . .. epigraph:: If you specify a name, you cannot perform updates that require replacement of this resource. You can perform updates that require no or some interruption. If you must replace the resource, specify a new name.
6861
7123
  :param tags: An array of key-value pairs to apply to this resource. For more information, see `Tag <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html>`_ .
6862
7124
  :param time_to_live_specification: Specifies the Time to Live (TTL) settings for the table. .. epigraph:: For detailed information about the limits in DynamoDB, see `Limits in Amazon DynamoDB <https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Limits.html>`_ in the Amazon DynamoDB Developer Guide.
7125
+ :param warm_throughput:
6863
7126
 
6864
7127
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html
6865
7128
  :exampleMetadata: fixture=_generated
@@ -6910,6 +7173,10 @@ class CfnTableProps:
6910
7173
  provisioned_throughput=dynamodb.CfnTable.ProvisionedThroughputProperty(
6911
7174
  read_capacity_units=123,
6912
7175
  write_capacity_units=123
7176
+ ),
7177
+ warm_throughput=dynamodb.CfnTable.WarmThroughputProperty(
7178
+ read_units_per_second=123,
7179
+ write_units_per_second=123
6913
7180
  )
6914
7181
  )],
6915
7182
  import_source_specification=dynamodb.CfnTable.ImportSourceSpecificationProperty(
@@ -6988,6 +7255,10 @@ class CfnTableProps:
6988
7255
 
6989
7256
  # the properties below are optional
6990
7257
  attribute_name="attributeName"
7258
+ ),
7259
+ warm_throughput=dynamodb.CfnTable.WarmThroughputProperty(
7260
+ read_units_per_second=123,
7261
+ write_units_per_second=123
6991
7262
  )
6992
7263
  )
6993
7264
  '''
@@ -7012,6 +7283,7 @@ class CfnTableProps:
7012
7283
  check_type(argname="argument table_name", value=table_name, expected_type=type_hints["table_name"])
7013
7284
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
7014
7285
  check_type(argname="argument time_to_live_specification", value=time_to_live_specification, expected_type=type_hints["time_to_live_specification"])
7286
+ check_type(argname="argument warm_throughput", value=warm_throughput, expected_type=type_hints["warm_throughput"])
7015
7287
  self._values: typing.Dict[builtins.str, typing.Any] = {
7016
7288
  "key_schema": key_schema,
7017
7289
  }
@@ -7051,6 +7323,8 @@ class CfnTableProps:
7051
7323
  self._values["tags"] = tags
7052
7324
  if time_to_live_specification is not None:
7053
7325
  self._values["time_to_live_specification"] = time_to_live_specification
7326
+ if warm_throughput is not None:
7327
+ self._values["warm_throughput"] = warm_throughput
7054
7328
 
7055
7329
  @builtins.property
7056
7330
  def key_schema(
@@ -7309,6 +7583,16 @@ class CfnTableProps:
7309
7583
  result = self._values.get("time_to_live_specification")
7310
7584
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnTable.TimeToLiveSpecificationProperty]], result)
7311
7585
 
7586
+ @builtins.property
7587
+ def warm_throughput(
7588
+ self,
7589
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnTable.WarmThroughputProperty]]:
7590
+ '''
7591
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html#cfn-dynamodb-table-warmthroughput
7592
+ '''
7593
+ result = self._values.get("warm_throughput")
7594
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnTable.WarmThroughputProperty]], result)
7595
+
7312
7596
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
7313
7597
  return isinstance(rhs, self.__class__) and rhs._values == self._values
7314
7598
 
@@ -9227,9 +9511,12 @@ class StreamViewType(enum.Enum):
9227
9511
  ),
9228
9512
  stream=dynamodb.StreamViewType.NEW_IMAGE
9229
9513
  )
9514
+
9230
9515
  fn.add_event_source(eventsources.DynamoEventSource(table,
9231
9516
  starting_position=lambda_.StartingPosition.LATEST,
9232
- filters=[lambda_.FilterCriteria.filter({"event_name": lambda_.FilterRule.is_equal("INSERT")})]
9517
+ metrics_config=lambda.MetricsConfig(
9518
+ metrics=[lambda_.MetricType.EVENT_COUNT]
9519
+ )
9233
9520
  ))
9234
9521
  '''
9235
9522
 
@@ -15028,6 +15315,7 @@ def _typecheckingstub__751414def1994180982879a700bdaa6afcf528def91a672904946db1b
15028
15315
  stream_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.StreamSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15029
15316
  table_name: typing.Optional[builtins.str] = None,
15030
15317
  time_to_live_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.TimeToLiveSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15318
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WarmThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15031
15319
  write_on_demand_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WriteOnDemandThroughputSettingsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15032
15320
  write_provisioned_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WriteProvisionedThroughputSettingsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15033
15321
  ) -> None:
@@ -15106,6 +15394,12 @@ def _typecheckingstub__0b2a71693eba1f1adfbaa4a2d1968a10f7e914f3714a169453fb5831d
15106
15394
  """Type checking stubs"""
15107
15395
  pass
15108
15396
 
15397
+ def _typecheckingstub__5cffa71e41723d2cc6240a56e0993116de480cb2c21c1c9bb92de9599718c4b2(
15398
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGlobalTable.WarmThroughputProperty]],
15399
+ ) -> None:
15400
+ """Type checking stubs"""
15401
+ pass
15402
+
15109
15403
  def _typecheckingstub__e9e1941bc70970aa12bf29b98d00fed94dd701aea1acb0d4280e0f96ab3ca8bc(
15110
15404
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGlobalTable.WriteOnDemandThroughputSettingsProperty]],
15111
15405
  ) -> None:
@@ -15148,6 +15442,7 @@ def _typecheckingstub__e4c0e93a19b9176fd628b4a4e5a1bb2ecabf4d1960e7d8fd138a1ecf0
15148
15442
  index_name: builtins.str,
15149
15443
  key_schema: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.KeySchemaProperty, typing.Dict[builtins.str, typing.Any]]]]],
15150
15444
  projection: typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.ProjectionProperty, typing.Dict[builtins.str, typing.Any]]],
15445
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WarmThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15151
15446
  write_on_demand_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WriteOnDemandThroughputSettingsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15152
15447
  write_provisioned_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WriteProvisionedThroughputSettingsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15153
15448
  ) -> None:
@@ -15292,6 +15587,14 @@ def _typecheckingstub__dcf0cf3bffc007a79dfc055873ae7915dea668a00f7752d51c421f918
15292
15587
  """Type checking stubs"""
15293
15588
  pass
15294
15589
 
15590
+ def _typecheckingstub__0b4a9630f73ba64974f75710b10a566fd0d88349b6d07fc41deb6fac3b443b29(
15591
+ *,
15592
+ read_units_per_second: typing.Optional[jsii.Number] = None,
15593
+ write_units_per_second: typing.Optional[jsii.Number] = None,
15594
+ ) -> None:
15595
+ """Type checking stubs"""
15596
+ pass
15597
+
15295
15598
  def _typecheckingstub__a74a3ac973b7df1320fab048c78a8197faf1684042be3f88a34a74adb99870fc(
15296
15599
  *,
15297
15600
  max_write_request_units: typing.Optional[jsii.Number] = None,
@@ -15318,6 +15621,7 @@ def _typecheckingstub__ca0383ad91536c26961e85e52a3e6a3d2d74db3c4d430cbbe3d9f42e2
15318
15621
  stream_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.StreamSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15319
15622
  table_name: typing.Optional[builtins.str] = None,
15320
15623
  time_to_live_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.TimeToLiveSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15624
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WarmThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15321
15625
  write_on_demand_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WriteOnDemandThroughputSettingsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15322
15626
  write_provisioned_throughput_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGlobalTable.WriteProvisionedThroughputSettingsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15323
15627
  ) -> None:
@@ -15347,6 +15651,7 @@ def _typecheckingstub__9c4a83992df200bfde2ccfe129994eeacab105432a2509473861feb73
15347
15651
  table_name: typing.Optional[builtins.str] = None,
15348
15652
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
15349
15653
  time_to_live_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.TimeToLiveSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15654
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.WarmThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15350
15655
  ) -> None:
15351
15656
  """Type checking stubs"""
15352
15657
  pass
@@ -15477,6 +15782,12 @@ def _typecheckingstub__13f09e3b5bed84728f44ababaa84b1754ef531ec7fc1a8800692ac3ee
15477
15782
  """Type checking stubs"""
15478
15783
  pass
15479
15784
 
15785
+ def _typecheckingstub__8eb093514d81ccb0743d4c6abe13c5421f3570760fac0d429feb8eb70cd70401(
15786
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnTable.WarmThroughputProperty]],
15787
+ ) -> None:
15788
+ """Type checking stubs"""
15789
+ pass
15790
+
15480
15791
  def _typecheckingstub__09c7a32c39444fb07dbb26b4ad1f9b87ad574421e0b12ac175c090173de657a3(
15481
15792
  *,
15482
15793
  attribute_name: builtins.str,
@@ -15508,6 +15819,7 @@ def _typecheckingstub__112c1b7034b42e59580b7feba43dc401f21ec329ca66e8612a1b056b0
15508
15819
  contributor_insights_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.ContributorInsightsSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15509
15820
  on_demand_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.OnDemandThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15510
15821
  provisioned_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.ProvisionedThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15822
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.WarmThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15511
15823
  ) -> None:
15512
15824
  """Type checking stubs"""
15513
15825
  pass
@@ -15626,6 +15938,14 @@ def _typecheckingstub__5d786558ff9ca543f7d0799e61bed247b8ecf13464a91bfd641c90c6a
15626
15938
  """Type checking stubs"""
15627
15939
  pass
15628
15940
 
15941
+ def _typecheckingstub__1ddf88a87c38a2c772533f42deb8bc496ef2b564e2f9605ed588471312d01306(
15942
+ *,
15943
+ read_units_per_second: typing.Optional[jsii.Number] = None,
15944
+ write_units_per_second: typing.Optional[jsii.Number] = None,
15945
+ ) -> None:
15946
+ """Type checking stubs"""
15947
+ pass
15948
+
15629
15949
  def _typecheckingstub__0b7f8e29621d526383ce725f2daafbe00b52cfe2381995edac86b72a6e301dd3(
15630
15950
  *,
15631
15951
  key_schema: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.KeySchemaProperty, typing.Dict[builtins.str, typing.Any]]]]],
@@ -15647,6 +15967,7 @@ def _typecheckingstub__0b7f8e29621d526383ce725f2daafbe00b52cfe2381995edac86b72a6
15647
15967
  table_name: typing.Optional[builtins.str] = None,
15648
15968
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
15649
15969
  time_to_live_specification: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.TimeToLiveSpecificationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15970
+ warm_throughput: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTable.WarmThroughputProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
15650
15971
  ) -> None:
15651
15972
  """Type checking stubs"""
15652
15973
  pass