@awboost/cfntypes 0.100.4 → 0.100.5

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.
@@ -2544,7 +2544,6 @@ export type ApiGatewayMethodIntegration = {
2544
2544
  /**
2545
2545
  * Custom timeout between 50 and 29,000 milliseconds. The default value is 29,000 milliseconds or 29 seconds.
2546
2546
  * @min `50`
2547
- * @max `29000`
2548
2547
  */
2549
2548
  TimeoutInMillis?: number;
2550
2549
  /**
@@ -9797,13 +9796,45 @@ export type ApplicationAutoScalingScalableTargetScalableTargetAction = {
9797
9796
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html}
9798
9797
  */
9799
9798
  export type ApplicationAutoScalingScalingPolicyProps = {
9799
+ /**
9800
+ * The name of the scaling policy.
9801
+
9802
+ Updates to the name of a target tracking scaling policy are not supported, unless you also update the metric used for scaling. To change only a target tracking scaling policy's name, first delete the policy by removing the existing AWS::ApplicationAutoScaling::ScalingPolicy resource from the template and updating the stack. Then, recreate the resource with the same settings and a different name.
9803
+ */
9800
9804
  PolicyName: string;
9805
+ /**
9806
+ * The scaling policy type.
9807
+
9808
+ The following policy types are supported:
9809
+
9810
+ TargetTrackingScaling Not supported for Amazon EMR
9811
+
9812
+ StepScaling Not supported for DynamoDB, Amazon Comprehend, Lambda, Amazon Keyspaces, Amazon MSK, Amazon ElastiCache, or Neptune.
9813
+ */
9801
9814
  PolicyType: string;
9815
+ /**
9816
+ * The identifier of the resource associated with the scaling policy. This string consists of the resource type and unique identifier.
9817
+ */
9802
9818
  ResourceId?: string;
9819
+ /**
9820
+ * The scalable dimension. This string consists of the service namespace, resource type, and scaling property.
9821
+ */
9803
9822
  ScalableDimension?: string;
9823
+ /**
9824
+ * The CloudFormation-generated ID of an Application Auto Scaling scalable target. For more information about the ID, see the Return Value section of the AWS::ApplicationAutoScaling::ScalableTarget resource.
9825
+ */
9804
9826
  ScalingTargetId?: string;
9827
+ /**
9828
+ * The namespace of the AWS service that provides the resource, or a custom-resource.
9829
+ */
9805
9830
  ServiceNamespace?: string;
9831
+ /**
9832
+ * A step scaling policy.
9833
+ */
9806
9834
  StepScalingPolicyConfiguration?: ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration;
9835
+ /**
9836
+ * A target tracking scaling policy.
9837
+ */
9807
9838
  TargetTrackingScalingPolicyConfiguration?: ApplicationAutoScalingScalingPolicyTargetTrackingScalingPolicyConfiguration;
9808
9839
  };
9809
9840
  /**
@@ -9812,65 +9843,223 @@ export type ApplicationAutoScalingScalingPolicyProps = {
9812
9843
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-applicationautoscaling-scalingpolicy.html}
9813
9844
  */
9814
9845
  export type ApplicationAutoScalingScalingPolicyAttributes = {
9815
- Id: string;
9846
+ /**
9847
+ * ARN is a read only property for the resource.
9848
+ */
9849
+ Arn: string;
9816
9850
  };
9817
9851
  /**
9818
9852
  * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.StepScalingPolicyConfiguration`.
9853
+ * A step scaling policy.
9819
9854
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration.html}
9820
9855
  */
9821
9856
  export type ApplicationAutoScalingScalingPolicyStepScalingPolicyConfiguration = {
9857
+ /**
9858
+ * Specifies how the ScalingAdjustment value in a StepAdjustment is interpreted.
9859
+ */
9822
9860
  AdjustmentType?: string;
9861
+ /**
9862
+ * The amount of time, in seconds, to wait for a previous scaling activity to take effect.
9863
+ */
9823
9864
  Cooldown?: number;
9865
+ /**
9866
+ * The aggregation type for the CloudWatch metrics. Valid values are Minimum, Maximum, and Average. If the aggregation type is null, the value is treated as Average
9867
+ */
9824
9868
  MetricAggregationType?: string;
9869
+ /**
9870
+ * The minimum value to scale by when the adjustment type is PercentChangeInCapacity.
9871
+ */
9825
9872
  MinAdjustmentMagnitude?: number;
9873
+ /**
9874
+ * A set of adjustments that enable you to scale based on the size of the alarm breach.
9875
+ */
9826
9876
  StepAdjustments?: ApplicationAutoScalingScalingPolicyStepAdjustment[];
9827
9877
  };
9828
9878
  /**
9829
9879
  * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingScalingPolicyConfiguration`.
9880
+ * A target tracking scaling policy.
9830
9881
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-targettrackingscalingpolicyconfiguration.html}
9831
9882
  */
9832
9883
  export type ApplicationAutoScalingScalingPolicyTargetTrackingScalingPolicyConfiguration = {
9884
+ /**
9885
+ * A customized metric. You can specify either a predefined metric or a customized metric.
9886
+ */
9833
9887
  CustomizedMetricSpecification?: ApplicationAutoScalingScalingPolicyCustomizedMetricSpecification;
9888
+ /**
9889
+ * Indicates whether scale in by the target tracking scaling policy is disabled. If the value is true, scale in is disabled and the target tracking scaling policy won't remove capacity from the scalable target. Otherwise, scale in is enabled and the target tracking scaling policy can remove capacity from the scalable target. The default value is false.
9890
+ */
9834
9891
  DisableScaleIn?: boolean;
9892
+ /**
9893
+ * A predefined metric. You can specify either a predefined metric or a customized metric.
9894
+ */
9835
9895
  PredefinedMetricSpecification?: ApplicationAutoScalingScalingPolicyPredefinedMetricSpecification;
9896
+ /**
9897
+ * The amount of time, in seconds, after a scale-in activity completes before another scale-in activity can start.
9898
+ */
9836
9899
  ScaleInCooldown?: number;
9900
+ /**
9901
+ * The amount of time, in seconds, to wait for a previous scale-out activity to take effect.
9902
+ */
9837
9903
  ScaleOutCooldown?: number;
9904
+ /**
9905
+ * The target value for the metric. Although this property accepts numbers of type Double, it won't accept values that are either too small or too large. Values must be in the range of -2^360 to 2^360. The value must be a valid number based on the choice of metric. For example, if the metric is CPU utilization, then the target value is a percent value that represents how much of the CPU can be used before scaling out.
9906
+ */
9838
9907
  TargetValue: number;
9839
9908
  };
9840
9909
  /**
9841
9910
  * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.PredefinedMetricSpecification`.
9911
+ * Represents a predefined metric for a target tracking scaling policy to use with Application Auto Scaling.
9842
9912
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-predefinedmetricspecification.html}
9843
9913
  */
9844
9914
  export type ApplicationAutoScalingScalingPolicyPredefinedMetricSpecification = {
9915
+ /**
9916
+ * The metric type. The ALBRequestCountPerTarget metric type applies only to Spot Fleets and ECS services.
9917
+ */
9845
9918
  PredefinedMetricType: string;
9919
+ /**
9920
+ * Identifies the resource associated with the metric type. You can't specify a resource label unless the metric type is ALBRequestCountPerTarget and there is a target group attached to the Spot Fleet or ECS service.
9921
+ */
9846
9922
  ResourceLabel?: string;
9847
9923
  };
9848
9924
  /**
9849
9925
  * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.CustomizedMetricSpecification`.
9926
+ * Represents a CloudWatch metric of your choosing for a target tracking scaling policy to use with Application Auto Scaling.
9850
9927
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-customizedmetricspecification.html}
9851
9928
  */
9852
9929
  export type ApplicationAutoScalingScalingPolicyCustomizedMetricSpecification = {
9930
+ /**
9931
+ * The dimensions of the metric.
9932
+ */
9853
9933
  Dimensions?: ApplicationAutoScalingScalingPolicyMetricDimension[];
9854
- MetricName: string;
9855
- Namespace: string;
9856
- Statistic: string;
9934
+ /**
9935
+ * The name of the metric. To get the exact metric name, namespace, and dimensions, inspect the Metric object that is returned by a call to ListMetrics.
9936
+ */
9937
+ MetricName?: string;
9938
+ /**
9939
+ * The namespace of the metric.
9940
+ */
9941
+ Namespace?: string;
9942
+ /**
9943
+ * The statistic of the metric.
9944
+ */
9945
+ Statistic?: string;
9946
+ /**
9947
+ * The unit of the metric. For a complete list of the units that CloudWatch supports, see the MetricDatum data type in the Amazon CloudWatch API Reference.
9948
+ */
9949
+ Unit?: string;
9950
+ /**
9951
+ * The metrics to include in the target tracking scaling policy, as a metric data query. This can include both raw metric and metric math expressions.
9952
+ */
9953
+ Metrics?: ApplicationAutoScalingScalingPolicyTargetTrackingMetricDataQuery[];
9954
+ };
9955
+ /**
9956
+ * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingMetricDataQuery`.
9957
+ * The metric data to return. Also defines whether this call is returning data for one metric only, or whether it is performing a math expression on the values of returned metric statistics to create a new time series. A time series is a series of data points, each of which is associated with a timestamp.
9958
+ */
9959
+ export type ApplicationAutoScalingScalingPolicyTargetTrackingMetricDataQuery = {
9960
+ /**
9961
+ * The math expression to perform on the returned data, if this object is performing a math expression.
9962
+ */
9963
+ Expression?: string;
9964
+ /**
9965
+ * A short name that identifies the object's results in the response.
9966
+ */
9967
+ Id?: string;
9968
+ /**
9969
+ * A human-readable label for this metric or expression. This is especially useful if this is a math expression, so that you know what the value represents.
9970
+ */
9971
+ Label?: string;
9972
+ /**
9973
+ * Indicates whether to return the timestamps and raw data values of this metric.
9974
+ */
9975
+ ReturnData?: boolean;
9976
+ /**
9977
+ * Information about the metric data to return.
9978
+ */
9979
+ MetricStat?: ApplicationAutoScalingScalingPolicyTargetTrackingMetricStat;
9980
+ };
9981
+ /**
9982
+ * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingMetricStat`.
9983
+ * This structure defines the CloudWatch metric to return, along with the statistic, period, and unit.
9984
+ */
9985
+ export type ApplicationAutoScalingScalingPolicyTargetTrackingMetricStat = {
9986
+ /**
9987
+ * The CloudWatch metric to return, including the metric name, namespace, and dimensions.
9988
+ */
9989
+ Metric?: ApplicationAutoScalingScalingPolicyTargetTrackingMetric;
9990
+ /**
9991
+ * The statistic to return. It can include any CloudWatch statistic or extended statistic.
9992
+ */
9993
+ Stat?: string;
9994
+ /**
9995
+ * The unit to use for the returned data points.
9996
+ */
9857
9997
  Unit?: string;
9858
9998
  };
9999
+ /**
10000
+ * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingMetric`.
10001
+ * Represents a specific metric.
10002
+ */
10003
+ export type ApplicationAutoScalingScalingPolicyTargetTrackingMetric = {
10004
+ /**
10005
+ * The dimensions for the metric.
10006
+ */
10007
+ Dimensions?: ApplicationAutoScalingScalingPolicyTargetTrackingMetricDimension[];
10008
+ /**
10009
+ * The name of the metric.
10010
+ */
10011
+ MetricName?: string;
10012
+ /**
10013
+ * The namespace of the metric.
10014
+ */
10015
+ Namespace?: string;
10016
+ };
10017
+ /**
10018
+ * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.TargetTrackingMetricDimension`.
10019
+ * Describes the dimension of a metric.
10020
+ */
10021
+ export type ApplicationAutoScalingScalingPolicyTargetTrackingMetricDimension = {
10022
+ /**
10023
+ * The name of the dimension.
10024
+ */
10025
+ Name?: string;
10026
+ /**
10027
+ * The value of the dimension.
10028
+ */
10029
+ Value?: string;
10030
+ };
9859
10031
  /**
9860
10032
  * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.StepAdjustment`.
10033
+ * Represents a step adjustment for a StepScalingPolicyConfiguration. Describes an adjustment based on the difference between the value of the aggregated CloudWatch metric and the breach threshold that you've defined for the alarm.
9861
10034
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-stepscalingpolicyconfiguration-stepadjustment.html}
9862
10035
  */
9863
10036
  export type ApplicationAutoScalingScalingPolicyStepAdjustment = {
10037
+ /**
10038
+ * The lower bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the lower bound is inclusive (the metric must be greater than or equal to the threshold plus the lower bound). Otherwise, it is exclusive (the metric must be greater than the threshold plus the lower bound). A null value indicates negative infinity.
10039
+ */
9864
10040
  MetricIntervalLowerBound?: number;
10041
+ /**
10042
+ * The upper bound for the difference between the alarm threshold and the CloudWatch metric. If the metric value is above the breach threshold, the upper bound is exclusive (the metric must be less than the threshold plus the upper bound). Otherwise, it is inclusive (the metric must be less than or equal to the threshold plus the upper bound). A null value indicates positive infinity.
10043
+ */
9865
10044
  MetricIntervalUpperBound?: number;
10045
+ /**
10046
+ * The amount by which to scale, based on the specified adjustment type. A positive value adds to the current capacity while a negative number removes from the current capacity. For exact capacity, you must specify a positive value.
10047
+ */
9866
10048
  ScalingAdjustment: number;
9867
10049
  };
9868
10050
  /**
9869
10051
  * Type definition for `AWS::ApplicationAutoScaling::ScalingPolicy.MetricDimension`.
10052
+ * Describes the dimension names and values associated with a metric.
9870
10053
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-applicationautoscaling-scalingpolicy-metricdimension.html}
9871
10054
  */
9872
10055
  export type ApplicationAutoScalingScalingPolicyMetricDimension = {
10056
+ /**
10057
+ * The name of the dimension.
10058
+ */
9873
10059
  Name: string;
10060
+ /**
10061
+ * The value of the dimension.
10062
+ */
9874
10063
  Value: string;
9875
10064
  };
9876
10065
  /**
@@ -11084,6 +11273,7 @@ export type AutoScalingAutoScalingGroupProps = {
11084
11273
  AvailabilityZones?: string[];
11085
11274
  NotificationConfiguration?: AutoScalingAutoScalingGroupNotificationConfiguration;
11086
11275
  MetricsCollection?: AutoScalingAutoScalingGroupMetricsCollection[];
11276
+ InstanceMaintenancePolicy?: AutoScalingAutoScalingGroupInstanceMaintenancePolicy;
11087
11277
  /**
11088
11278
  * @pattern `^[0-9]+$`
11089
11279
  */
@@ -11190,6 +11380,13 @@ export type AutoScalingAutoScalingGroupMemoryMiBRequest = {
11190
11380
  Min?: number;
11191
11381
  Max?: number;
11192
11382
  };
11383
+ /**
11384
+ * Type definition for `AWS::AutoScaling::AutoScalingGroup.InstanceMaintenancePolicy`.
11385
+ */
11386
+ export type AutoScalingAutoScalingGroupInstanceMaintenancePolicy = {
11387
+ MaxHealthyPercentage?: number;
11388
+ MinHealthyPercentage?: number;
11389
+ };
11193
11390
  /**
11194
11391
  * Type definition for `AWS::AutoScaling::AutoScalingGroup.NetworkBandwidthGbpsRequest`.
11195
11392
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-autoscaling-autoscalinggroup-networkbandwidthgbpsrequest.html}
@@ -16796,116 +16993,78 @@ export type CloudTrailChannelTag = {
16796
16993
  };
16797
16994
  /**
16798
16995
  * Type definition for `AWS::CloudTrail::EventDataStore`.
16799
- * A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 90 to 2555 days (about three months to up to seven years).
16996
+ * A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 7 to 2557 or 3653 days (about seven or ten years) depending on the selected BillingMode.
16800
16997
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-eventdatastore.html}
16801
16998
  */
16802
16999
  export type CloudTrailEventDataStoreProps = {
16803
- /**
16804
- * Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The value can be an alias name prefixed by 'alias/', a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier.
16805
- */
16806
- KmsKeyId?: string;
16807
17000
  /**
16808
17001
  * The advanced event selectors that were used to select events for the data store.
16809
17002
  */
16810
17003
  AdvancedEventSelectors?: CloudTrailEventDataStoreAdvancedEventSelector[];
16811
- /**
16812
- * Indicates whether the event data store is protected from termination.
16813
- */
16814
- TerminationProtectionEnabled?: boolean;
16815
17004
  /**
16816
17005
  * Indicates whether the event data store includes events from all regions, or only from the region in which it was created.
16817
17006
  */
16818
17007
  MultiRegionEnabled?: boolean;
17008
+ /**
17009
+ * The name of the event data store.
17010
+ */
17011
+ Name?: string;
17012
+ /**
17013
+ * Indicates that an event data store is collecting logged events for an organization.
17014
+ */
17015
+ OrganizationEnabled?: boolean;
17016
+ /**
17017
+ * The mode that the event data store will use to charge for event storage.
17018
+ */
17019
+ BillingMode?: string;
16819
17020
  /**
16820
17021
  * The retention period, in days.
16821
17022
  */
16822
17023
  RetentionPeriod?: number;
16823
17024
  /**
16824
- * Indicates whether the event data store is ingesting events.
17025
+ * Indicates whether the event data store is protected from termination.
16825
17026
  */
16826
- IngestionEnabled?: boolean;
17027
+ TerminationProtectionEnabled?: boolean;
16827
17028
  /**
16828
- * The name of the event data store.
17029
+ * Specifies the KMS key ID to use to encrypt the events delivered by CloudTrail. The value can be an alias name prefixed by 'alias/', a fully specified ARN to an alias, a fully specified ARN to a key, or a globally unique identifier.
16829
17030
  */
16830
- Name?: string;
17031
+ KmsKeyId?: string;
17032
+ Tags?: CloudTrailEventDataStoreTag[];
16831
17033
  /**
16832
17034
  * Lets you enable Insights event logging by specifying the Insights selectors that you want to enable on an existing event data store. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store.
16833
17035
  */
16834
17036
  InsightSelectors?: CloudTrailEventDataStoreInsightSelector[];
16835
- /**
16836
- * Indicates that an event data store is collecting logged events for an organization.
16837
- */
16838
- OrganizationEnabled?: boolean;
16839
17037
  /**
16840
17038
  * Specifies the ARN of the event data store that will collect Insights events. Both InsightSelectors and InsightsDestination need to have a value in order to enable Insights events on an event data store
16841
17039
  */
16842
17040
  InsightsDestination?: string;
16843
- Tags?: CloudTrailEventDataStoreTag[];
17041
+ /**
17042
+ * Indicates whether the event data store is ingesting events.
17043
+ */
17044
+ IngestionEnabled?: boolean;
16844
17045
  };
16845
17046
  /**
16846
17047
  * Type definition for `AWS::CloudTrail::EventDataStore`.
16847
- * A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 90 to 2555 days (about three months to up to seven years).
17048
+ * A storage lake of event data against which you can run complex SQL-based queries. An event data store can include events that you have logged on your account from the last 7 to 2557 or 3653 days (about seven or ten years) depending on the selected BillingMode.
16848
17049
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudtrail-eventdatastore.html}
16849
17050
  */
16850
17051
  export type CloudTrailEventDataStoreAttributes = {
16851
- /**
16852
- * The status of an event data store. Values are STARTING_INGESTION, ENABLED, STOPPING_INGESTION, STOPPED_INGESTION and PENDING_DELETION.
16853
- */
16854
- Status: string;
16855
- /**
16856
- * The timestamp showing when an event data store was updated, if applicable. UpdatedTimestamp is always either the same or newer than the time shown in CreatedTimestamp.
16857
- */
16858
- UpdatedTimestamp: string;
16859
- /**
16860
- * The ARN of the event data store.
16861
- */
16862
- EventDataStoreArn: string;
16863
17052
  /**
16864
17053
  * The timestamp of the event data store's creation.
16865
17054
  */
16866
17055
  CreatedTimestamp: string;
16867
- };
16868
- /**
16869
- * Type definition for `AWS::CloudTrail::EventDataStore.AdvancedEventSelector`.
16870
- * Advanced event selectors let you create fine-grained selectors for the following AWS CloudTrail event record fields. They help you control costs by logging only those events that are important to you.
16871
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-eventdatastore-advancedeventselector.html}
16872
- */
16873
- export type CloudTrailEventDataStoreAdvancedEventSelector = {
16874
17056
  /**
16875
- * Contains all selector statements in an advanced event selector.
16876
- * @minLength `1`
16877
- */
16878
- FieldSelectors: CloudTrailEventDataStoreAdvancedFieldSelector[];
16879
- /**
16880
- * An optional, descriptive name for an advanced event selector, such as "Log data events for only two S3 buckets".
16881
- * @minLength `1`
16882
- * @maxLength `1000`
16883
- */
16884
- Name?: string;
16885
- };
16886
- /**
16887
- * Type definition for `AWS::CloudTrail::EventDataStore.InsightSelector`.
16888
- * A string that contains Insights types that are logged on an event data store.
16889
- */
16890
- export type CloudTrailEventDataStoreInsightSelector = {
16891
- /**
16892
- * The type of Insights to log on an event data store.
17057
+ * The ARN of the event data store.
16893
17058
  */
16894
- InsightType?: string;
16895
- };
16896
- /**
16897
- * Type definition for `AWS::CloudTrail::EventDataStore.Tag`.
16898
- * An arbitrary set of tags (key-value pairs) for this event data store.
16899
- */
16900
- export type CloudTrailEventDataStoreTag = {
17059
+ EventDataStoreArn: string;
16901
17060
  /**
16902
- * The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
17061
+ * The status of an event data store. Values are STARTING_INGESTION, ENABLED, STOPPING_INGESTION, STOPPED_INGESTION and PENDING_DELETION.
16903
17062
  */
16904
- Value: string;
17063
+ Status: string;
16905
17064
  /**
16906
- * The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
17065
+ * The timestamp showing when an event data store was updated, if applicable. UpdatedTimestamp is always either the same or newer than the time shown in CreatedTimestamp.
16907
17066
  */
16908
- Key: string;
17067
+ UpdatedTimestamp: string;
16909
17068
  };
16910
17069
  /**
16911
17070
  * Type definition for `AWS::CloudTrail::EventDataStore.AdvancedFieldSelector`.
@@ -16925,6 +17084,21 @@ export type CloudTrailEventDataStoreAdvancedFieldSelector = {
16925
17084
  * @minLength `1`
16926
17085
  */
16927
17086
  Equals?: string[];
17087
+ /**
17088
+ * An operator that includes events that match the first few characters of the event record field specified as the value of Field.
17089
+ * @minLength `1`
17090
+ */
17091
+ StartsWith?: string[];
17092
+ /**
17093
+ * An operator that includes events that match the last few characters of the event record field specified as the value of Field.
17094
+ * @minLength `1`
17095
+ */
17096
+ EndsWith?: string[];
17097
+ /**
17098
+ * An operator that excludes events that match the exact value of the event record field specified as the value of Field.
17099
+ * @minLength `1`
17100
+ */
17101
+ NotEquals?: string[];
16928
17102
  /**
16929
17103
  * An operator that excludes events that match the first few characters of the event record field specified as the value of Field.
16930
17104
  * @minLength `1`
@@ -16935,21 +17109,48 @@ export type CloudTrailEventDataStoreAdvancedFieldSelector = {
16935
17109
  * @minLength `1`
16936
17110
  */
16937
17111
  NotEndsWith?: string[];
17112
+ };
17113
+ /**
17114
+ * Type definition for `AWS::CloudTrail::EventDataStore.AdvancedEventSelector`.
17115
+ * Advanced event selectors let you create fine-grained selectors for the following AWS CloudTrail event record fields. They help you control costs by logging only those events that are important to you.
17116
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudtrail-eventdatastore-advancedeventselector.html}
17117
+ */
17118
+ export type CloudTrailEventDataStoreAdvancedEventSelector = {
16938
17119
  /**
16939
- * An operator that includes events that match the first few characters of the event record field specified as the value of Field.
17120
+ * An optional, descriptive name for an advanced event selector, such as "Log data events for only two S3 buckets".
16940
17121
  * @minLength `1`
17122
+ * @maxLength `1000`
16941
17123
  */
16942
- StartsWith?: string[];
17124
+ Name?: string;
16943
17125
  /**
16944
- * An operator that includes events that match the last few characters of the event record field specified as the value of Field.
17126
+ * Contains all selector statements in an advanced event selector.
16945
17127
  * @minLength `1`
16946
17128
  */
16947
- EndsWith?: string[];
17129
+ FieldSelectors: CloudTrailEventDataStoreAdvancedFieldSelector[];
17130
+ };
17131
+ /**
17132
+ * Type definition for `AWS::CloudTrail::EventDataStore.Tag`.
17133
+ * An arbitrary set of tags (key-value pairs) for this event data store.
17134
+ */
17135
+ export type CloudTrailEventDataStoreTag = {
16948
17136
  /**
16949
- * An operator that excludes events that match the exact value of the event record field specified as the value of Field.
16950
- * @minLength `1`
17137
+ * The key name of the tag. You can specify a value that is 1 to 127 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
16951
17138
  */
16952
- NotEquals?: string[];
17139
+ Key: string;
17140
+ /**
17141
+ * The value for the tag. You can specify a value that is 1 to 255 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
17142
+ */
17143
+ Value: string;
17144
+ };
17145
+ /**
17146
+ * Type definition for `AWS::CloudTrail::EventDataStore.InsightSelector`.
17147
+ * A string that contains Insights types that are logged on an event data store.
17148
+ */
17149
+ export type CloudTrailEventDataStoreInsightSelector = {
17150
+ /**
17151
+ * The type of Insights to log on an event data store.
17152
+ */
17153
+ InsightType?: string;
16953
17154
  };
16954
17155
  /**
16955
17156
  * Type definition for `AWS::CloudTrail::ResourcePolicy`.
@@ -29874,8 +30075,8 @@ export type EC2EC2FleetInstanceRequirementsRequest = {
29874
30075
  BaselineEbsBandwidthMbps?: EC2EC2FleetBaselineEbsBandwidthMbpsRequest;
29875
30076
  AcceleratorTypes?: ("gpu" | "fpga" | "inference")[];
29876
30077
  AcceleratorCount?: EC2EC2FleetAcceleratorCountRequest;
29877
- AcceleratorManufacturers?: ("nvidia" | "amd" | "amazon-web-services" | "xilinx")[];
29878
- AcceleratorNames?: ("a100" | "v100" | "k80" | "t4" | "m60" | "radeon-pro-v520" | "vu9p" | "inferentia" | "k520")[];
30078
+ AcceleratorManufacturers?: ("amazon-web-services" | "amd" | "habana" | "nvidia" | "xilinx")[];
30079
+ AcceleratorNames?: ("a10g" | "a100" | "h100" | "inferentia" | "k520" | "k80" | "m60" | "radeon-pro-v520" | "t4" | "t4g" | "vu9p" | "v100")[];
29879
30080
  AcceleratorTotalMemoryMiB?: EC2EC2FleetAcceleratorTotalMemoryMiBRequest;
29880
30081
  };
29881
30082
  /**
@@ -31392,6 +31593,20 @@ export type EC2LaunchTemplateIpv4PrefixSpecification = {
31392
31593
  */
31393
31594
  Ipv4Prefix?: string;
31394
31595
  };
31596
+ /**
31597
+ * Type definition for `AWS::EC2::LaunchTemplate.EnaSrdSpecification`.
31598
+ * Allows customer to specify ENA-SRD options
31599
+ */
31600
+ export type EC2LaunchTemplateEnaSrdSpecification = {
31601
+ /**
31602
+ * Enables TCP ENA-SRD
31603
+ */
31604
+ EnaSrdEnabled?: boolean;
31605
+ /**
31606
+ * Allows customer to specify ENA-SRD (UDP) options
31607
+ */
31608
+ EnaSrdUdpSpecification?: EC2LaunchTemplateEnaSrdUdpSpecification;
31609
+ };
31395
31610
  /**
31396
31611
  * Type definition for `AWS::EC2::LaunchTemplate.Placement`.
31397
31612
  * Specifies the placement of an instance.
@@ -31701,6 +31916,10 @@ export type EC2LaunchTemplateNetworkInterface = {
31701
31916
  * Indicates whether to associate a Carrier IP address with eth0 for a new network interface.
31702
31917
  */
31703
31918
  AssociateCarrierIpAddress?: boolean;
31919
+ /**
31920
+ * Allows customer to specify ENA-SRD options
31921
+ */
31922
+ EnaSrdSpecification?: EC2LaunchTemplateEnaSrdSpecification;
31704
31923
  /**
31705
31924
  * The number of IPv6 addresses to assign to a network interface.
31706
31925
  */
@@ -31786,6 +32005,16 @@ export type EC2LaunchTemplateTagSpecification = {
31786
32005
  */
31787
32006
  Tags?: EC2LaunchTemplateTag[];
31788
32007
  };
32008
+ /**
32009
+ * Type definition for `AWS::EC2::LaunchTemplate.EnaSrdUdpSpecification`.
32010
+ * Allows customer to specify ENA-SRD (UDP) options
32011
+ */
32012
+ export type EC2LaunchTemplateEnaSrdUdpSpecification = {
32013
+ /**
32014
+ * Enables UDP ENA-SRD
32015
+ */
32016
+ EnaSrdUdpEnabled?: boolean;
32017
+ };
31789
32018
  /**
31790
32019
  * Type definition for `AWS::EC2::LaunchTemplate.NetworkBandwidthGbps`.
31791
32020
  * The minimum and maximum amount of network bandwidth, in gigabits per second (Gbps).
@@ -33604,8 +33833,8 @@ export type EC2SpotFleetInstanceRequirementsRequest = {
33604
33833
  BaselineEbsBandwidthMbps?: EC2SpotFleetBaselineEbsBandwidthMbpsRequest;
33605
33834
  AcceleratorTypes?: ("gpu" | "fpga" | "inference")[];
33606
33835
  AcceleratorCount?: EC2SpotFleetAcceleratorCountRequest;
33607
- AcceleratorManufacturers?: ("nvidia" | "amd" | "amazon-web-services" | "xilinx")[];
33608
- AcceleratorNames?: ("a100" | "v100" | "k80" | "t4" | "m60" | "radeon-pro-v520" | "vu9p" | "inferentia" | "k520")[];
33836
+ AcceleratorManufacturers?: ("amazon-web-services" | "amd" | "habana" | "nvidia" | "xilinx")[];
33837
+ AcceleratorNames?: ("a10g" | "a100" | "h100" | "inferentia" | "k520" | "k80" | "m60" | "radeon-pro-v520" | "t4" | "t4g" | "vu9p" | "v100")[];
33609
33838
  AcceleratorTotalMemoryMiB?: EC2SpotFleetAcceleratorTotalMemoryMiBRequest;
33610
33839
  };
33611
33840
  /**
@@ -35661,18 +35890,29 @@ export type ECRPullThroughCacheRuleProps = {
35661
35890
  /**
35662
35891
  * The ECRRepositoryPrefix is a custom alias for upstream registry url.
35663
35892
  * @minLength `2`
35664
- * @maxLength `20`
35665
- * @pattern `^([a-z0-9]+(?:[._-][a-z0-9]+)*)$`
35893
+ * @maxLength `30`
35894
+ * @pattern `(?:[a-z0-9]+(?:[._-][a-z0-9]+)/‍*)*[a-z0-9]+(?:[._-][a-z0-9]+)*`
35666
35895
  */
35667
35896
  EcrRepositoryPrefix?: string;
35668
35897
  /**
35669
35898
  * The upstreamRegistryUrl is the endpoint of upstream registry url of the public repository to be cached
35670
35899
  */
35671
35900
  UpstreamRegistryUrl?: string;
35901
+ /**
35902
+ * The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that identifies the credentials to authenticate to the upstream registry.
35903
+ * @minLength `50`
35904
+ * @maxLength `612`
35905
+ * @pattern `^arn:aws:secretsmanager:[a-zA-Z0-9-:]+:secret:ecr\-pullthroughcache\/[a-zA-Z0-9\/_+=.@-]+$`
35906
+ */
35907
+ CredentialArn?: string;
35908
+ /**
35909
+ * The name of the upstream registry.
35910
+ */
35911
+ UpstreamRegistry?: string;
35672
35912
  };
35673
35913
  /**
35674
35914
  * Type definition for `AWS::ECR::PullThroughCacheRule.PullThroughCacheRule`.
35675
- * @maxLength `25`
35915
+ * @maxLength `50`
35676
35916
  */
35677
35917
  export type ECRPullThroughCacheRulePullThroughCacheRule = {
35678
35918
  /**
@@ -35683,14 +35923,25 @@ export type ECRPullThroughCacheRulePullThroughCacheRule = {
35683
35923
  /**
35684
35924
  * The ECRRepositoryPrefix is a custom alias for upstream registry url.
35685
35925
  * @minLength `2`
35686
- * @maxLength `20`
35687
- * @pattern `^([a-z0-9]+(?:[._-][a-z0-9]+)*)$`
35926
+ * @maxLength `30`
35927
+ * @pattern `(?:[a-z0-9]+(?:[._-][a-z0-9]+)/‍*)*[a-z0-9]+(?:[._-][a-z0-9]+)*`
35688
35928
  */
35689
35929
  EcrRepositoryPrefix: string;
35690
35930
  /**
35691
35931
  * The upstreamRegistryUrl is the endpoint of upstream registry url of the public repository to be cached
35692
35932
  */
35693
35933
  UpstreamRegistryUrl: string;
35934
+ /**
35935
+ * The Amazon Resource Name (ARN) of the AWS Secrets Manager secret that identifies the credentials to authenticate to the upstream registry.
35936
+ * @minLength `50`
35937
+ * @maxLength `612`
35938
+ * @pattern `^arn:aws:secretsmanager:[a-zA-Z0-9-:]+:secret:ecr\-pullthroughcache\/[a-zA-Z0-9\/_+=.@-]+$`
35939
+ */
35940
+ CredentialArn?: string;
35941
+ /**
35942
+ * The name of the upstream registry.
35943
+ */
35944
+ UpstreamRegistry?: string;
35694
35945
  };
35695
35946
  /**
35696
35947
  * Type definition for `AWS::ECR::RegistryPolicy`.
@@ -36990,21 +37241,21 @@ export type EFSAccessPointPosixUser = {
36990
37241
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-efs-filesystem.html}
36991
37242
  */
36992
37243
  export type EFSFileSystemProps = {
36993
- Encrypted?: boolean;
36994
- FileSystemTags?: EFSFileSystemElasticFileSystemTag[];
36995
37244
  KmsKeyId?: string;
36996
- LifecyclePolicies?: EFSFileSystemLifecyclePolicy[];
36997
37245
  PerformanceMode?: string;
36998
- ProvisionedThroughputInMibps?: number;
36999
- ThroughputMode?: string;
37000
- FileSystemPolicy?: any;
37246
+ Encrypted?: boolean;
37001
37247
  /**
37002
37248
  * Whether to bypass the FileSystemPolicy lockout safety check. The policy lockout safety check determines whether the policy in the request will prevent the principal making the request to be locked out from making future PutFileSystemPolicy requests on the file system. Set BypassPolicyLockoutSafetyCheck to True only when you intend to prevent the principal that is making the request from making a subsequent PutFileSystemPolicy request on the file system. Defaults to false
37003
37249
  */
37004
37250
  BypassPolicyLockoutSafetyCheck?: boolean;
37005
- BackupPolicy?: EFSFileSystemBackupPolicy;
37251
+ LifecyclePolicies?: EFSFileSystemLifecyclePolicy[];
37252
+ ThroughputMode?: string;
37253
+ FileSystemTags?: EFSFileSystemElasticFileSystemTag[];
37254
+ ProvisionedThroughputInMibps?: number;
37255
+ FileSystemPolicy?: any;
37006
37256
  AvailabilityZoneName?: string;
37007
37257
  ReplicationConfiguration?: EFSFileSystemReplicationConfiguration;
37258
+ BackupPolicy?: EFSFileSystemBackupPolicy;
37008
37259
  };
37009
37260
  /**
37010
37261
  * Type definition for `AWS::EFS::FileSystem`.
@@ -37016,12 +37267,14 @@ export type EFSFileSystemAttributes = {
37016
37267
  Arn: string;
37017
37268
  };
37018
37269
  /**
37019
- * Type definition for `AWS::EFS::FileSystem.ElasticFileSystemTag`.
37020
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-elasticfilesystemtag.html}
37270
+ * Type definition for `AWS::EFS::FileSystem.ReplicationDestination`.
37271
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html}
37021
37272
  */
37022
- export type EFSFileSystemElasticFileSystemTag = {
37023
- Key: string;
37024
- Value: string;
37273
+ export type EFSFileSystemReplicationDestination = {
37274
+ KmsKeyId?: string;
37275
+ AvailabilityZoneName?: string;
37276
+ FileSystemId?: string;
37277
+ Region?: string;
37025
37278
  };
37026
37279
  /**
37027
37280
  * Type definition for `AWS::EFS::FileSystem.LifecyclePolicy`.
@@ -37032,21 +37285,12 @@ export type EFSFileSystemLifecyclePolicy = {
37032
37285
  TransitionToPrimaryStorageClass?: string;
37033
37286
  };
37034
37287
  /**
37035
- * Type definition for `AWS::EFS::FileSystem.BackupPolicy`.
37036
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-backuppolicy.html}
37037
- */
37038
- export type EFSFileSystemBackupPolicy = {
37039
- Status: string;
37040
- };
37041
- /**
37042
- * Type definition for `AWS::EFS::FileSystem.ReplicationDestination`.
37043
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-replicationdestination.html}
37288
+ * Type definition for `AWS::EFS::FileSystem.ElasticFileSystemTag`.
37289
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-elasticfilesystemtag.html}
37044
37290
  */
37045
- export type EFSFileSystemReplicationDestination = {
37046
- FileSystemId?: string;
37047
- Region?: string;
37048
- AvailabilityZoneName?: string;
37049
- KmsKeyId?: string;
37291
+ export type EFSFileSystemElasticFileSystemTag = {
37292
+ Value: string;
37293
+ Key: string;
37050
37294
  };
37051
37295
  /**
37052
37296
  * Type definition for `AWS::EFS::FileSystem.ReplicationConfiguration`.
@@ -37059,6 +37303,13 @@ export type EFSFileSystemReplicationConfiguration = {
37059
37303
  */
37060
37304
  Destinations?: EFSFileSystemReplicationDestination[];
37061
37305
  };
37306
+ /**
37307
+ * Type definition for `AWS::EFS::FileSystem.BackupPolicy`.
37308
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-efs-filesystem-backuppolicy.html}
37309
+ */
37310
+ export type EFSFileSystemBackupPolicy = {
37311
+ Status: string;
37312
+ };
37062
37313
  /**
37063
37314
  * Type definition for `AWS::EFS::MountTarget`.
37064
37315
  * Resource Type definition for AWS::EFS::MountTarget
@@ -37158,19 +37409,15 @@ export type EKSAddonTag = {
37158
37409
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-eks-cluster.html}
37159
37410
  */
37160
37411
  export type EKSClusterProps = {
37161
- /**
37162
- * Enable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs based on log types. By default, cluster control plane logs aren't exported to CloudWatch Logs.
37163
- */
37164
- Logging?: EKSClusterLogging;
37165
37412
  EncryptionConfig?: EKSClusterEncryptionConfig[];
37166
37413
  /**
37167
37414
  * The Kubernetes network configuration for the cluster.
37168
37415
  */
37169
37416
  KubernetesNetworkConfig?: EKSClusterKubernetesNetworkConfig;
37170
37417
  /**
37171
- * The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.
37418
+ * Enable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs based on log types. By default, cluster control plane logs aren't exported to CloudWatch Logs.
37172
37419
  */
37173
- RoleArn: string;
37420
+ Logging?: EKSClusterLogging;
37174
37421
  /**
37175
37422
  * The unique name to give to your cluster.
37176
37423
  * @minLength `1`
@@ -37179,18 +37426,26 @@ export type EKSClusterProps = {
37179
37426
  */
37180
37427
  Name?: string;
37181
37428
  /**
37182
- * The desired Kubernetes version for your cluster. If you don't specify a value here, the latest version available in Amazon EKS is used.
37183
- * @pattern `1\.\d\d`
37429
+ * An object representing the VPC configuration to use for an Amazon EKS cluster.
37184
37430
  */
37185
- Version?: string;
37431
+ ResourcesVpcConfig: EKSClusterResourcesVpcConfig;
37186
37432
  /**
37187
37433
  * An object representing the Outpost configuration to use for AWS EKS outpost cluster.
37188
37434
  */
37189
37435
  OutpostConfig?: EKSClusterOutpostConfig;
37190
37436
  /**
37191
- * An object representing the VPC configuration to use for an Amazon EKS cluster.
37437
+ * An object representing the Access Config to use for the cluster.
37192
37438
  */
37193
- ResourcesVpcConfig: EKSClusterResourcesVpcConfig;
37439
+ AccessConfig?: EKSClusterAccessConfig;
37440
+ /**
37441
+ * The Amazon Resource Name (ARN) of the IAM role that provides permissions for the Kubernetes control plane to make calls to AWS API operations on your behalf.
37442
+ */
37443
+ RoleArn: string;
37444
+ /**
37445
+ * The desired Kubernetes version for your cluster. If you don't specify a value here, the latest version available in Amazon EKS is used.
37446
+ * @pattern `1\.\d\d`
37447
+ */
37448
+ Version?: string;
37194
37449
  /**
37195
37450
  * An array of key-value pairs to apply to this resource.
37196
37451
  */
@@ -37203,91 +37458,60 @@ export type EKSClusterProps = {
37203
37458
  */
37204
37459
  export type EKSClusterAttributes = {
37205
37460
  /**
37206
- * Amazon Resource Name (ARN) or alias of the customer master key (CMK).
37461
+ * The unique ID given to your cluster.
37207
37462
  */
37208
- EncryptionConfigKeyArn: string;
37463
+ Id: string;
37209
37464
  /**
37210
- * The certificate-authority-data for your cluster.
37465
+ * The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod.
37211
37466
  */
37212
- CertificateAuthorityData: string;
37467
+ Arn: string;
37213
37468
  /**
37214
37469
  * The endpoint for your Kubernetes API server, such as https://5E1D0CEXAMPLEA591B746AFC5AB30262.yl4.us-west-2.eks.amazonaws.com.
37215
37470
  */
37216
37471
  Endpoint: string;
37217
37472
  /**
37218
- * The cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control plane to data plane communication.
37473
+ * The certificate-authority-data for your cluster.
37219
37474
  */
37220
- ClusterSecurityGroupId: string;
37475
+ CertificateAuthorityData: string;
37221
37476
  /**
37222
- * The unique ID given to your cluster.
37477
+ * The cluster security group that was created by Amazon EKS for the cluster. Managed node groups use this security group for control plane to data plane communication.
37223
37478
  */
37224
- Id: string;
37479
+ ClusterSecurityGroupId: string;
37225
37480
  /**
37226
- * The ARN of the cluster, such as arn:aws:eks:us-west-2:666666666666:cluster/prod.
37481
+ * Amazon Resource Name (ARN) or alias of the customer master key (CMK).
37227
37482
  */
37228
- Arn: string;
37483
+ EncryptionConfigKeyArn: string;
37229
37484
  /**
37230
37485
  * The issuer URL for the cluster's OIDC identity provider, such as https://oidc.eks.us-west-2.amazonaws.com/id/EXAMPLED539D4633E53DE1B716D3041E. If you need to remove https:// from this output value, you can include the following code in your template.
37231
37486
  */
37232
37487
  OpenIdConnectIssuerUrl: string;
37233
37488
  };
37234
- /**
37235
- * Type definition for `AWS::EKS::Cluster.Logging`.
37236
- * Enable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs based on log types. By default, cluster control plane logs aren't exported to CloudWatch Logs.
37237
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-logging.html}
37238
- */
37239
- export type EKSClusterLogging = {
37240
- /**
37241
- * The cluster control plane logging configuration for your cluster.
37242
- */
37243
- ClusterLogging?: EKSClusterClusterLogging;
37244
- };
37245
37489
  /**
37246
37490
  * Type definition for `AWS::EKS::Cluster.Tag`.
37247
37491
  * A key-value pair to associate with a resource.
37248
37492
  */
37249
37493
  export type EKSClusterTag = {
37250
- /**
37251
- * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
37252
- * @maxLength `256`
37253
- */
37254
- Value: string;
37255
37494
  /**
37256
37495
  * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
37257
37496
  * @minLength `1`
37258
37497
  * @maxLength `128`
37259
37498
  */
37260
37499
  Key: string;
37261
- };
37262
- /**
37263
- * Type definition for `AWS::EKS::Cluster.ControlPlanePlacement`.
37264
- * Specify the placement group of the control plane machines for your cluster.
37265
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-controlplaneplacement.html}
37266
- */
37267
- export type EKSClusterControlPlanePlacement = {
37268
37500
  /**
37269
- * Specify the placement group name of the control place machines for your cluster.
37501
+ * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length and cannot be prefixed with aws:. You can use any of the following characters: the set of Unicode letters, digits, whitespace, _, ., /, =, +, and -.
37502
+ * @maxLength `256`
37270
37503
  */
37271
- GroupName?: string;
37504
+ Value: string;
37272
37505
  };
37273
37506
  /**
37274
- * Type definition for `AWS::EKS::Cluster.OutpostConfig`.
37275
- * An object representing the Outpost configuration to use for AWS EKS outpost cluster.
37276
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-outpostconfig.html}
37507
+ * Type definition for `AWS::EKS::Cluster.Provider`.
37508
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-provider.html}
37277
37509
  */
37278
- export type EKSClusterOutpostConfig = {
37279
- /**
37280
- * Specify one or more Arn(s) of Outpost(s) on which you would like to create your cluster.
37281
- */
37282
- OutpostArns: string[];
37283
- /**
37284
- * Specify the placement group of the control plane machines for your cluster.
37285
- */
37286
- ControlPlanePlacement?: EKSClusterControlPlanePlacement;
37510
+ export type EKSClusterProvider = {
37287
37511
  /**
37288
- * Specify the Instance type of the machines that should be used to create your cluster.
37512
+ * Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, created in the same region as the cluster, and if the KMS key was created in a different account, the user must have access to the KMS key.
37289
37513
  */
37290
- ControlPlaneInstanceType: string;
37514
+ KeyArn?: string;
37291
37515
  };
37292
37516
  /**
37293
37517
  * Type definition for `AWS::EKS::Cluster.EncryptionConfig`.
@@ -37295,25 +37519,14 @@ export type EKSClusterOutpostConfig = {
37295
37519
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-encryptionconfig.html}
37296
37520
  */
37297
37521
  export type EKSClusterEncryptionConfig = {
37298
- /**
37299
- * Specifies the resources to be encrypted. The only supported value is "secrets".
37300
- */
37301
- Resources?: string[];
37302
37522
  /**
37303
37523
  * The encryption provider for the cluster.
37304
37524
  */
37305
37525
  Provider?: EKSClusterProvider;
37306
- };
37307
- /**
37308
- * Type definition for `AWS::EKS::Cluster.LoggingTypeConfig`.
37309
- * Enabled Logging Type
37310
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-loggingtypeconfig.html}
37311
- */
37312
- export type EKSClusterLoggingTypeConfig = {
37313
37526
  /**
37314
- * name of the log type
37527
+ * Specifies the resources to be encrypted. The only supported value is "secrets".
37315
37528
  */
37316
- Type?: "api" | "audit" | "authenticator" | "controllerManager" | "scheduler";
37529
+ Resources?: string[];
37317
37530
  };
37318
37531
  /**
37319
37532
  * Type definition for `AWS::EKS::Cluster.ResourcesVpcConfig`.
@@ -37321,6 +37534,10 @@ export type EKSClusterLoggingTypeConfig = {
37321
37534
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-resourcesvpcconfig.html}
37322
37535
  */
37323
37536
  export type EKSClusterResourcesVpcConfig = {
37537
+ /**
37538
+ * Set this value to true to enable private access for your cluster's Kubernetes API server endpoint. If you enable private access, Kubernetes API requests from within your cluster's VPC use the private VPC endpoint. The default value for this parameter is false, which disables private access for your Kubernetes API server. If you disable private access and you have nodes or AWS Fargate pods in the cluster, then ensure that publicAccessCidrs includes the necessary CIDR blocks for communication with the nodes or Fargate pods.
37539
+ */
37540
+ EndpointPrivateAccess?: boolean;
37324
37541
  /**
37325
37542
  * Set this value to false to disable public access to your cluster's Kubernetes API server endpoint. If you disable public access, your cluster's Kubernetes API server can only receive requests from within the cluster VPC. The default value for this parameter is true, which enables public access for your Kubernetes API server.
37326
37543
  */
@@ -37329,10 +37546,6 @@ export type EKSClusterResourcesVpcConfig = {
37329
37546
  * The CIDR blocks that are allowed access to your cluster's public Kubernetes API server endpoint. Communication to the endpoint from addresses outside of the CIDR blocks that you specify is denied. The default value is 0.0.0.0/0. If you've disabled private endpoint access and you have nodes or AWS Fargate pods in the cluster, then ensure that you specify the necessary CIDR blocks.
37330
37547
  */
37331
37548
  PublicAccessCidrs?: string[];
37332
- /**
37333
- * Set this value to true to enable private access for your cluster's Kubernetes API server endpoint. If you enable private access, Kubernetes API requests from within your cluster's VPC use the private VPC endpoint. The default value for this parameter is false, which disables private access for your Kubernetes API server. If you disable private access and you have nodes or AWS Fargate pods in the cluster, then ensure that publicAccessCidrs includes the necessary CIDR blocks for communication with the nodes or Fargate pods.
37334
- */
37335
- EndpointPrivateAccess?: boolean;
37336
37549
  /**
37337
37550
  * Specify one or more security groups for the cross-account elastic network interfaces that Amazon EKS creates to use to allow communication between your worker nodes and the Kubernetes control plane. If you don't specify a security group, the default security group for your VPC is used.
37338
37551
  */
@@ -37342,6 +37555,17 @@ export type EKSClusterResourcesVpcConfig = {
37342
37555
  */
37343
37556
  SubnetIds: string[];
37344
37557
  };
37558
+ /**
37559
+ * Type definition for `AWS::EKS::Cluster.LoggingTypeConfig`.
37560
+ * Enabled Logging Type
37561
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-loggingtypeconfig.html}
37562
+ */
37563
+ export type EKSClusterLoggingTypeConfig = {
37564
+ /**
37565
+ * name of the log type
37566
+ */
37567
+ Type?: "api" | "audit" | "authenticator" | "controllerManager" | "scheduler";
37568
+ };
37345
37569
  /**
37346
37570
  * Type definition for `AWS::EKS::Cluster.ClusterLogging`.
37347
37571
  * The cluster control plane logging configuration for your cluster.
@@ -37353,6 +37577,17 @@ export type EKSClusterClusterLogging = {
37353
37577
  */
37354
37578
  EnabledTypes?: EKSClusterLoggingTypeConfig[];
37355
37579
  };
37580
+ /**
37581
+ * Type definition for `AWS::EKS::Cluster.Logging`.
37582
+ * Enable exporting the Kubernetes control plane logs for your cluster to CloudWatch Logs based on log types. By default, cluster control plane logs aren't exported to CloudWatch Logs.
37583
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-logging.html}
37584
+ */
37585
+ export type EKSClusterLogging = {
37586
+ /**
37587
+ * The cluster control plane logging configuration for your cluster.
37588
+ */
37589
+ ClusterLogging?: EKSClusterClusterLogging;
37590
+ };
37356
37591
  /**
37357
37592
  * Type definition for `AWS::EKS::Cluster.KubernetesNetworkConfig`.
37358
37593
  * The Kubernetes network configuration for the cluster.
@@ -37373,14 +37608,48 @@ export type EKSClusterKubernetesNetworkConfig = {
37373
37608
  IpFamily?: "ipv4" | "ipv6";
37374
37609
  };
37375
37610
  /**
37376
- * Type definition for `AWS::EKS::Cluster.Provider`.
37377
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-provider.html}
37611
+ * Type definition for `AWS::EKS::Cluster.ControlPlanePlacement`.
37612
+ * Specify the placement group of the control plane machines for your cluster.
37613
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-controlplaneplacement.html}
37378
37614
  */
37379
- export type EKSClusterProvider = {
37615
+ export type EKSClusterControlPlanePlacement = {
37380
37616
  /**
37381
- * Amazon Resource Name (ARN) or alias of the KMS key. The KMS key must be symmetric, created in the same region as the cluster, and if the KMS key was created in a different account, the user must have access to the KMS key.
37617
+ * Specify the placement group name of the control place machines for your cluster.
37382
37618
  */
37383
- KeyArn?: string;
37619
+ GroupName?: string;
37620
+ };
37621
+ /**
37622
+ * Type definition for `AWS::EKS::Cluster.OutpostConfig`.
37623
+ * An object representing the Outpost configuration to use for AWS EKS outpost cluster.
37624
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-eks-cluster-outpostconfig.html}
37625
+ */
37626
+ export type EKSClusterOutpostConfig = {
37627
+ /**
37628
+ * Specify one or more Arn(s) of Outpost(s) on which you would like to create your cluster.
37629
+ */
37630
+ OutpostArns: string[];
37631
+ /**
37632
+ * Specify the Instance type of the machines that should be used to create your cluster.
37633
+ */
37634
+ ControlPlaneInstanceType: string;
37635
+ /**
37636
+ * Specify the placement group of the control plane machines for your cluster.
37637
+ */
37638
+ ControlPlanePlacement?: EKSClusterControlPlanePlacement;
37639
+ };
37640
+ /**
37641
+ * Type definition for `AWS::EKS::Cluster.AccessConfig`.
37642
+ * An object representing the Access Config to use for the cluster.
37643
+ */
37644
+ export type EKSClusterAccessConfig = {
37645
+ /**
37646
+ * Set this value to false to avoid creating a default cluster admin Access Entry using the IAM principal used to create the cluster.
37647
+ */
37648
+ BootstrapClusterCreatorAdminPermissions?: boolean;
37649
+ /**
37650
+ * Specify the authentication mode that should be used to create your cluster.
37651
+ */
37652
+ AuthenticationMode?: "CONFIG_MAP" | "API_AND_CONFIG_MAP" | "API";
37384
37653
  };
37385
37654
  /**
37386
37655
  * Type definition for `AWS::EKS::FargateProfile`.
@@ -39973,13 +40242,13 @@ export type ElasticLoadBalancingLoadBalancerConnectionSettings = {
39973
40242
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticloadbalancingv2-listener.html}
39974
40243
  */
39975
40244
  export type ElasticLoadBalancingV2ListenerProps = {
40245
+ AlpnPolicy?: string[];
39976
40246
  SslPolicy?: string;
39977
40247
  LoadBalancerArn: string;
39978
40248
  DefaultActions: ElasticLoadBalancingV2ListenerAction[];
39979
40249
  Port?: number;
39980
40250
  Certificates?: ElasticLoadBalancingV2ListenerCertificate[];
39981
40251
  Protocol?: string;
39982
- AlpnPolicy?: string[];
39983
40252
  };
39984
40253
  /**
39985
40254
  * Type definition for `AWS::ElasticLoadBalancingV2::Listener`.
@@ -40069,6 +40338,7 @@ export type ElasticLoadBalancingV2ListenerForwardConfig = {
40069
40338
  export type ElasticLoadBalancingV2ListenerAuthenticateOidcConfig = {
40070
40339
  OnUnauthenticatedRequest?: string;
40071
40340
  TokenEndpoint: string;
40341
+ UseExistingClientSecret?: boolean;
40072
40342
  SessionTimeout?: string;
40073
40343
  Scope?: string;
40074
40344
  Issuer: string;
@@ -40077,7 +40347,6 @@ export type ElasticLoadBalancingV2ListenerAuthenticateOidcConfig = {
40077
40347
  ClientId: string;
40078
40348
  AuthorizationEndpoint: string;
40079
40349
  SessionCookieName?: string;
40080
- UseExistingClientSecret?: boolean;
40081
40350
  AuthenticationRequestExtraParams?: Record<string, string>;
40082
40351
  };
40083
40352
  /**
@@ -41620,7 +41889,7 @@ export type EventsRuleProps = {
41620
41889
  /**
41621
41890
  * The state of the rule.
41622
41891
  */
41623
- State?: "DISABLED" | "ENABLED";
41892
+ State?: "DISABLED" | "ENABLED" | "ENABLED_WITH_ALL_CLOUDTRAIL_MANAGEMENT_EVENTS";
41624
41893
  /**
41625
41894
  * Adds the specified targets to the specified rule, or updates the targets if they are already associated with the rule.
41626
41895
  Targets are the resources that are invoked when a rule is triggered.
@@ -42493,10 +42762,6 @@ export type FISExperimentTemplateProps = {
42493
42762
  * @maxLength `512`
42494
42763
  */
42495
42764
  Description: string;
42496
- /**
42497
- * The targets for the experiment.
42498
- */
42499
- Targets: FISExperimentTemplateExperimentTemplateTargetMap;
42500
42765
  /**
42501
42766
  * The actions for the experiment.
42502
42767
  */
@@ -42505,6 +42770,10 @@ export type FISExperimentTemplateProps = {
42505
42770
  * One or more stop conditions.
42506
42771
  */
42507
42772
  StopConditions: FISExperimentTemplateExperimentTemplateStopCondition[];
42773
+ /**
42774
+ * The targets for the experiment.
42775
+ */
42776
+ Targets: FISExperimentTemplateExperimentTemplateTargetMap;
42508
42777
  LogConfiguration?: FISExperimentTemplateExperimentTemplateLogConfiguration;
42509
42778
  /**
42510
42779
  * The Amazon Resource Name (ARN) of an IAM role that grants the AWS FIS service permission to perform service actions on your behalf.
@@ -42526,31 +42795,44 @@ export type FISExperimentTemplateAttributes = {
42526
42795
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fis-experimenttemplate-experimenttemplatestopcondition.html}
42527
42796
  */
42528
42797
  export type FISExperimentTemplateExperimentTemplateStopCondition = {
42529
- /**
42530
- * @maxLength `64`
42531
- */
42532
- Source: string;
42533
42798
  /**
42534
42799
  * @minLength `20`
42535
42800
  * @maxLength `2048`
42536
42801
  */
42537
42802
  Value?: string;
42803
+ /**
42804
+ * @maxLength `64`
42805
+ */
42806
+ Source: string;
42538
42807
  };
42539
42808
  /**
42540
- * Type definition for `AWS::FIS::ExperimentTemplate.ExperimentTemplateTargetFilter`.
42541
- * Describes a filter used for the target resource input in an experiment template.
42542
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fis-experimenttemplate-experimenttemplatetargetfilter.html}
42809
+ * Type definition for `AWS::FIS::ExperimentTemplate.ExperimentTemplateLogConfiguration`.
42810
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fis-experimenttemplate-experimenttemplatelogconfiguration.html}
42543
42811
  */
42544
- export type FISExperimentTemplateExperimentTemplateTargetFilter = {
42545
- /**
42546
- * The attribute path for the filter.
42547
- * @maxLength `256`
42548
- */
42549
- Path: string;
42812
+ export type FISExperimentTemplateExperimentTemplateLogConfiguration = {
42813
+ S3Configuration?: {
42814
+ /**
42815
+ * @minLength `3`
42816
+ * @maxLength `63`
42817
+ */
42818
+ BucketName: string;
42819
+ /**
42820
+ * @minLength `1`
42821
+ * @maxLength `1024`
42822
+ */
42823
+ Prefix?: string;
42824
+ };
42550
42825
  /**
42551
- * The attribute values for the filter.
42826
+ * @min `1`
42552
42827
  */
42553
- Values: string[];
42828
+ LogSchemaVersion: number;
42829
+ CloudWatchLogsConfiguration?: {
42830
+ /**
42831
+ * @minLength `20`
42832
+ * @maxLength `2048`
42833
+ */
42834
+ LogGroupArn: string;
42835
+ };
42554
42836
  };
42555
42837
  /**
42556
42838
  * Type definition for `AWS::FIS::ExperimentTemplate.ExperimentTemplateTarget`.
@@ -42558,6 +42840,9 @@ export type FISExperimentTemplateExperimentTemplateTargetFilter = {
42558
42840
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fis-experimenttemplate-experimenttemplatetarget.html}
42559
42841
  */
42560
42842
  export type FISExperimentTemplateExperimentTemplateTarget = {
42843
+ Filters?: FISExperimentTemplateExperimentTemplateTargetFilter[];
42844
+ Parameters?: Record<string, string>;
42845
+ ResourceTags?: Record<string, string>;
42561
42846
  /**
42562
42847
  * The AWS resource type. The resource type must be supported for the specified action.
42563
42848
  * @maxLength `64`
@@ -42567,9 +42852,6 @@ export type FISExperimentTemplateExperimentTemplateTarget = {
42567
42852
  * The Amazon Resource Names (ARNs) of the target resources.
42568
42853
  */
42569
42854
  ResourceArns?: string[];
42570
- ResourceTags?: Record<string, string>;
42571
- Parameters?: Record<string, string>;
42572
- Filters?: FISExperimentTemplateExperimentTemplateTargetFilter[];
42573
42855
  /**
42574
42856
  * Scopes the identified resources to a specific number of the resources at random, or a percentage of the resources.
42575
42857
  * @maxLength `64`
@@ -42581,6 +42863,27 @@ export type FISExperimentTemplateExperimentTemplateTarget = {
42581
42863
  * The targets for the experiment.
42582
42864
  */
42583
42865
  export type FISExperimentTemplateExperimentTemplateTargetMap = Record<string, FISExperimentTemplateExperimentTemplateTarget>;
42866
+ /**
42867
+ * Type definition for `AWS::FIS::ExperimentTemplate.ExperimentTemplateTargetFilter`.
42868
+ * Describes a filter used for the target resource input in an experiment template.
42869
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fis-experimenttemplate-experimenttemplatetargetfilter.html}
42870
+ */
42871
+ export type FISExperimentTemplateExperimentTemplateTargetFilter = {
42872
+ /**
42873
+ * The attribute path for the filter.
42874
+ * @maxLength `256`
42875
+ */
42876
+ Path: string;
42877
+ /**
42878
+ * The attribute values for the filter.
42879
+ */
42880
+ Values: string[];
42881
+ };
42882
+ /**
42883
+ * Type definition for `AWS::FIS::ExperimentTemplate.ExperimentTemplateActionMap`.
42884
+ * The actions for the experiment.
42885
+ */
42886
+ export type FISExperimentTemplateExperimentTemplateActionMap = Record<string, FISExperimentTemplateExperimentTemplateAction>;
42584
42887
  /**
42585
42888
  * Type definition for `AWS::FIS::ExperimentTemplate.ExperimentTemplateAction`.
42586
42889
  * Specifies an action for the experiment template.
@@ -42610,40 +42913,6 @@ export type FISExperimentTemplateExperimentTemplateAction = {
42610
42913
  */
42611
42914
  StartAfter?: string[];
42612
42915
  };
42613
- /**
42614
- * Type definition for `AWS::FIS::ExperimentTemplate.ExperimentTemplateActionMap`.
42615
- * The actions for the experiment.
42616
- */
42617
- export type FISExperimentTemplateExperimentTemplateActionMap = Record<string, FISExperimentTemplateExperimentTemplateAction>;
42618
- /**
42619
- * Type definition for `AWS::FIS::ExperimentTemplate.ExperimentTemplateLogConfiguration`.
42620
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fis-experimenttemplate-experimenttemplatelogconfiguration.html}
42621
- */
42622
- export type FISExperimentTemplateExperimentTemplateLogConfiguration = {
42623
- CloudWatchLogsConfiguration?: {
42624
- /**
42625
- * @minLength `20`
42626
- * @maxLength `2048`
42627
- */
42628
- LogGroupArn: string;
42629
- };
42630
- S3Configuration?: {
42631
- /**
42632
- * @minLength `3`
42633
- * @maxLength `63`
42634
- */
42635
- BucketName: string;
42636
- /**
42637
- * @minLength `1`
42638
- * @maxLength `1024`
42639
- */
42640
- Prefix?: string;
42641
- };
42642
- /**
42643
- * @min `1`
42644
- */
42645
- LogSchemaVersion: number;
42646
- };
42647
42916
  /**
42648
42917
  * Type definition for `AWS::FMS::NotificationChannel`.
42649
42918
  * Designates the IAM role and Amazon Simple Notification Service (SNS) topic that AWS Firewall Manager uses to record SNS logs.
@@ -44623,22 +44892,6 @@ export type GameLiftFleetProps = {
44623
44892
  * @maxLength `50`
44624
44893
  */
44625
44894
  ScalingPolicies?: GameLiftFleetScalingPolicy[];
44626
- /**
44627
- * Configuration for Anywhere fleet.
44628
- */
44629
- AnywhereConfiguration?: GameLiftFleetAnywhereConfiguration;
44630
- /**
44631
- * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.
44632
- */
44633
- ApplyCapacity?: "ON_UPDATE" | "ON_CREATE_AND_UPDATE";
44634
- /**
44635
- * Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.
44636
- */
44637
- CertificateConfiguration?: GameLiftFleetCertificateConfiguration;
44638
- /**
44639
- * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.
44640
- */
44641
- ComputeType?: "EC2" | "ANYWHERE";
44642
44895
  /**
44643
44896
  * A human-readable description of a fleet.
44644
44897
  * @minLength `1`
@@ -44646,88 +44899,68 @@ export type GameLiftFleetProps = {
44646
44899
  */
44647
44900
  Description?: string;
44648
44901
  /**
44649
- * [DEPRECATED] The number of EC2 instances that you want this fleet to host. When creating a new fleet, GameLift automatically sets this value to "1" and initiates a single instance. Once the fleet is active, update this value to trigger GameLift to add or remove instances from the fleet.
44902
+ * A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.
44903
+ * @minLength `1`
44904
+ * @maxLength `1024`
44905
+ * @pattern `^vpc-\S+`
44650
44906
  */
44651
- DesiredEC2Instances?: number;
44907
+ PeerVpcId?: string;
44652
44908
  /**
44653
44909
  * A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift server.
44654
44910
  * @maxLength `50`
44655
44911
  */
44656
44912
  EC2InboundPermissions?: GameLiftFleetIpPermission[];
44657
44913
  /**
44658
- * The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.
44659
- * @pattern `^.*..*$`
44660
- */
44661
- EC2InstanceType?: string;
44662
- /**
44663
- * Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet.
44914
+ * ComputeType to differentiate EC2 hardware managed by GameLift and Anywhere hardware managed by the customer.
44664
44915
  */
44665
- FleetType?: "ON_DEMAND" | "SPOT";
44916
+ ComputeType?: "EC2" | "ANYWHERE";
44666
44917
  /**
44667
- * A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.
44918
+ * A descriptive label that is associated with a fleet. Fleet names do not need to be unique.
44668
44919
  * @minLength `1`
44669
- * @pattern `^arn:aws(-.*)?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$`
44920
+ * @maxLength `1024`
44670
44921
  */
44671
- InstanceRoleARN?: string;
44922
+ Name: string;
44672
44923
  /**
44673
- * Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.
44924
+ * Configuration for Anywhere fleet.
44674
44925
  */
44675
- InstanceRoleCredentialsProvider?: "SHARED_CREDENTIAL_FILE";
44926
+ AnywhereConfiguration?: GameLiftFleetAnywhereConfiguration;
44676
44927
  /**
44928
+ * A unique identifier for an AWS IAM role that manages access to your AWS services. With an instance role ARN set, any application that runs on an instance in this fleet can assume the role, including install scripts, server processes, and daemons (background processes). Create a role or look up a role's ARN from the IAM dashboard in the AWS Management Console.
44677
44929
  * @minLength `1`
44678
- * @maxLength `100`
44679
- */
44680
- Locations?: GameLiftFleetLocationConfiguration[];
44681
- /**
44682
- * This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()
44930
+ * @pattern `^arn:aws(-.*)?:[a-z-]+:(([a-z]+-)+[0-9])?:([0-9]{12})?:[^.]+$`
44683
44931
  */
44684
- LogPaths?: string[];
44932
+ InstanceRoleARN?: string;
44685
44933
  /**
44686
- * [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value.
44934
+ * Indicates whether to generate a TLS/SSL certificate for the new fleet. TLS certificates are used for encrypting traffic between game clients and game servers running on GameLift. If this parameter is not set, certificate generation is disabled. This fleet setting cannot be changed once the fleet is created.
44687
44935
  */
44688
- MaxSize?: number;
44936
+ CertificateConfiguration?: GameLiftFleetCertificateConfiguration;
44689
44937
  /**
44690
- * The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.
44691
- * @maxLength `1`
44938
+ * Credentials provider implementation that loads credentials from the Amazon EC2 Instance Metadata Service.
44692
44939
  */
44693
- MetricGroups?: string[];
44940
+ InstanceRoleCredentialsProvider?: "SHARED_CREDENTIAL_FILE";
44694
44941
  /**
44695
- * [DEPRECATED] The minimum value allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "0". After the fleet is active, you can change this value.
44942
+ * [DEPRECATED] The number of EC2 instances that you want this fleet to host. When creating a new fleet, GameLift automatically sets this value to "1" and initiates a single instance. Once the fleet is active, update this value to trigger GameLift to add or remove instances from the fleet.
44696
44943
  */
44697
- MinSize?: number;
44944
+ DesiredEC2Instances?: number;
44698
44945
  /**
44699
- * A descriptive label that is associated with a fleet. Fleet names do not need to be unique.
44946
+ * This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.
44700
44947
  * @minLength `1`
44701
44948
  * @maxLength `1024`
44702
44949
  */
44703
- Name: string;
44704
- /**
44705
- * A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.
44706
- */
44707
- NewGameSessionProtectionPolicy?: "FullProtection" | "NoProtection";
44950
+ ServerLaunchParameters?: string;
44708
44951
  /**
44709
- * A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.
44710
- * @minLength `1`
44711
- * @maxLength `1024`
44712
- * @pattern `^[0-9]{12}$`
44952
+ * Indicates whether to use On-Demand instances or Spot instances for this fleet. If empty, the default is ON_DEMAND. Both categories of instances use identical hardware and configurations based on the instance type selected for this fleet.
44713
44953
  */
44714
- PeerVpcAwsAccountId?: string;
44954
+ FleetType?: "ON_DEMAND" | "SPOT";
44715
44955
  /**
44716
- * A unique identifier for a VPC with resources to be accessed by your Amazon GameLift fleet. The VPC must be in the same Region as your fleet. To look up a VPC ID, use the VPC Dashboard in the AWS Management Console.
44717
44956
  * @minLength `1`
44718
- * @maxLength `1024`
44719
- * @pattern `^vpc-\S+`
44720
- */
44721
- PeerVpcId?: string;
44722
- /**
44723
- * A policy that limits the number of game sessions an individual player can create over a span of time for this fleet.
44957
+ * @maxLength `100`
44724
44958
  */
44725
- ResourceCreationLimitPolicy?: GameLiftFleetResourceCreationLimitPolicy;
44959
+ Locations?: GameLiftFleetLocationConfiguration[];
44726
44960
  /**
44727
- * A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.
44728
- * @pattern `^build-\S+|^arn:.*:build/build-\S+`
44961
+ * A game session protection policy to apply to all game sessions hosted on instances in this fleet. When protected, active game sessions cannot be terminated during a scale-down event. If this parameter is not set, instances in this fleet default to no protection. You can change a fleet's protection policy to affect future game sessions on the fleet. You can also set protection for individual game sessions.
44729
44962
  */
44730
- BuildId?: string;
44963
+ NewGameSessionProtectionPolicy?: "FullProtection" | "NoProtection";
44731
44964
  /**
44732
44965
  * A unique identifier for a Realtime script to be deployed on a new Realtime Servers fleet. The script must have been successfully uploaded to Amazon GameLift. This fleet setting cannot be changed once the fleet is created.
44733
44966
 
@@ -44735,6 +44968,10 @@ export type GameLiftFleetProps = {
44735
44968
  * @pattern `^script-\S+|^arn:.*:script/script-\S+`
44736
44969
  */
44737
44970
  ScriptId?: string;
44971
+ /**
44972
+ * [DEPRECATED] The maximum value that is allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value.
44973
+ */
44974
+ MaxSize?: number;
44738
44975
  /**
44739
44976
  * Instructions for launching server processes on each instance in the fleet. Server processes run either a custom game build executable or a Realtime script. The runtime configuration defines the server executables or launch script file, launch parameters, and the number of processes to run concurrently on each instance. When creating a fleet, the runtime configuration must have at least one server process configuration; otherwise the request fails with an invalid request exception.
44740
44977
 
@@ -44742,171 +44979,92 @@ export type GameLiftFleetProps = {
44742
44979
  */
44743
44980
  RuntimeConfiguration?: GameLiftFleetRuntimeConfiguration;
44744
44981
  /**
44745
- * This parameter is no longer used but is retained for backward compatibility. Instead, specify server launch parameters in the RuntimeConfiguration parameter. A request must specify either a runtime configuration or values for both ServerLaunchParameters and ServerLaunchPath.
44746
- * @minLength `1`
44747
- * @maxLength `1024`
44982
+ * This parameter is no longer used. When hosting a custom game build, specify where Amazon GameLift should store log files using the Amazon GameLift server API call ProcessReady()
44748
44983
  */
44749
- ServerLaunchParameters?: string;
44984
+ LogPaths?: string[];
44750
44985
  /**
44751
44986
  * This parameter is no longer used. Instead, specify a server launch path using the RuntimeConfiguration parameter. Requests that specify a server launch path and launch parameters instead of a runtime configuration will continue to work.
44752
44987
  * @minLength `1`
44753
44988
  * @maxLength `1024`
44754
44989
  */
44755
44990
  ServerLaunchPath?: string;
44756
- };
44757
- /**
44758
- * Type definition for `AWS::GameLift::Fleet`.
44759
- * The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions.
44760
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html}
44761
- */
44762
- export type GameLiftFleetAttributes = {
44763
44991
  /**
44764
- * Unique fleet ID
44765
- * @pattern `^fleet-\S+`
44992
+ * [DEPRECATED] The minimum value allowed for the fleet's instance count. When creating a new fleet, GameLift automatically sets this value to "0". After the fleet is active, you can change this value.
44766
44993
  */
44767
- FleetId: string;
44768
- };
44769
- /**
44770
- * Type definition for `AWS::GameLift::Fleet.AnywhereConfiguration`.
44771
- * Configuration for Anywhere fleet.
44772
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-anywhereconfiguration.html}
44773
- */
44774
- export type GameLiftFleetAnywhereConfiguration = {
44994
+ MinSize?: number;
44775
44995
  /**
44776
- * Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost.
44996
+ * A unique identifier for the AWS account with the VPC that you want to peer your Amazon GameLift fleet with. You can find your account ID in the AWS Management Console under account settings.
44777
44997
  * @minLength `1`
44778
- * @maxLength `11`
44779
- * @pattern `^\d{1,5}(?:\.\d{1,5})?$`
44998
+ * @maxLength `1024`
44999
+ * @pattern `^[0-9]{12}$`
44780
45000
  */
44781
- Cost: string;
44782
- };
44783
- /**
44784
- * Type definition for `AWS::GameLift::Fleet.CertificateConfiguration`.
44785
- * Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.
44786
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-certificateconfiguration.html}
44787
- */
44788
- export type GameLiftFleetCertificateConfiguration = {
44789
- CertificateType: "DISABLED" | "GENERATED";
44790
- };
44791
- /**
44792
- * Type definition for `AWS::GameLift::Fleet.IpPermission`.
44793
- * A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.
44794
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ippermission.html}
44795
- */
44796
- export type GameLiftFleetIpPermission = {
45001
+ PeerVpcAwsAccountId?: string;
44797
45002
  /**
44798
- * A starting value for a range of allowed port numbers.
44799
- * @min `1`
44800
- * @max `60000`
45003
+ * The name of an Amazon CloudWatch metric group. A metric group aggregates the metrics for all fleets in the group. Specify a string containing the metric group name. You can use an existing name or use a new name to create a new metric group. Currently, this parameter can have only one string.
45004
+ * @maxLength `1`
44801
45005
  */
44802
- FromPort: number;
45006
+ MetricGroups?: string[];
44803
45007
  /**
44804
- * A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: "000.000.000.000/[subnet mask]" or optionally the shortened version "0.0.0.0/[subnet mask]".
44805
- * @pattern `(^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))$)`
45008
+ * A unique identifier for a build to be deployed on the new fleet. If you are deploying the fleet with a custom game build, you must specify this property. The build must have been successfully uploaded to Amazon GameLift and be in a READY status. This fleet setting cannot be changed once the fleet is created.
45009
+ * @pattern `^build-\S+|^arn:.*:build/build-\S+`
44806
45010
  */
44807
- IpRange: string;
45011
+ BuildId?: string;
44808
45012
  /**
44809
- * The network communication protocol used by the fleet.
45013
+ * A policy that limits the number of game sessions an individual player can create over a span of time for this fleet.
44810
45014
  */
44811
- Protocol: "TCP" | "UDP";
45015
+ ResourceCreationLimitPolicy?: GameLiftFleetResourceCreationLimitPolicy;
44812
45016
  /**
44813
- * An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.
44814
- * @min `1`
44815
- * @max `60000`
45017
+ * The name of an EC2 instance type that is supported in Amazon GameLift. A fleet instance type determines the computing resources of each instance in the fleet, including CPU, memory, storage, and networking capacity. Amazon GameLift supports the following EC2 instance types. See Amazon EC2 Instance Types for detailed descriptions.
45018
+ * @pattern `^.*..*$`
44816
45019
  */
44817
- ToPort: number;
45020
+ EC2InstanceType?: string;
44818
45021
  };
44819
45022
  /**
44820
- * Type definition for `AWS::GameLift::Fleet.LocationCapacity`.
44821
- * Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.
44822
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-locationcapacity.html}
45023
+ * Type definition for `AWS::GameLift::Fleet`.
45024
+ * The AWS::GameLift::Fleet resource creates an Amazon GameLift (GameLift) fleet to host game servers. A fleet is a set of EC2 or Anywhere instances, each of which can host multiple game sessions.
45025
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-fleet.html}
44823
45026
  */
44824
- export type GameLiftFleetLocationCapacity = {
44825
- /**
44826
- * The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.
44827
- */
44828
- DesiredEC2Instances: number;
44829
- /**
44830
- * The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to "0". After the fleet is active, you can change this value.
44831
- */
44832
- MinSize: number;
45027
+ export type GameLiftFleetAttributes = {
44833
45028
  /**
44834
- * The maximum value that is allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value.
45029
+ * Unique fleet ID
45030
+ * @pattern `^fleet-\S+`
44835
45031
  */
44836
- MaxSize: number;
45032
+ FleetId: string;
44837
45033
  };
44838
45034
  /**
44839
- * Type definition for `AWS::GameLift::Fleet.LocationConfiguration`.
44840
- * A remote location where a multi-location fleet can deploy EC2 instances for game hosting.
44841
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-locationconfiguration.html}
45035
+ * Type definition for `AWS::GameLift::Fleet.ScalingPolicy`.
45036
+ * Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.
45037
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-scalingpolicy.html}
44842
45038
  */
44843
- export type GameLiftFleetLocationConfiguration = {
44844
- /**
44845
- * @minLength `1`
44846
- * @maxLength `64`
44847
- * @pattern `^[A-Za-z0-9\-]+`
44848
- */
44849
- Location: string;
45039
+ export type GameLiftFleetScalingPolicy = {
44850
45040
  /**
44851
- * Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.
45041
+ * Current status of the scaling policy. The scaling policy can be in force only when in an ACTIVE status. Scaling policies can be suspended for individual fleets. If the policy is suspended for a fleet, the policy status does not change.
44852
45042
  */
44853
- LocationCapacity?: GameLiftFleetLocationCapacity;
44854
- };
44855
- /**
44856
- * Type definition for `AWS::GameLift::Fleet.ResourceCreationLimitPolicy`.
44857
- * A policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: "An individual player can create a maximum number of new game sessions within a specified time period".
44858
-
44859
- The policy is evaluated when a player tries to create a new game session. For example, assume you have a policy of 10 new game sessions and a time period of 60 minutes. On receiving a CreateGameSession request, Amazon GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.
44860
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-resourcecreationlimitpolicy.html}
44861
- */
44862
- export type GameLiftFleetResourceCreationLimitPolicy = {
45043
+ Status?: "ACTIVE" | "UPDATE_REQUESTED" | "UPDATING" | "DELETE_REQUESTED" | "DELETING" | "DELETED" | "ERROR";
44863
45044
  /**
44864
- * The maximum number of game sessions that an individual can create during the policy period.
45045
+ * Name of the Amazon GameLift-defined metric that is used to trigger a scaling adjustment.
44865
45046
  */
44866
- NewGameSessionsPerCreator?: number;
45047
+ MetricName: "ActivatingGameSessions" | "ActiveGameSessions" | "ActiveInstances" | "AvailableGameSessions" | "AvailablePlayerSessions" | "CurrentPlayerSessions" | "IdleInstances" | "PercentAvailableGameSessions" | "PercentIdleInstances" | "QueueDepth" | "WaitTime" | "ConcurrentActivatableGameSessions";
44867
45048
  /**
44868
- * The time span used in evaluating the resource creation limit policy.
45049
+ * The type of scaling policy to create. For a target-based policy, set the parameter MetricName to 'PercentAvailableGameSessions' and specify a TargetConfiguration. For a rule-based policy set the following parameters: MetricName, ComparisonOperator, Threshold, EvaluationPeriods, ScalingAdjustmentType, and ScalingAdjustment.
44869
45050
  */
44870
- PolicyPeriodInMinutes?: number;
44871
- };
44872
- /**
44873
- * Type definition for `AWS::GameLift::Fleet.RuntimeConfiguration`.
44874
- * A collection of server process configurations that describe the processes to run on each instance in a fleet. All fleets must have a runtime configuration. Each instance in the fleet maintains server processes as specified in the runtime configuration, launching new ones as existing processes end. Each instance regularly checks for an updated runtime configuration makes adjustments as called for.
44875
-
44876
- The runtime configuration enables the instances in a fleet to run multiple processes simultaneously. Potential scenarios are as follows: (1) Run multiple processes of a single game server executable to maximize usage of your hosting resources. (2) Run one or more processes of different executables, such as your game server and a metrics tracking program. (3) Run multiple processes of a single game server but with different launch parameters, for example to run one process on each instance in debug mode.
44877
-
44878
- An Amazon GameLift instance is limited to 50 processes running simultaneously. A runtime configuration must specify fewer than this limit. To calculate the total number of processes specified in a runtime configuration, add the values of the ConcurrentExecutions parameter for each ServerProcess object in the runtime configuration.
44879
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-runtimeconfiguration.html}
44880
- */
44881
- export type GameLiftFleetRuntimeConfiguration = {
45051
+ PolicyType?: "RuleBased" | "TargetBased";
44882
45052
  /**
44883
- * The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.
44884
- * @min `1`
44885
- * @max `600`
45053
+ * Comparison operator to use when measuring a metric against the threshold value.
44886
45054
  */
44887
- GameSessionActivationTimeoutSeconds?: number;
45055
+ ComparisonOperator?: "GreaterThanOrEqualToThreshold" | "GreaterThanThreshold" | "LessThanThreshold" | "LessThanOrEqualToThreshold";
44888
45056
  /**
44889
- * The maximum number of game sessions with status ACTIVATING to allow on an instance simultaneously. This setting limits the amount of instance resources that can be used for new game activations at any one time.
44890
- * @min `1`
44891
- * @max `2147483647`
45057
+ * An object that contains settings for a target-based scaling policy.
44892
45058
  */
44893
- MaxConcurrentGameSessionActivations?: number;
45059
+ TargetConfiguration?: GameLiftFleetTargetConfiguration;
44894
45060
  /**
44895
- * A collection of server process configurations that describe which server processes to run on each instance in a fleet.
44896
- * @maxLength `50`
45061
+ * The current status of the fleet's scaling policies in a requested fleet location. The status PENDING_UPDATE indicates that an update was requested for the fleet but has not yet been completed for the location.
44897
45062
  */
44898
- ServerProcesses?: GameLiftFleetServerProcess[];
44899
- };
44900
- /**
44901
- * Type definition for `AWS::GameLift::Fleet.ScalingPolicy`.
44902
- * Rule that controls how a fleet is scaled. Scaling policies are uniquely identified by the combination of name and fleet ID.
44903
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-scalingpolicy.html}
44904
- */
44905
- export type GameLiftFleetScalingPolicy = {
45063
+ UpdateStatus?: "PENDING_UPDATE";
44906
45064
  /**
44907
- * Comparison operator to use when measuring a metric against the threshold value.
45065
+ * Amount of adjustment to make, based on the scaling adjustment type.
44908
45066
  */
44909
- ComparisonOperator?: "GreaterThanOrEqualToThreshold" | "GreaterThanThreshold" | "LessThanThreshold" | "LessThanOrEqualToThreshold";
45067
+ ScalingAdjustment?: number;
44910
45068
  /**
44911
45069
  * Length of time (in minutes) the metric must be at or beyond the threshold before a scaling event is triggered.
44912
45070
  * @min `1`
@@ -44918,44 +45076,20 @@ export type GameLiftFleetScalingPolicy = {
44918
45076
  * @pattern `^[A-Za-z0-9\-]+`
44919
45077
  */
44920
45078
  Location?: string;
44921
- /**
44922
- * Name of the Amazon GameLift-defined metric that is used to trigger a scaling adjustment.
44923
- */
44924
- MetricName: "ActivatingGameSessions" | "ActiveGameSessions" | "ActiveInstances" | "AvailableGameSessions" | "AvailablePlayerSessions" | "CurrentPlayerSessions" | "IdleInstances" | "PercentAvailableGameSessions" | "PercentIdleInstances" | "QueueDepth" | "WaitTime" | "ConcurrentActivatableGameSessions";
44925
45079
  /**
44926
45080
  * A descriptive label that is associated with a fleet's scaling policy. Policy names do not need to be unique.
44927
45081
  * @minLength `1`
44928
45082
  * @maxLength `1024`
44929
45083
  */
44930
45084
  Name: string;
44931
- /**
44932
- * The type of scaling policy to create. For a target-based policy, set the parameter MetricName to 'PercentAvailableGameSessions' and specify a TargetConfiguration. For a rule-based policy set the following parameters: MetricName, ComparisonOperator, Threshold, EvaluationPeriods, ScalingAdjustmentType, and ScalingAdjustment.
44933
- */
44934
- PolicyType?: "RuleBased" | "TargetBased";
44935
- /**
44936
- * Amount of adjustment to make, based on the scaling adjustment type.
44937
- */
44938
- ScalingAdjustment?: number;
44939
45085
  /**
44940
45086
  * The type of adjustment to make to a fleet's instance count.
44941
45087
  */
44942
45088
  ScalingAdjustmentType?: "ChangeInCapacity" | "ExactCapacity" | "PercentChangeInCapacity";
44943
- /**
44944
- * Current status of the scaling policy. The scaling policy can be in force only when in an ACTIVE status. Scaling policies can be suspended for individual fleets. If the policy is suspended for a fleet, the policy status does not change.
44945
- */
44946
- Status?: "ACTIVE" | "UPDATE_REQUESTED" | "UPDATING" | "DELETE_REQUESTED" | "DELETING" | "DELETED" | "ERROR";
44947
- /**
44948
- * An object that contains settings for a target-based scaling policy.
44949
- */
44950
- TargetConfiguration?: GameLiftFleetTargetConfiguration;
44951
45089
  /**
44952
45090
  * Metric value used to trigger a scaling event.
44953
45091
  */
44954
45092
  Threshold?: number;
44955
- /**
44956
- * The current status of the fleet's scaling policies in a requested fleet location. The status PENDING_UPDATE indicates that an update was requested for the fleet but has not yet been completed for the location.
44957
- */
44958
- UpdateStatus?: "PENDING_UPDATE";
44959
45093
  };
44960
45094
  /**
44961
45095
  * Type definition for `AWS::GameLift::Fleet.ServerProcess`.
@@ -44968,6 +45102,12 @@ export type GameLiftFleetServerProcess = {
44968
45102
  * @min `1`
44969
45103
  */
44970
45104
  ConcurrentExecutions: number;
45105
+ /**
45106
+ * An optional list of parameters to pass to the server executable or Realtime script on launch.
45107
+ * @minLength `1`
45108
+ * @maxLength `1024`
45109
+ */
45110
+ Parameters?: string;
44971
45111
  /**
44972
45112
  * The location of the server executable in a custom game build or the name of the Realtime script file that contains the Init() function. Game builds and Realtime scripts are installed on instances at the root:
44973
45113
 
@@ -44979,12 +45119,6 @@ export type GameLiftFleetServerProcess = {
44979
45119
  * @pattern `^([Cc]:\\game\S+|/local/game/\S+)`
44980
45120
  */
44981
45121
  LaunchPath: string;
44982
- /**
44983
- * An optional list of parameters to pass to the server executable or Realtime script on launch.
44984
- * @minLength `1`
44985
- * @maxLength `1024`
44986
- */
44987
- Parameters?: string;
44988
45122
  };
44989
45123
  /**
44990
45124
  * Type definition for `AWS::GameLift::Fleet.TargetConfiguration`.
@@ -44997,6 +45131,137 @@ export type GameLiftFleetTargetConfiguration = {
44997
45131
  */
44998
45132
  TargetValue: number;
44999
45133
  };
45134
+ /**
45135
+ * Type definition for `AWS::GameLift::Fleet.AnywhereConfiguration`.
45136
+ * Configuration for Anywhere fleet.
45137
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-anywhereconfiguration.html}
45138
+ */
45139
+ export type GameLiftFleetAnywhereConfiguration = {
45140
+ /**
45141
+ * Cost of compute can be specified on Anywhere Fleets to prioritize placement across Queue destinations based on Cost.
45142
+ * @minLength `1`
45143
+ * @maxLength `11`
45144
+ * @pattern `^\d{1,5}(?:\.\d{1,5})?$`
45145
+ */
45146
+ Cost: string;
45147
+ };
45148
+ /**
45149
+ * Type definition for `AWS::GameLift::Fleet.ResourceCreationLimitPolicy`.
45150
+ * A policy that limits the number of game sessions a player can create on the same fleet. This optional policy gives game owners control over how players can consume available game server resources. A resource creation policy makes the following statement: "An individual player can create a maximum number of new game sessions within a specified time period".
45151
+
45152
+ The policy is evaluated when a player tries to create a new game session. For example, assume you have a policy of 10 new game sessions and a time period of 60 minutes. On receiving a CreateGameSession request, Amazon GameLift checks that the player (identified by CreatorId) has created fewer than 10 game sessions in the past 60 minutes.
45153
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-resourcecreationlimitpolicy.html}
45154
+ */
45155
+ export type GameLiftFleetResourceCreationLimitPolicy = {
45156
+ /**
45157
+ * The time span used in evaluating the resource creation limit policy.
45158
+ */
45159
+ PolicyPeriodInMinutes?: number;
45160
+ /**
45161
+ * The maximum number of game sessions that an individual can create during the policy period.
45162
+ */
45163
+ NewGameSessionsPerCreator?: number;
45164
+ };
45165
+ /**
45166
+ * Type definition for `AWS::GameLift::Fleet.LocationCapacity`.
45167
+ * Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.
45168
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-locationcapacity.html}
45169
+ */
45170
+ export type GameLiftFleetLocationCapacity = {
45171
+ /**
45172
+ * The minimum value allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to "0". After the fleet is active, you can change this value.
45173
+ */
45174
+ MinSize: number;
45175
+ /**
45176
+ * The number of EC2 instances you want to maintain in the specified fleet location. This value must fall between the minimum and maximum size limits.
45177
+ */
45178
+ DesiredEC2Instances: number;
45179
+ /**
45180
+ * The maximum value that is allowed for the fleet's instance count for a location. When creating a new fleet, GameLift automatically sets this value to "1". Once the fleet is active, you can change this value.
45181
+ */
45182
+ MaxSize: number;
45183
+ };
45184
+ /**
45185
+ * Type definition for `AWS::GameLift::Fleet.CertificateConfiguration`.
45186
+ * Information about the use of a TLS/SSL certificate for a fleet. TLS certificate generation is enabled at the fleet level, with one certificate generated for the fleet. When this feature is enabled, the certificate can be retrieved using the GameLift Server SDK call GetInstanceCertificate. All instances in a fleet share the same certificate.
45187
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-certificateconfiguration.html}
45188
+ */
45189
+ export type GameLiftFleetCertificateConfiguration = {
45190
+ CertificateType: "DISABLED" | "GENERATED";
45191
+ };
45192
+ /**
45193
+ * Type definition for `AWS::GameLift::Fleet.IpPermission`.
45194
+ * A range of IP addresses and port settings that allow inbound traffic to connect to server processes on an Amazon GameLift hosting resource. New game sessions that are started on the fleet are assigned an IP address/port number combination, which must fall into the fleet's allowed ranges. For fleets created with a custom game server, the ranges reflect the server's game session assignments. For Realtime Servers fleets, Amazon GameLift automatically opens two port ranges, one for TCP messaging and one for UDP, for use by the Realtime servers.
45195
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-ippermission.html}
45196
+ */
45197
+ export type GameLiftFleetIpPermission = {
45198
+ /**
45199
+ * A range of allowed IP addresses. This value must be expressed in CIDR notation. Example: "000.000.000.000/[subnet mask]" or optionally the shortened version "0.0.0.0/[subnet mask]".
45200
+ * @pattern `(^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(/([0-9]|[1-2][0-9]|3[0-2]))$)`
45201
+ */
45202
+ IpRange: string;
45203
+ /**
45204
+ * A starting value for a range of allowed port numbers.
45205
+ * @min `1`
45206
+ * @max `60000`
45207
+ */
45208
+ FromPort: number;
45209
+ /**
45210
+ * An ending value for a range of allowed port numbers. Port numbers are end-inclusive. This value must be higher than FromPort.
45211
+ * @min `1`
45212
+ * @max `60000`
45213
+ */
45214
+ ToPort: number;
45215
+ /**
45216
+ * The network communication protocol used by the fleet.
45217
+ */
45218
+ Protocol: "TCP" | "UDP";
45219
+ };
45220
+ /**
45221
+ * Type definition for `AWS::GameLift::Fleet.RuntimeConfiguration`.
45222
+ * A collection of server process configurations that describe the processes to run on each instance in a fleet. All fleets must have a runtime configuration. Each instance in the fleet maintains server processes as specified in the runtime configuration, launching new ones as existing processes end. Each instance regularly checks for an updated runtime configuration makes adjustments as called for.
45223
+
45224
+ The runtime configuration enables the instances in a fleet to run multiple processes simultaneously. Potential scenarios are as follows: (1) Run multiple processes of a single game server executable to maximize usage of your hosting resources. (2) Run one or more processes of different executables, such as your game server and a metrics tracking program. (3) Run multiple processes of a single game server but with different launch parameters, for example to run one process on each instance in debug mode.
45225
+
45226
+ An Amazon GameLift instance is limited to 50 processes running simultaneously. A runtime configuration must specify fewer than this limit. To calculate the total number of processes specified in a runtime configuration, add the values of the ConcurrentExecutions parameter for each ServerProcess object in the runtime configuration.
45227
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-runtimeconfiguration.html}
45228
+ */
45229
+ export type GameLiftFleetRuntimeConfiguration = {
45230
+ /**
45231
+ * A collection of server process configurations that describe which server processes to run on each instance in a fleet.
45232
+ * @maxLength `50`
45233
+ */
45234
+ ServerProcesses?: GameLiftFleetServerProcess[];
45235
+ /**
45236
+ * The maximum number of game sessions with status ACTIVATING to allow on an instance simultaneously. This setting limits the amount of instance resources that can be used for new game activations at any one time.
45237
+ * @min `1`
45238
+ * @max `2147483647`
45239
+ */
45240
+ MaxConcurrentGameSessionActivations?: number;
45241
+ /**
45242
+ * The maximum amount of time (in seconds) that a game session can remain in status ACTIVATING. If the game session is not active before the timeout, activation is terminated and the game session status is changed to TERMINATED.
45243
+ * @min `1`
45244
+ * @max `600`
45245
+ */
45246
+ GameSessionActivationTimeoutSeconds?: number;
45247
+ };
45248
+ /**
45249
+ * Type definition for `AWS::GameLift::Fleet.LocationConfiguration`.
45250
+ * A remote location where a multi-location fleet can deploy EC2 instances for game hosting.
45251
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-fleet-locationconfiguration.html}
45252
+ */
45253
+ export type GameLiftFleetLocationConfiguration = {
45254
+ /**
45255
+ * Current resource capacity settings in a specified fleet or location. The location value might refer to a fleet's remote location or its home Region.
45256
+ */
45257
+ LocationCapacity?: GameLiftFleetLocationCapacity;
45258
+ /**
45259
+ * @minLength `1`
45260
+ * @maxLength `64`
45261
+ * @pattern `^[A-Za-z0-9\-]+`
45262
+ */
45263
+ Location: string;
45264
+ };
45000
45265
  /**
45001
45266
  * Type definition for `AWS::GameLift::GameServerGroup`.
45002
45267
  * The AWS::GameLift::GameServerGroup resource creates an Amazon GameLift (GameLift) GameServerGroup.
@@ -45248,65 +45513,145 @@ export type GameLiftGameServerGroupGameServerGroup = {
45248
45513
  export type GameLiftGameServerGroupStatus = "NEW" | "ACTIVATING" | "ACTIVE" | "DELETE_SCHEDULED" | "DELETING" | "DELETED" | "ERROR";
45249
45514
  /**
45250
45515
  * Type definition for `AWS::GameLift::GameSessionQueue`.
45251
- * Resource Type definition for AWS::GameLift::GameSessionQueue
45516
+ * The AWS::GameLift::GameSessionQueue resource creates an Amazon GameLift (GameLift) game session queue.
45252
45517
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html}
45253
45518
  */
45254
45519
  export type GameLiftGameSessionQueueProps = {
45520
+ /**
45521
+ * A descriptive label that is associated with game session queue. Queue names must be unique within each Region.
45522
+ * @minLength `1`
45523
+ * @maxLength `128`
45524
+ * @pattern `[a-zA-Z0-9-]+`
45525
+ */
45526
+ Name: string;
45527
+ /**
45528
+ * The maximum time, in seconds, that a new game session placement request remains in the queue.
45529
+ */
45255
45530
  TimeoutInSeconds?: number;
45531
+ /**
45532
+ * A list of fleets and/or fleet aliases that can be used to fulfill game session placement requests in the queue.
45533
+ */
45534
+ Destinations?: GameLiftGameSessionQueueGameSessionQueueDestination[];
45535
+ /**
45536
+ * A set of policies that act as a sliding cap on player latency.
45537
+ */
45256
45538
  PlayerLatencyPolicies?: GameLiftGameSessionQueuePlayerLatencyPolicy[];
45257
- Destinations?: GameLiftGameSessionQueueDestination[];
45539
+ /**
45540
+ * Information that is added to all events that are related to this game session queue.
45541
+ * @minLength `1`
45542
+ * @maxLength `256`
45543
+ * @pattern `[\s\S]*`
45544
+ */
45545
+ CustomEventData?: string;
45546
+ /**
45547
+ * An SNS topic ARN that is set up to receive game session placement notifications.
45548
+ * @minLength `1`
45549
+ * @maxLength `300`
45550
+ * @pattern `[a-zA-Z0-9:_-]*(\.fifo)?`
45551
+ */
45258
45552
  NotificationTarget?: string;
45553
+ /**
45554
+ * A list of locations where a queue is allowed to place new game sessions.
45555
+ */
45259
45556
  FilterConfiguration?: GameLiftGameSessionQueueFilterConfiguration;
45260
- CustomEventData?: string;
45261
- Tags?: GameLiftGameSessionQueueTag[];
45262
- Name: string;
45557
+ /**
45558
+ * Custom settings to use when prioritizing destinations and locations for game session placements.
45559
+ */
45263
45560
  PriorityConfiguration?: GameLiftGameSessionQueuePriorityConfiguration;
45561
+ /**
45562
+ * An array of key-value pairs to apply to this resource.
45563
+ * @maxLength `200`
45564
+ */
45565
+ Tags?: GameLiftGameSessionQueueTag[];
45264
45566
  };
45265
45567
  /**
45266
45568
  * Type definition for `AWS::GameLift::GameSessionQueue`.
45267
- * Resource Type definition for AWS::GameLift::GameSessionQueue
45569
+ * The AWS::GameLift::GameSessionQueue resource creates an Amazon GameLift (GameLift) game session queue.
45268
45570
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-gamesessionqueue.html}
45269
45571
  */
45270
45572
  export type GameLiftGameSessionQueueAttributes = {
45271
- Id: string;
45573
+ /**
45574
+ * The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift game session queue resource and uniquely identifies it.
45575
+ * @minLength `1`
45576
+ * @maxLength `256`
45577
+ * @pattern `^arn:.*:gamesessionqueue\/[a-zA-Z0-9-]+`
45578
+ */
45272
45579
  Arn: string;
45273
45580
  };
45274
45581
  /**
45275
- * Type definition for `AWS::GameLift::GameSessionQueue.PlayerLatencyPolicy`.
45276
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-playerlatencypolicy.html}
45582
+ * Type definition for `AWS::GameLift::GameSessionQueue.Tag`.
45583
+ * A key-value pair to associate with a resource.
45277
45584
  */
45278
- export type GameLiftGameSessionQueuePlayerLatencyPolicy = {
45279
- PolicyDurationSeconds?: number;
45280
- MaximumIndividualPlayerLatencyMilliseconds?: number;
45585
+ export type GameLiftGameSessionQueueTag = {
45586
+ /**
45587
+ * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length.
45588
+ * @minLength `1`
45589
+ * @maxLength `128`
45590
+ */
45591
+ Key: string;
45592
+ /**
45593
+ * The value for the tag. You can specify a value that is 1 to 256 Unicode characters in length.
45594
+ * @minLength `1`
45595
+ * @maxLength `256`
45596
+ */
45597
+ Value: string;
45281
45598
  };
45282
45599
  /**
45283
- * Type definition for `AWS::GameLift::GameSessionQueue.Destination`.
45284
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-destination.html}
45600
+ * Type definition for `AWS::GameLift::GameSessionQueue.GameSessionQueueDestination`.
45601
+ * A fleet or alias designated in a game session queue.
45285
45602
  */
45286
- export type GameLiftGameSessionQueueDestination = {
45603
+ export type GameLiftGameSessionQueueGameSessionQueueDestination = {
45604
+ /**
45605
+ * @minLength `1`
45606
+ * @maxLength `256`
45607
+ * @pattern `[a-zA-Z0-9:/-]+`
45608
+ */
45287
45609
  DestinationArn?: string;
45288
45610
  };
45611
+ /**
45612
+ * Type definition for `AWS::GameLift::GameSessionQueue.PlayerLatencyPolicy`.
45613
+ * Sets a latency cap for individual players when placing a game session.
45614
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-playerlatencypolicy.html}
45615
+ */
45616
+ export type GameLiftGameSessionQueuePlayerLatencyPolicy = {
45617
+ /**
45618
+ * The maximum latency value that is allowed for any player, in milliseconds. All policies must have a value set for this property.
45619
+ */
45620
+ MaximumIndividualPlayerLatencyMilliseconds?: number;
45621
+ /**
45622
+ * The length of time, in seconds, that the policy is enforced while placing a new game session.
45623
+ */
45624
+ PolicyDurationSeconds?: number;
45625
+ };
45289
45626
  /**
45290
45627
  * Type definition for `AWS::GameLift::GameSessionQueue.FilterConfiguration`.
45291
45628
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-filterconfiguration.html}
45292
45629
  */
45293
45630
  export type GameLiftGameSessionQueueFilterConfiguration = {
45631
+ /**
45632
+ * A list of locations to allow game session placement in, in the form of AWS Region codes such as us-west-2.
45633
+ * @minLength `1`
45634
+ * @maxLength `100`
45635
+ */
45294
45636
  AllowedLocations?: string[];
45295
45637
  };
45296
- /**
45297
- * Type definition for `AWS::GameLift::GameSessionQueue.Tag`.
45298
- */
45299
- export type GameLiftGameSessionQueueTag = {
45300
- Value: string;
45301
- Key: string;
45302
- };
45303
45638
  /**
45304
45639
  * Type definition for `AWS::GameLift::GameSessionQueue.PriorityConfiguration`.
45305
45640
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-gamesessionqueue-priorityconfiguration.html}
45306
45641
  */
45307
45642
  export type GameLiftGameSessionQueuePriorityConfiguration = {
45308
- PriorityOrder?: string[];
45643
+ /**
45644
+ * The prioritization order to use for fleet locations, when the PriorityOrder property includes LOCATION.
45645
+ * @minLength `1`
45646
+ * @maxLength `100`
45647
+ */
45309
45648
  LocationOrder?: string[];
45649
+ /**
45650
+ * The recommended sequence to use when prioritizing where to place new game sessions.
45651
+ * @minLength `1`
45652
+ * @maxLength `4`
45653
+ */
45654
+ PriorityOrder?: ("LATENCY" | "COST" | "DESTINATION" | "LOCATION")[];
45310
45655
  };
45311
45656
  /**
45312
45657
  * Type definition for `AWS::GameLift::Location`.
@@ -45356,111 +45701,297 @@ export type GameLiftLocationTag = {
45356
45701
  };
45357
45702
  /**
45358
45703
  * Type definition for `AWS::GameLift::MatchmakingConfiguration`.
45359
- * Resource Type definition for AWS::GameLift::MatchmakingConfiguration
45704
+ * The AWS::GameLift::MatchmakingConfiguration resource creates an Amazon GameLift (GameLift) matchmaking configuration.
45360
45705
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html}
45361
45706
  */
45362
45707
  export type GameLiftMatchmakingConfigurationProps = {
45363
- GameProperties?: GameLiftMatchmakingConfigurationGameProperty[];
45364
- GameSessionData?: string;
45365
- Description?: string;
45708
+ /**
45709
+ * A flag that indicates whether a match that was created with this configuration must be accepted by the matched players
45710
+ */
45711
+ AcceptanceRequired: boolean;
45712
+ /**
45713
+ * The length of time (in seconds) to wait for players to accept a proposed match, if acceptance is required.
45714
+ * @min `1`
45715
+ * @max `600`
45716
+ */
45366
45717
  AcceptanceTimeoutSeconds?: number;
45367
- NotificationTarget?: string;
45718
+ /**
45719
+ * The number of player slots in a match to keep open for future players.
45720
+ */
45721
+ AdditionalPlayerCount?: number;
45722
+ /**
45723
+ * The method used to backfill game sessions created with this matchmaking configuration.
45724
+ */
45725
+ BackfillMode?: "AUTOMATIC" | "MANUAL";
45726
+ /**
45727
+ * A time stamp indicating when this data object was created.
45728
+ */
45729
+ CreationTime?: string;
45730
+ /**
45731
+ * Information to attach to all events related to the matchmaking configuration.
45732
+ * @maxLength `256`
45733
+ */
45368
45734
  CustomEventData?: string;
45735
+ /**
45736
+ * A descriptive label that is associated with matchmaking configuration.
45737
+ * @minLength `1`
45738
+ * @maxLength `1024`
45739
+ */
45740
+ Description?: string;
45741
+ /**
45742
+ * Indicates whether this matchmaking configuration is being used with Amazon GameLift hosting or as a standalone matchmaking solution.
45743
+ */
45744
+ FlexMatchMode?: "STANDALONE" | "WITH_QUEUE";
45745
+ /**
45746
+ * A set of custom properties for a game session, formatted as key:value pairs.
45747
+ * @maxLength `16`
45748
+ */
45749
+ GameProperties?: GameLiftMatchmakingConfigurationGameProperty[];
45750
+ /**
45751
+ * A set of custom game session properties, formatted as a single string value.
45752
+ * @minLength `1`
45753
+ * @maxLength `4096`
45754
+ */
45755
+ GameSessionData?: string;
45756
+ /**
45757
+ * The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift game session queue resource and uniquely identifies it.
45758
+ */
45759
+ GameSessionQueueArns?: string[];
45760
+ /**
45761
+ * A unique identifier for the matchmaking configuration.
45762
+ * @maxLength `128`
45763
+ * @pattern `[a-zA-Z0-9-\.]*`
45764
+ */
45369
45765
  Name: string;
45370
- AdditionalPlayerCount?: number;
45371
- BackfillMode?: string;
45766
+ /**
45767
+ * An SNS topic ARN that is set up to receive matchmaking notifications.
45768
+ * @maxLength `300`
45769
+ * @pattern `[a-zA-Z0-9:_/-]*(.fifo)?`
45770
+ */
45771
+ NotificationTarget?: string;
45772
+ /**
45773
+ * The maximum duration, in seconds, that a matchmaking ticket can remain in process before timing out.
45774
+ * @min `1`
45775
+ * @max `43200`
45776
+ */
45372
45777
  RequestTimeoutSeconds: number;
45373
- AcceptanceRequired: boolean;
45374
- FlexMatchMode?: string;
45778
+ /**
45779
+ * The Amazon Resource Name (ARN) associated with the GameLift matchmaking rule set resource that this configuration uses.
45780
+ * @pattern `^arn:.*:matchmakingruleset\/[a-zA-Z0-9-\.]*`
45781
+ */
45782
+ RuleSetArn?: string;
45783
+ /**
45784
+ * A unique identifier for the matchmaking rule set to use with this configuration.
45785
+ * @maxLength `128`
45786
+ * @pattern `[a-zA-Z0-9-\.]*`
45787
+ */
45375
45788
  RuleSetName: string;
45376
- GameSessionQueueArns?: string[];
45789
+ /**
45790
+ * An array of key-value pairs to apply to this resource.
45791
+ * @maxLength `200`
45792
+ */
45377
45793
  Tags?: GameLiftMatchmakingConfigurationTag[];
45378
45794
  };
45379
45795
  /**
45380
45796
  * Type definition for `AWS::GameLift::MatchmakingConfiguration`.
45381
- * Resource Type definition for AWS::GameLift::MatchmakingConfiguration
45797
+ * The AWS::GameLift::MatchmakingConfiguration resource creates an Amazon GameLift (GameLift) matchmaking configuration.
45382
45798
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingconfiguration.html}
45383
45799
  */
45384
45800
  export type GameLiftMatchmakingConfigurationAttributes = {
45385
- Id: string;
45801
+ /**
45802
+ * The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift matchmaking configuration resource and uniquely identifies it.
45803
+ * @pattern `^arn:.*:matchmakingconfiguration\/[a-zA-Z0-9-\.]*`
45804
+ */
45386
45805
  Arn: string;
45387
45806
  };
45388
- /**
45389
- * Type definition for `AWS::GameLift::MatchmakingConfiguration.Tag`.
45390
- */
45391
- export type GameLiftMatchmakingConfigurationTag = {
45392
- Value: string;
45393
- Key: string;
45394
- };
45395
45807
  /**
45396
45808
  * Type definition for `AWS::GameLift::MatchmakingConfiguration.GameProperty`.
45809
+ * A key-value pair that contains information about a game session.
45397
45810
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-matchmakingconfiguration-gameproperty.html}
45398
45811
  */
45399
45812
  export type GameLiftMatchmakingConfigurationGameProperty = {
45813
+ /**
45814
+ * The game property identifier.
45815
+ * @maxLength `32`
45816
+ */
45817
+ Key: string;
45818
+ /**
45819
+ * The game property value.
45820
+ * @maxLength `96`
45821
+ */
45400
45822
  Value: string;
45823
+ };
45824
+ /**
45825
+ * Type definition for `AWS::GameLift::MatchmakingConfiguration.Tag`.
45826
+ * A key-value pair to associate with a resource.
45827
+ */
45828
+ export type GameLiftMatchmakingConfigurationTag = {
45829
+ /**
45830
+ * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length.
45831
+ * @minLength `1`
45832
+ * @maxLength `128`
45833
+ */
45401
45834
  Key: string;
45835
+ /**
45836
+ * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length.
45837
+ * @maxLength `256`
45838
+ */
45839
+ Value: string;
45402
45840
  };
45403
45841
  /**
45404
45842
  * Type definition for `AWS::GameLift::MatchmakingRuleSet`.
45405
- * Resource Type definition for AWS::GameLift::MatchmakingRuleSet
45843
+ * The AWS::GameLift::MatchmakingRuleSet resource creates an Amazon GameLift (GameLift) matchmaking rule set.
45406
45844
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html}
45407
45845
  */
45408
45846
  export type GameLiftMatchmakingRuleSetProps = {
45847
+ /**
45848
+ * A unique identifier for the matchmaking rule set.
45849
+ * @maxLength `128`
45850
+ * @pattern `[a-zA-Z0-9-\.]*`
45851
+ */
45852
+ Name: string;
45853
+ /**
45854
+ * A collection of matchmaking rules, formatted as a JSON string.
45855
+ * @minLength `1`
45856
+ * @maxLength `65535`
45857
+ */
45409
45858
  RuleSetBody: string;
45859
+ /**
45860
+ * An array of key-value pairs to apply to this resource.
45861
+ * @minLength `1`
45862
+ * @maxLength `200`
45863
+ */
45410
45864
  Tags?: GameLiftMatchmakingRuleSetTag[];
45411
- Name: string;
45412
45865
  };
45413
45866
  /**
45414
45867
  * Type definition for `AWS::GameLift::MatchmakingRuleSet`.
45415
- * Resource Type definition for AWS::GameLift::MatchmakingRuleSet
45868
+ * The AWS::GameLift::MatchmakingRuleSet resource creates an Amazon GameLift (GameLift) matchmaking rule set.
45416
45869
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-matchmakingruleset.html}
45417
45870
  */
45418
45871
  export type GameLiftMatchmakingRuleSetAttributes = {
45419
- Id: string;
45872
+ /**
45873
+ * A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds.
45874
+ */
45875
+ CreationTime: string;
45876
+ /**
45877
+ * The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift matchmaking rule set resource and uniquely identifies it.
45878
+ * @pattern `^arn:.*:matchmakingruleset\/[a-zA-Z0-9-\.]*`
45879
+ */
45420
45880
  Arn: string;
45421
45881
  };
45422
45882
  /**
45423
45883
  * Type definition for `AWS::GameLift::MatchmakingRuleSet.Tag`.
45884
+ * A key-value pair to associate with a resource.
45424
45885
  */
45425
45886
  export type GameLiftMatchmakingRuleSetTag = {
45426
- Value: string;
45887
+ /**
45888
+ * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length.
45889
+ * @minLength `1`
45890
+ * @maxLength `128`
45891
+ */
45427
45892
  Key: string;
45893
+ /**
45894
+ * The value for the tag. You can specify a value that is 1 to 256 Unicode characters in length.
45895
+ * @minLength `1`
45896
+ * @maxLength `256`
45897
+ */
45898
+ Value: string;
45428
45899
  };
45429
45900
  /**
45430
45901
  * Type definition for `AWS::GameLift::Script`.
45431
- * Resource Type definition for AWS::GameLift::Script
45902
+ * The AWS::GameLift::Script resource creates a new script record for your Realtime Servers script. Realtime scripts are JavaScript that provide configuration settings and optional custom game logic for your game. The script is deployed when you create a Realtime Servers fleet to host your game sessions. Script logic is executed during an active game session.
45432
45903
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html}
45433
45904
  */
45434
45905
  export type GameLiftScriptProps = {
45906
+ /**
45907
+ * A descriptive label that is associated with a script. Script names do not need to be unique.
45908
+ * @minLength `1`
45909
+ * @maxLength `1024`
45910
+ */
45911
+ Name?: string;
45912
+ /**
45913
+ * The location of the Amazon S3 bucket where a zipped file containing your Realtime scripts is stored. The storage location must specify the Amazon S3 bucket name, the zip file name (the "key"), and a role ARN that allows Amazon GameLift to access the Amazon S3 storage location. The S3 bucket must be in the same Region where you want to create a new script. By default, Amazon GameLift uploads the latest version of the zip file; if you have S3 object versioning turned on, you can use the ObjectVersion parameter to specify an earlier version.
45914
+ */
45435
45915
  StorageLocation: GameLiftScriptS3Location;
45916
+ /**
45917
+ * The version that is associated with a script. Version strings do not need to be unique.
45918
+ * @minLength `1`
45919
+ * @maxLength `1024`
45920
+ */
45436
45921
  Version?: string;
45922
+ /**
45923
+ * An array of key-value pairs to apply to this resource.
45924
+ * @maxLength `200`
45925
+ */
45437
45926
  Tags?: GameLiftScriptTag[];
45438
- Name?: string;
45439
45927
  };
45440
45928
  /**
45441
45929
  * Type definition for `AWS::GameLift::Script`.
45442
- * Resource Type definition for AWS::GameLift::Script
45930
+ * The AWS::GameLift::Script resource creates a new script record for your Realtime Servers script. Realtime scripts are JavaScript that provide configuration settings and optional custom game logic for your game. The script is deployed when you create a Realtime Servers fleet to host your game sessions. Script logic is executed during an active game session.
45443
45931
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-gamelift-script.html}
45444
45932
  */
45445
45933
  export type GameLiftScriptAttributes = {
45446
- Id: string;
45934
+ /**
45935
+ * A time stamp indicating when this data object was created. Format is a number expressed in Unix time as milliseconds (for example "1469498468.057").
45936
+ */
45937
+ CreationTime: string;
45938
+ /**
45939
+ * The Amazon Resource Name (ARN) that is assigned to a Amazon GameLift script resource and uniquely identifies it. ARNs are unique across all Regions. In a GameLift script ARN, the resource ID matches the Id value.
45940
+ * @pattern `^arn:.*:script\/script-\S+`
45941
+ */
45447
45942
  Arn: string;
45943
+ /**
45944
+ * A unique identifier for the Realtime script
45945
+ * @pattern `^script-\S+`
45946
+ */
45947
+ Id: string;
45948
+ /**
45949
+ * The file size of the uploaded Realtime script, expressed in bytes. When files are uploaded from an S3 location, this value remains at "0".
45950
+ * @min `1`
45951
+ */
45952
+ SizeOnDisk: number;
45448
45953
  };
45449
45954
  /**
45450
45955
  * Type definition for `AWS::GameLift::Script.Tag`.
45956
+ * A key-value pair to associate with a resource.
45451
45957
  */
45452
45958
  export type GameLiftScriptTag = {
45453
- Value: string;
45959
+ /**
45960
+ * The key name of the tag. You can specify a value that is 1 to 128 Unicode characters in length.
45961
+ * @minLength `1`
45962
+ * @maxLength `128`
45963
+ */
45454
45964
  Key: string;
45965
+ /**
45966
+ * The value for the tag. You can specify a value that is 0 to 256 Unicode characters in length.
45967
+ * @maxLength `256`
45968
+ */
45969
+ Value: string;
45455
45970
  };
45456
45971
  /**
45457
45972
  * Type definition for `AWS::GameLift::Script.S3Location`.
45458
45973
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-gamelift-script-s3location.html}
45459
45974
  */
45460
45975
  export type GameLiftScriptS3Location = {
45461
- ObjectVersion?: string;
45976
+ /**
45977
+ * An Amazon S3 bucket identifier. This is the name of the S3 bucket.
45978
+ * @minLength `1`
45979
+ */
45462
45980
  Bucket: string;
45981
+ /**
45982
+ * The name of the zip file that contains the script files.
45983
+ * @minLength `1`
45984
+ */
45463
45985
  Key: string;
45986
+ /**
45987
+ * The version of the file, if object versioning is turned on for the bucket. Amazon GameLift uses this information when retrieving files from your S3 bucket. To retrieve a specific version of the file, provide an object version. To retrieve the latest version of the file, do not set this parameter.
45988
+ * @minLength `1`
45989
+ */
45990
+ ObjectVersion?: string;
45991
+ /**
45992
+ * The Amazon Resource Name (ARN) for an IAM role that allows Amazon GameLift to access the S3 bucket.
45993
+ * @minLength `1`
45994
+ */
45464
45995
  RoleArn: string;
45465
45996
  };
45466
45997
  /**
@@ -46908,6 +47439,10 @@ export type GrafanaWorkspaceProps = {
46908
47439
  * @maxLength `2048`
46909
47440
  */
46910
47441
  RoleArn?: string;
47442
+ /**
47443
+ * Allow workspace admins to install plugins
47444
+ */
47445
+ PluginAdminEnabled?: boolean;
46911
47446
  };
46912
47447
  /**
46913
47448
  * Type definition for `AWS::Grafana::Workspace`.
@@ -48711,7 +49246,10 @@ export type GuardDutyDetectorCFNScanEc2InstanceWithFindingsConfiguration = {
48711
49246
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-guardduty-detector-cfnfeatureconfiguration.html}
48712
49247
  */
48713
49248
  export type GuardDutyDetectorCFNFeatureConfiguration = {
48714
- Name: "S3_DATA_EVENTS" | "EKS_AUDIT_LOGS" | "EBS_MALWARE_PROTECTION" | "RDS_LOGIN_EVENTS" | "LAMBDA_NETWORK_LOGS" | "EKS_RUNTIME_MONITORING";
49249
+ /**
49250
+ * @maxLength `128`
49251
+ */
49252
+ Name: string;
48715
49253
  Status: "ENABLED" | "DISABLED";
48716
49254
  AdditionalConfiguration?: GuardDutyDetectorCFNFeatureAdditionalConfiguration[];
48717
49255
  };
@@ -48793,11 +49331,23 @@ export type GuardDutyFilterTag = {
48793
49331
  */
48794
49332
  export type GuardDutyIPSetProps = {
48795
49333
  Format: string;
48796
- Activate: boolean;
48797
- DetectorId: string;
48798
- Tags?: GuardDutyIPSetTag[];
48799
- Name?: string;
49334
+ Activate?: boolean;
49335
+ /**
49336
+ * @minLength `1`
49337
+ * @maxLength `300`
49338
+ */
49339
+ DetectorId?: string;
49340
+ /**
49341
+ * @minLength `1`
49342
+ * @maxLength `300`
49343
+ */
49344
+ Name: string;
49345
+ /**
49346
+ * @minLength `1`
49347
+ * @maxLength `300`
49348
+ */
48800
49349
  Location: string;
49350
+ Tags?: GuardDutyIPSetTagItem[];
48801
49351
  };
48802
49352
  /**
48803
49353
  * Type definition for `AWS::GuardDuty::IPSet`.
@@ -48808,11 +49358,18 @@ export type GuardDutyIPSetAttributes = {
48808
49358
  Id: string;
48809
49359
  };
48810
49360
  /**
48811
- * Type definition for `AWS::GuardDuty::IPSet.Tag`.
49361
+ * Type definition for `AWS::GuardDuty::IPSet.TagItem`.
48812
49362
  */
48813
- export type GuardDutyIPSetTag = {
48814
- Value: string;
49363
+ export type GuardDutyIPSetTagItem = {
49364
+ /**
49365
+ * @minLength `1`
49366
+ * @maxLength `128`
49367
+ */
48815
49368
  Key: string;
49369
+ /**
49370
+ * @maxLength `256`
49371
+ */
49372
+ Value: string;
48816
49373
  };
48817
49374
  /**
48818
49375
  * Type definition for `AWS::GuardDuty::Master`.
@@ -48857,12 +49414,24 @@ export type GuardDutyMemberAttributes = {
48857
49414
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-guardduty-threatintelset.html}
48858
49415
  */
48859
49416
  export type GuardDutyThreatIntelSetProps = {
49417
+ /**
49418
+ * @minLength `1`
49419
+ * @maxLength `300`
49420
+ */
48860
49421
  Format: string;
48861
- Activate: boolean;
48862
- DetectorId: string;
48863
- Tags?: GuardDutyThreatIntelSetTag[];
48864
- Name?: string;
49422
+ Activate?: boolean;
49423
+ /**
49424
+ * @minLength `1`
49425
+ * @maxLength `32`
49426
+ */
49427
+ DetectorId?: string;
49428
+ Name: string;
49429
+ /**
49430
+ * @minLength `1`
49431
+ * @maxLength `300`
49432
+ */
48865
49433
  Location: string;
49434
+ Tags?: GuardDutyThreatIntelSetTagItem[];
48866
49435
  };
48867
49436
  /**
48868
49437
  * Type definition for `AWS::GuardDuty::ThreatIntelSet`.
@@ -48873,11 +49442,18 @@ export type GuardDutyThreatIntelSetAttributes = {
48873
49442
  Id: string;
48874
49443
  };
48875
49444
  /**
48876
- * Type definition for `AWS::GuardDuty::ThreatIntelSet.Tag`.
49445
+ * Type definition for `AWS::GuardDuty::ThreatIntelSet.TagItem`.
48877
49446
  */
48878
- export type GuardDutyThreatIntelSetTag = {
48879
- Value: string;
49447
+ export type GuardDutyThreatIntelSetTagItem = {
49448
+ /**
49449
+ * @minLength `1`
49450
+ * @maxLength `128`
49451
+ */
48880
49452
  Key: string;
49453
+ /**
49454
+ * @maxLength `256`
49455
+ */
49456
+ Value: string;
48881
49457
  };
48882
49458
  /**
48883
49459
  * Type definition for `AWS::HealthImaging::Datastore`.
@@ -51502,6 +52078,213 @@ export type ImageBuilderInfrastructureConfigurationS3Logs = {
51502
52078
  */
51503
52079
  S3KeyPrefix?: string;
51504
52080
  };
52081
+ /**
52082
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy`.
52083
+ * Resource schema for AWS::ImageBuilder::LifecyclePolicy
52084
+ */
52085
+ export type ImageBuilderLifecyclePolicyProps = {
52086
+ /**
52087
+ * The name of the lifecycle policy.
52088
+ */
52089
+ Name: string;
52090
+ /**
52091
+ * The description of the lifecycle policy.
52092
+ */
52093
+ Description?: string;
52094
+ /**
52095
+ * The status of the lifecycle policy.
52096
+ */
52097
+ Status?: "DISABLED" | "ENABLED";
52098
+ /**
52099
+ * The execution role of the lifecycle policy.
52100
+ */
52101
+ ExecutionRole: string;
52102
+ /**
52103
+ * The resource type of the lifecycle policy.
52104
+ */
52105
+ ResourceType: "AMI_IMAGE" | "CONTAINER_IMAGE";
52106
+ /**
52107
+ * The policy details of the lifecycle policy.
52108
+ */
52109
+ PolicyDetails: ImageBuilderLifecyclePolicyPolicyDetail[];
52110
+ /**
52111
+ * The resource selection of the lifecycle policy.
52112
+ */
52113
+ ResourceSelection: ImageBuilderLifecyclePolicyResourceSelection;
52114
+ /**
52115
+ * The tags associated with the lifecycle policy.
52116
+ */
52117
+ Tags?: Record<string, string>;
52118
+ };
52119
+ /**
52120
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy`.
52121
+ * Resource schema for AWS::ImageBuilder::LifecyclePolicy
52122
+ */
52123
+ export type ImageBuilderLifecyclePolicyAttributes = {
52124
+ /**
52125
+ * The Amazon Resource Name (ARN) of the lifecycle policy.
52126
+ */
52127
+ Arn: string;
52128
+ };
52129
+ /**
52130
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.PolicyDetail`.
52131
+ * The policy detail of the lifecycle policy.
52132
+ */
52133
+ export type ImageBuilderLifecyclePolicyPolicyDetail = {
52134
+ /**
52135
+ * The action of the policy detail.
52136
+ */
52137
+ Action: ImageBuilderLifecyclePolicyAction;
52138
+ /**
52139
+ * The filters to apply of the policy detail.
52140
+ */
52141
+ Filter: ImageBuilderLifecyclePolicyFilter;
52142
+ /**
52143
+ * The exclusion rules to apply of the policy detail.
52144
+ */
52145
+ ExclusionRules?: ImageBuilderLifecyclePolicyExclusionRules;
52146
+ };
52147
+ /**
52148
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.Action`.
52149
+ * The action of the policy detail.
52150
+ */
52151
+ export type ImageBuilderLifecyclePolicyAction = {
52152
+ /**
52153
+ * The action type of the policy detail.
52154
+ */
52155
+ Type: "DELETE" | "DEPRECATE" | "DISABLE";
52156
+ /**
52157
+ * The included resources of the policy detail.
52158
+ */
52159
+ IncludeResources?: ImageBuilderLifecyclePolicyIncludeResources;
52160
+ };
52161
+ /**
52162
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.Filter`.
52163
+ * The filters to apply of the policy detail.
52164
+ */
52165
+ export type ImageBuilderLifecyclePolicyFilter = {
52166
+ /**
52167
+ * The filter type.
52168
+ */
52169
+ Type: "AGE" | "COUNT";
52170
+ /**
52171
+ * The filter value.
52172
+ */
52173
+ Value: number;
52174
+ /**
52175
+ * The value's time unit.
52176
+ */
52177
+ Unit?: ImageBuilderLifecyclePolicyTimeUnit;
52178
+ /**
52179
+ * The minimum number of Image Builder resources to retain.
52180
+ */
52181
+ RetainAtLeast?: number;
52182
+ };
52183
+ /**
52184
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.ExclusionRules`.
52185
+ * The exclusion rules to apply of the policy detail.
52186
+ */
52187
+ export type ImageBuilderLifecyclePolicyExclusionRules = {
52188
+ /**
52189
+ * The Image Builder tags to filter on.
52190
+ */
52191
+ TagMap?: Record<string, string>;
52192
+ /**
52193
+ * The AMI exclusion rules for the policy detail.
52194
+ */
52195
+ Amis?: ImageBuilderLifecyclePolicyAmiExclusionRules;
52196
+ };
52197
+ /**
52198
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.TimeUnit`.
52199
+ * A time unit.
52200
+ */
52201
+ export type ImageBuilderLifecyclePolicyTimeUnit = "DAYS" | "WEEKS" | "MONTHS" | "YEARS";
52202
+ /**
52203
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.IncludeResources`.
52204
+ * The included resources of the policy detail.
52205
+ */
52206
+ export type ImageBuilderLifecyclePolicyIncludeResources = {
52207
+ /**
52208
+ * Use to configure lifecycle actions on AMIs.
52209
+ */
52210
+ Amis?: boolean;
52211
+ /**
52212
+ * Use to configure lifecycle actions on containers.
52213
+ */
52214
+ Containers?: boolean;
52215
+ /**
52216
+ * Use to configure lifecycle actions on snapshots.
52217
+ */
52218
+ Snapshots?: boolean;
52219
+ };
52220
+ /**
52221
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.AmiExclusionRules`.
52222
+ * The AMI exclusion rules for the policy detail.
52223
+ */
52224
+ export type ImageBuilderLifecyclePolicyAmiExclusionRules = {
52225
+ /**
52226
+ * Use to apply lifecycle policy actions on whether the AMI is public.
52227
+ */
52228
+ IsPublic?: boolean;
52229
+ /**
52230
+ * Use to apply lifecycle policy actions on AMIs distributed to a set of regions.
52231
+ */
52232
+ Regions?: string[];
52233
+ /**
52234
+ * Use to apply lifecycle policy actions on AMIs shared with a set of regions.
52235
+ */
52236
+ SharedAccounts?: string[];
52237
+ /**
52238
+ * Use to apply lifecycle policy actions on AMIs launched before a certain time.
52239
+ */
52240
+ LastLaunched?: ImageBuilderLifecyclePolicyLastLaunched;
52241
+ /**
52242
+ * The AMIs to select by tag.
52243
+ */
52244
+ TagMap?: Record<string, string>;
52245
+ };
52246
+ /**
52247
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.LastLaunched`.
52248
+ * The last launched time of a resource.
52249
+ */
52250
+ export type ImageBuilderLifecyclePolicyLastLaunched = {
52251
+ /**
52252
+ * The last launched value.
52253
+ */
52254
+ Value: number;
52255
+ /**
52256
+ * The value's time unit.
52257
+ */
52258
+ Unit: ImageBuilderLifecyclePolicyTimeUnit;
52259
+ };
52260
+ /**
52261
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.ResourceSelection`.
52262
+ * The resource selection for the lifecycle policy.
52263
+ */
52264
+ export type ImageBuilderLifecyclePolicyResourceSelection = {
52265
+ /**
52266
+ * The recipes to select.
52267
+ */
52268
+ Recipes?: ImageBuilderLifecyclePolicyRecipeSelection[];
52269
+ /**
52270
+ * The Image Builder resources to select by tag.
52271
+ */
52272
+ TagMap?: Record<string, string>;
52273
+ };
52274
+ /**
52275
+ * Type definition for `AWS::ImageBuilder::LifecyclePolicy.RecipeSelection`.
52276
+ * The recipe to apply the lifecycle policy for.
52277
+ */
52278
+ export type ImageBuilderLifecyclePolicyRecipeSelection = {
52279
+ /**
52280
+ * The recipe name.
52281
+ */
52282
+ Name: string;
52283
+ /**
52284
+ * The recipe version.
52285
+ */
52286
+ SemanticVersion?: string;
52287
+ };
51505
52288
  /**
51506
52289
  * Type definition for `AWS::Inspector::AssessmentTarget`.
51507
52290
  * Resource Type definition for AWS::Inspector::AssessmentTarget
@@ -53365,6 +54148,23 @@ export type IoTSecurityProfileProps = {
53365
54148
  * A list of metrics whose data is retained (stored). By default, data is retained for any metric used in the profile's behaviors, but it is also retained for any metric specified here.
53366
54149
  */
53367
54150
  AdditionalMetricsToRetainV2?: IoTSecurityProfileMetricToRetain[];
54151
+ /**
54152
+ * A structure containing the mqtt topic for metrics export.
54153
+ */
54154
+ MetricsExportConfig?: {
54155
+ /**
54156
+ * The topic for metrics export.
54157
+ * @minLength `1`
54158
+ * @maxLength `512`
54159
+ */
54160
+ MqttTopic: string;
54161
+ /**
54162
+ * The ARN of the role that grants permission to publish to mqtt topic.
54163
+ * @minLength `20`
54164
+ * @maxLength `2048`
54165
+ */
54166
+ RoleArn: string;
54167
+ };
53368
54168
  /**
53369
54169
  * Metadata that can be used to manage the security profile.
53370
54170
  * @maxLength `50`
@@ -53418,6 +54218,10 @@ export type IoTSecurityProfileBehavior = {
53418
54218
  * Manage Detect alarm SNS notifications by setting behavior notification to on or suppressed. Detect will continue to performing device behavior evaluations. However, suppressed alarms wouldn't be forwarded for SNS notification.
53419
54219
  */
53420
54220
  SuppressAlerts?: boolean;
54221
+ /**
54222
+ * Flag to enable/disable metrics export for metric to be retained.
54223
+ */
54224
+ ExportMetric?: boolean;
53421
54225
  };
53422
54226
  /**
53423
54227
  * Type definition for `AWS::IoT::SecurityProfile.MetricDimension`.
@@ -53564,6 +54368,10 @@ export type IoTSecurityProfileMetricToRetain = {
53564
54368
  * The dimension of a metric.
53565
54369
  */
53566
54370
  MetricDimension?: IoTSecurityProfileMetricDimension;
54371
+ /**
54372
+ * Flag to enable/disable metrics export for metric to be retained.
54373
+ */
54374
+ ExportMetric?: boolean;
53567
54375
  };
53568
54376
  /**
53569
54377
  * Type definition for `AWS::IoT::SecurityProfile.Tag`.
@@ -65478,6 +66286,10 @@ export type LambdaFunctionProps = {
65478
66286
  * @pattern `^arn:(aws[a-zA-Z-]*)?:iam::\d{12}:role/?[a-zA-Z_0-9+=,.@\-_/]+$`
65479
66287
  */
65480
66288
  Role: string;
66289
+ /**
66290
+ * The logging configuration of your function
66291
+ */
66292
+ LoggingConfig?: LambdaFunctionLoggingConfig;
65481
66293
  /**
65482
66294
  * Environment variables that are accessible from function code during execution.
65483
66295
  */
@@ -65644,6 +66456,31 @@ export type LambdaFunctionCode = {
65644
66456
  */
65645
66457
  ImageUri?: string;
65646
66458
  };
66459
+ /**
66460
+ * Type definition for `AWS::Lambda::Function.LoggingConfig`.
66461
+ * The function's logging configuration.
66462
+ */
66463
+ export type LambdaFunctionLoggingConfig = {
66464
+ /**
66465
+ * Log delivery format for the lambda function
66466
+ */
66467
+ LogFormat?: "Text" | "JSON";
66468
+ /**
66469
+ * Application log granularity level, can only be used when LogFormat is set to JSON
66470
+ */
66471
+ ApplicationLogLevel?: "TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR" | "FATAL";
66472
+ /**
66473
+ * The log group name.
66474
+ * @minLength `1`
66475
+ * @maxLength `512`
66476
+ * @pattern `[\.\-_/#A-Za-z0-9]+`
66477
+ */
66478
+ LogGroup?: string;
66479
+ /**
66480
+ * System log granularity level, can only be used when LogFormat is set to JSON
66481
+ */
66482
+ SystemLogLevel?: "DEBUG" | "INFO" | "WARN";
66483
+ };
65647
66484
  /**
65648
66485
  * Type definition for `AWS::Lambda::Function.Environment`.
65649
66486
  * A function's environment variable settings.
@@ -72048,6 +72885,10 @@ export type MWAAEnvironmentProps = {
72048
72885
  * Choice for mode of webserver access including over public internet or via private VPC endpoint.
72049
72886
  */
72050
72887
  WebserverAccessMode?: MWAAEnvironmentWebserverAccessMode;
72888
+ /**
72889
+ * Defines whether the VPC endpoints configured for the environment are created, and managed, by the customer or by Amazon MWAA.
72890
+ */
72891
+ EndpointManagement?: MWAAEnvironmentEndpointManagement;
72051
72892
  };
72052
72893
  /**
72053
72894
  * Type definition for `AWS::MWAA::Environment`.
@@ -72069,12 +72910,27 @@ export type MWAAEnvironmentAttributes = {
72069
72910
  * @pattern `^https://.+$`
72070
72911
  */
72071
72912
  WebserverUrl: string;
72913
+ /**
72914
+ * The celery executor queue associated with the environment.
72915
+ * @maxLength `1224`
72916
+ */
72917
+ CeleryExecutorQueue: string;
72918
+ /**
72919
+ * The database VPC endpoint service name.
72920
+ * @maxLength `1224`
72921
+ */
72922
+ DatabaseVpcEndpointService: string;
72923
+ /**
72924
+ * The webserver VPC endpoint service name, applicable if private webserver access mode selected.
72925
+ * @maxLength `1224`
72926
+ */
72927
+ WebserverVpcEndpointService: string;
72072
72928
  };
72073
72929
  /**
72074
72930
  * Type definition for `AWS::MWAA::Environment.EnvironmentStatus`.
72075
72931
  * The status of the environment.
72076
72932
  */
72077
- export type MWAAEnvironmentEnvironmentStatus = "CREATING" | "CREATE_FAILED" | "AVAILABLE" | "UPDATING" | "DELETING" | "DELETED" | "UPDATE_FAILED" | "UNAVAILABLE";
72933
+ export type MWAAEnvironmentEnvironmentStatus = "CREATING" | "CREATE_FAILED" | "AVAILABLE" | "UPDATING" | "DELETING" | "DELETED" | "UPDATE_FAILED" | "UNAVAILABLE" | "PENDING";
72078
72934
  /**
72079
72935
  * Type definition for `AWS::MWAA::Environment.UpdateStatus`.
72080
72936
  */
@@ -72214,6 +73070,11 @@ export type MWAAEnvironmentLastUpdate = {
72214
73070
  * Choice for mode of webserver access including over public internet or via private VPC endpoint.
72215
73071
  */
72216
73072
  export type MWAAEnvironmentWebserverAccessMode = "PRIVATE_ONLY" | "PUBLIC_ONLY";
73073
+ /**
73074
+ * Type definition for `AWS::MWAA::Environment.EndpointManagement`.
73075
+ * Defines whether the VPC endpoints configured for the environment are created, and managed, by the customer or by Amazon MWAA.
73076
+ */
73077
+ export type MWAAEnvironmentEndpointManagement = "CUSTOMER" | "SERVICE";
72217
73078
  /**
72218
73079
  * Type definition for `AWS::Macie::AllowList`.
72219
73080
  * Macie AllowList resource schema
@@ -82073,6 +82934,40 @@ export type OpenSearchServerlessCollectionTag = {
82073
82934
  * The possible types for the collection
82074
82935
  */
82075
82936
  export type OpenSearchServerlessCollectionCollectionType = "SEARCH" | "TIMESERIES" | "VECTORSEARCH";
82937
+ /**
82938
+ * Type definition for `AWS::OpenSearchServerless::LifecyclePolicy`.
82939
+ * Amazon OpenSearchServerless lifecycle policy resource
82940
+ */
82941
+ export type OpenSearchServerlessLifecyclePolicyProps = {
82942
+ /**
82943
+ * The name of the policy
82944
+ * @minLength `3`
82945
+ * @maxLength `32`
82946
+ * @pattern `^[a-z][a-z0-9-]+$`
82947
+ */
82948
+ Name: string;
82949
+ /**
82950
+ * The type of lifecycle policy
82951
+ */
82952
+ Type: OpenSearchServerlessLifecyclePolicyLifecyclePolicyType;
82953
+ /**
82954
+ * The description of the policy
82955
+ * @maxLength `1000`
82956
+ */
82957
+ Description?: string;
82958
+ /**
82959
+ * The JSON policy document that is the content for the policy
82960
+ * @minLength `1`
82961
+ * @maxLength `20480`
82962
+ * @pattern `[\u0009\u000A\u000D\u0020-\u007E\u00A1-\u00FF]+`
82963
+ */
82964
+ Policy: string;
82965
+ };
82966
+ /**
82967
+ * Type definition for `AWS::OpenSearchServerless::LifecyclePolicy.LifecyclePolicyType`.
82968
+ * The type of lifecycle policy
82969
+ */
82970
+ export type OpenSearchServerlessLifecyclePolicyLifecyclePolicyType = "retention";
82076
82971
  /**
82077
82972
  * Type definition for `AWS::OpenSearchServerless::SecurityConfig`.
82078
82973
  * Amazon OpenSearchServerless security config resource
@@ -85607,6 +86502,7 @@ export type PipesPipeProps = {
85607
86502
  */
85608
86503
  Enrichment?: string;
85609
86504
  EnrichmentParameters?: PipesPipePipeEnrichmentParameters;
86505
+ LogConfiguration?: PipesPipePipeLogConfiguration;
85610
86506
  /**
85611
86507
  * @minLength `1`
85612
86508
  * @maxLength `64`
@@ -85762,6 +86658,17 @@ export type PipesPipeCapacityProviderStrategyItem = {
85762
86658
  */
85763
86659
  Base?: number;
85764
86660
  };
86661
+ /**
86662
+ * Type definition for `AWS::Pipes::Pipe.CloudwatchLogsLogDestination`.
86663
+ */
86664
+ export type PipesPipeCloudwatchLogsLogDestination = {
86665
+ /**
86666
+ * @minLength `1`
86667
+ * @maxLength `1600`
86668
+ * @pattern `^(^arn:aws([a-z]|\-)*:logs:([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1}):(\d{12}):log-group:.+)$`
86669
+ */
86670
+ LogGroupArn?: string;
86671
+ };
85765
86672
  /**
85766
86673
  * Type definition for `AWS::Pipes::Pipe.DeadLetterConfig`.
85767
86674
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-deadletterconfig.html}
@@ -85886,10 +86793,25 @@ export type PipesPipeFilterCriteria = {
85886
86793
  */
85887
86794
  Filters?: PipesPipeFilter[];
85888
86795
  };
86796
+ /**
86797
+ * Type definition for `AWS::Pipes::Pipe.FirehoseLogDestination`.
86798
+ */
86799
+ export type PipesPipeFirehoseLogDestination = {
86800
+ /**
86801
+ * @minLength `1`
86802
+ * @maxLength `1600`
86803
+ * @pattern `^(^arn:aws([a-z]|\-)*:firehose:([a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-\d{1}):(\d{12}):deliverystream/.+)$`
86804
+ */
86805
+ DeliveryStreamArn?: string;
86806
+ };
85889
86807
  /**
85890
86808
  * Type definition for `AWS::Pipes::Pipe.HeaderParametersMap`.
85891
86809
  */
85892
86810
  export type PipesPipeHeaderParametersMap = Record<string, string>;
86811
+ /**
86812
+ * Type definition for `AWS::Pipes::Pipe.IncludeExecutionDataOption`.
86813
+ */
86814
+ export type PipesPipeIncludeExecutionDataOption = "ALL";
85893
86815
  /**
85894
86816
  * Type definition for `AWS::Pipes::Pipe.KinesisStreamStartPosition`.
85895
86817
  */
@@ -85898,6 +86820,10 @@ export type PipesPipeKinesisStreamStartPosition = "TRIM_HORIZON" | "LATEST" | "A
85898
86820
  * Type definition for `AWS::Pipes::Pipe.LaunchType`.
85899
86821
  */
85900
86822
  export type PipesPipeLaunchType = "EC2" | "FARGATE" | "EXTERNAL";
86823
+ /**
86824
+ * Type definition for `AWS::Pipes::Pipe.LogLevel`.
86825
+ */
86826
+ export type PipesPipeLogLevel = "OFF" | "ERROR" | "INFO" | "TRACE";
85901
86827
  /**
85902
86828
  * Type definition for `AWS::Pipes::Pipe.MSKStartPosition`.
85903
86829
  */
@@ -85933,6 +86859,16 @@ export type PipesPipePipeEnrichmentParameters = {
85933
86859
  InputTemplate?: string;
85934
86860
  HttpParameters?: PipesPipePipeEnrichmentHttpParameters;
85935
86861
  };
86862
+ /**
86863
+ * Type definition for `AWS::Pipes::Pipe.PipeLogConfiguration`.
86864
+ */
86865
+ export type PipesPipePipeLogConfiguration = {
86866
+ S3LogDestination?: PipesPipeS3LogDestination;
86867
+ FirehoseLogDestination?: PipesPipeFirehoseLogDestination;
86868
+ CloudwatchLogsLogDestination?: PipesPipeCloudwatchLogsLogDestination;
86869
+ Level?: PipesPipeLogLevel;
86870
+ IncludeExecutionData?: PipesPipeIncludeExecutionDataOption[];
86871
+ };
85936
86872
  /**
85937
86873
  * Type definition for `AWS::Pipes::Pipe.PipeSourceActiveMQBrokerParameters`.
85938
86874
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipesourceactivemqbrokerparameters.html}
@@ -86216,7 +87152,7 @@ export type PipesPipePipeSourceSqsQueueParameters = {
86216
87152
  /**
86217
87153
  * Type definition for `AWS::Pipes::Pipe.PipeState`.
86218
87154
  */
86219
- export type PipesPipePipeState = "RUNNING" | "STOPPED" | "CREATING" | "UPDATING" | "DELETING" | "STARTING" | "STOPPING" | "CREATE_FAILED" | "UPDATE_FAILED" | "START_FAILED" | "STOP_FAILED";
87155
+ export type PipesPipePipeState = "RUNNING" | "STOPPED" | "CREATING" | "UPDATING" | "DELETING" | "STARTING" | "STOPPING" | "CREATE_FAILED" | "UPDATE_FAILED" | "START_FAILED" | "STOP_FAILED" | "DELETE_FAILED" | "CREATE_ROLLBACK_FAILED" | "DELETE_ROLLBACK_FAILED" | "UPDATE_ROLLBACK_FAILED";
86220
87156
  /**
86221
87157
  * Type definition for `AWS::Pipes::Pipe.PipeTargetBatchJobParameters`.
86222
87158
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-pipetargetbatchjobparameters.html}
@@ -86486,6 +87422,19 @@ export type PipesPipeQueryStringParametersMap = Record<string, string>;
86486
87422
  * Type definition for `AWS::Pipes::Pipe.RequestedPipeState`.
86487
87423
  */
86488
87424
  export type PipesPipeRequestedPipeState = "RUNNING" | "STOPPED";
87425
+ /**
87426
+ * Type definition for `AWS::Pipes::Pipe.S3LogDestination`.
87427
+ */
87428
+ export type PipesPipeS3LogDestination = {
87429
+ BucketName?: string;
87430
+ Prefix?: string;
87431
+ BucketOwner?: string;
87432
+ OutputFormat?: PipesPipeS3OutputFormat;
87433
+ };
87434
+ /**
87435
+ * Type definition for `AWS::Pipes::Pipe.S3OutputFormat`.
87436
+ */
87437
+ export type PipesPipeS3OutputFormat = "json" | "plain" | "w3c";
86489
87438
  /**
86490
87439
  * Type definition for `AWS::Pipes::Pipe.SageMakerPipelineParameter`.
86491
87440
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pipes-pipe-sagemakerpipelineparameter.html}
@@ -94888,7 +95837,6 @@ export type QuickSightDashboardDashboardVersion = {
94888
95837
  * @maxLength `20`
94889
95838
  */
94890
95839
  Sheets?: QuickSightDashboardSheet[];
94891
- Options?: QuickSightDashboardAssetOptions;
94892
95840
  };
94893
95841
  /**
94894
95842
  * Type definition for `AWS::QuickSight::Dashboard.DashboardVersionDefinition`.
@@ -100618,11 +101566,16 @@ export type QuickSightDataSetCastColumnTypeOperation = {
100618
101566
  */
100619
101567
  Format?: string;
100620
101568
  NewColumnType: QuickSightDataSetColumnDataType;
101569
+ SubType?: QuickSightDataSetColumnSubDataType;
100621
101570
  };
100622
101571
  /**
100623
101572
  * Type definition for `AWS::QuickSight::DataSet.ColumnDataType`.
100624
101573
  */
100625
101574
  export type QuickSightDataSetColumnDataType = "STRING" | "INTEGER" | "DECIMAL" | "DATETIME";
101575
+ /**
101576
+ * Type definition for `AWS::QuickSight::DataSet.ColumnSubDataType`.
101577
+ */
101578
+ export type QuickSightDataSetColumnSubDataType = "FIXED" | "FLOAT";
100626
101579
  /**
100627
101580
  * Type definition for `AWS::QuickSight::DataSet.ColumnDescription`.
100628
101581
  * <p>Metadata that contains a description for a column.</p>
@@ -100992,6 +101945,7 @@ export type QuickSightDataSetGeoSpatialDataRole = "COUNTRY" | "STATE" | "COUNTY"
100992
101945
  */
100993
101946
  export type QuickSightDataSetInputColumn = {
100994
101947
  Type: QuickSightDataSetInputColumnDataType;
101948
+ SubType?: QuickSightDataSetColumnSubDataType;
100995
101949
  /**
100996
101950
  * <p>The name of this column in the underlying data source.</p>
100997
101951
  * @minLength `1`
@@ -101170,6 +102124,7 @@ export type QuickSightDataSetNewDefaultValues = {
101170
102124
  */
101171
102125
  export type QuickSightDataSetOutputColumn = {
101172
102126
  Type?: QuickSightDataSetColumnDataType;
102127
+ SubType?: QuickSightDataSetColumnSubDataType;
101173
102128
  /**
101174
102129
  * <p>A description for a column.</p>
101175
102130
  * @maxLength `500`
@@ -108444,7 +109399,6 @@ export type QuickSightTemplateTemplateVersion = {
108444
109399
  * @maxLength `20`
108445
109400
  */
108446
109401
  Sheets?: QuickSightTemplateSheet[];
108447
- Options?: QuickSightTemplateAssetOptions;
108448
109402
  };
108449
109403
  /**
108450
109404
  * Type definition for `AWS::QuickSight::Template.TemplateVersionDefinition`.
@@ -114033,6 +114987,7 @@ export type ResourceExplorer2IndexIndexState = "ACTIVE" | "CREATING" | "DELETING
114033
114987
  export type ResourceExplorer2ViewProps = {
114034
114988
  Filters?: ResourceExplorer2ViewSearchFilter;
114035
114989
  IncludedProperties?: ResourceExplorer2ViewIncludedProperty[];
114990
+ Scope?: string;
114036
114991
  Tags?: ResourceExplorer2ViewTagMap;
114037
114992
  /**
114038
114993
  * @pattern `^[a-zA-Z0-9\-]{1,64}$`
@@ -114047,16 +115002,6 @@ export type ResourceExplorer2ViewProps = {
114047
115002
  export type ResourceExplorer2ViewAttributes = {
114048
115003
  ViewArn: string;
114049
115004
  };
114050
- /**
114051
- * Type definition for `AWS::ResourceExplorer2::View.SearchFilter`.
114052
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourceexplorer2-view-searchfilter.html}
114053
- */
114054
- export type ResourceExplorer2ViewSearchFilter = {
114055
- /**
114056
- * @maxLength `2048`
114057
- */
114058
- FilterString: string;
114059
- };
114060
115005
  /**
114061
115006
  * Type definition for `AWS::ResourceExplorer2::View.IncludedProperty`.
114062
115007
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourceexplorer2-view-includedproperty.html}
@@ -114068,6 +115013,16 @@ export type ResourceExplorer2ViewIncludedProperty = {
114068
115013
  */
114069
115014
  Name: string;
114070
115015
  };
115016
+ /**
115017
+ * Type definition for `AWS::ResourceExplorer2::View.SearchFilter`.
115018
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resourceexplorer2-view-searchfilter.html}
115019
+ */
115020
+ export type ResourceExplorer2ViewSearchFilter = {
115021
+ /**
115022
+ * @maxLength `2048`
115023
+ */
115024
+ FilterString: string;
115025
+ };
114071
115026
  /**
114072
115027
  * Type definition for `AWS::ResourceExplorer2::View.TagMap`.
114073
115028
  */
@@ -116564,9 +117519,13 @@ export type S3AccessPointPublicAccessBlockConfiguration = {
116564
117519
  */
116565
117520
  export type S3BucketProps = {
116566
117521
  /**
116567
- * Configuration for the transfer acceleration state.
117522
+ * The inventory configuration for an Amazon S3 bucket.
116568
117523
  */
116569
- AccelerateConfiguration?: S3BucketAccelerateConfiguration;
117524
+ InventoryConfigurations?: S3BucketInventoryConfiguration[];
117525
+ /**
117526
+ * Specifies website configuration parameters for an Amazon S3 bucket.
117527
+ */
117528
+ WebsiteConfiguration?: S3BucketWebsiteConfiguration;
116570
117529
  /**
116571
117530
  * A canned access control list (ACL) that grants predefined permissions to the bucket.
116572
117531
  */
@@ -116576,9 +117535,13 @@ export type S3BucketProps = {
116576
117535
  */
116577
117536
  AnalyticsConfigurations?: S3BucketAnalyticsConfiguration[];
116578
117537
  /**
116579
- * Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).
117538
+ * Configuration for the transfer acceleration state.
116580
117539
  */
116581
- BucketEncryption?: S3BucketBucketEncryption;
117540
+ AccelerateConfiguration?: S3BucketAccelerateConfiguration;
117541
+ /**
117542
+ * Configuration that defines how Amazon S3 handles public access.
117543
+ */
117544
+ PublicAccessBlockConfiguration?: S3BucketPublicAccessBlockConfiguration;
116582
117545
  /**
116583
117546
  * A name for the bucket. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the bucket name.
116584
117547
  * @minLength `3`
@@ -116587,65 +117550,57 @@ export type S3BucketProps = {
116587
117550
  */
116588
117551
  BucketName?: string;
116589
117552
  /**
116590
- * Rules that define cross-origin resource sharing of objects in this bucket.
116591
- */
116592
- CorsConfiguration?: S3BucketCorsConfiguration;
116593
- /**
116594
- * Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.
117553
+ * Specifies the container element for object ownership rules.
116595
117554
  */
116596
- IntelligentTieringConfigurations?: S3BucketIntelligentTieringConfiguration[];
117555
+ OwnershipControls?: S3BucketOwnershipControls;
116597
117556
  /**
116598
- * The inventory configuration for an Amazon S3 bucket.
117557
+ * Places an Object Lock configuration on the specified bucket.
116599
117558
  */
116600
- InventoryConfigurations?: S3BucketInventoryConfiguration[];
117559
+ ObjectLockConfiguration?: S3BucketObjectLockConfiguration;
116601
117560
  /**
116602
- * Rules that define how Amazon S3 manages objects during their lifetime.
117561
+ * Indicates whether this bucket has an Object Lock configuration enabled.
116603
117562
  */
116604
- LifecycleConfiguration?: S3BucketLifecycleConfiguration;
117563
+ ObjectLockEnabled?: boolean;
116605
117564
  /**
116606
117565
  * Settings that define where logs are stored.
116607
117566
  */
116608
117567
  LoggingConfiguration?: S3BucketLoggingConfiguration;
116609
117568
  /**
116610
- * Settings that define a metrics configuration for the CloudWatch request metrics from the bucket.
116611
- */
116612
- MetricsConfigurations?: S3BucketMetricsConfiguration[];
116613
- /**
116614
- * Configuration that defines how Amazon S3 handles bucket notifications.
117569
+ * Configuration for replicating objects in an S3 bucket.
116615
117570
  */
116616
- NotificationConfiguration?: S3BucketNotificationConfiguration;
117571
+ ReplicationConfiguration?: S3BucketReplicationConfiguration;
116617
117572
  /**
116618
- * Places an Object Lock configuration on the specified bucket.
117573
+ * An arbitrary set of tags (key-value pairs) for this S3 bucket.
116619
117574
  */
116620
- ObjectLockConfiguration?: S3BucketObjectLockConfiguration;
117575
+ Tags?: S3BucketTag[];
116621
117576
  /**
116622
- * Indicates whether this bucket has an Object Lock configuration enabled.
117577
+ * Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).
116623
117578
  */
116624
- ObjectLockEnabled?: boolean;
117579
+ BucketEncryption?: S3BucketBucketEncryption;
116625
117580
  /**
116626
- * Specifies the container element for object ownership rules.
117581
+ * Configuration that defines how Amazon S3 handles bucket notifications.
116627
117582
  */
116628
- OwnershipControls?: S3BucketOwnershipControls;
117583
+ NotificationConfiguration?: S3BucketNotificationConfiguration;
116629
117584
  /**
116630
- * Configuration that defines how Amazon S3 handles public access.
117585
+ * Rules that define how Amazon S3 manages objects during their lifetime.
116631
117586
  */
116632
- PublicAccessBlockConfiguration?: S3BucketPublicAccessBlockConfiguration;
117587
+ LifecycleConfiguration?: S3BucketLifecycleConfiguration;
116633
117588
  /**
116634
- * Configuration for replicating objects in an S3 bucket.
117589
+ * Describes the versioning state of an Amazon S3 bucket.
116635
117590
  */
116636
- ReplicationConfiguration?: S3BucketReplicationConfiguration;
117591
+ VersioningConfiguration?: S3BucketVersioningConfiguration;
116637
117592
  /**
116638
- * An arbitrary set of tags (key-value pairs) for this S3 bucket.
117593
+ * Settings that define a metrics configuration for the CloudWatch request metrics from the bucket.
116639
117594
  */
116640
- Tags?: S3BucketTag[];
117595
+ MetricsConfigurations?: S3BucketMetricsConfiguration[];
116641
117596
  /**
116642
- * Describes the versioning state of an Amazon S3 bucket.
117597
+ * Specifies the S3 Intelligent-Tiering configuration for an Amazon S3 bucket.
116643
117598
  */
116644
- VersioningConfiguration?: S3BucketVersioningConfiguration;
117599
+ IntelligentTieringConfigurations?: S3BucketIntelligentTieringConfiguration[];
116645
117600
  /**
116646
- * Specifies website configuration parameters for an Amazon S3 bucket.
117601
+ * Rules that define cross-origin resource sharing of objects in this bucket.
116647
117602
  */
116648
- WebsiteConfiguration?: S3BucketWebsiteConfiguration;
117603
+ CorsConfiguration?: S3BucketCorsConfiguration;
116649
117604
  };
116650
117605
  /**
116651
117606
  * Type definition for `AWS::S3::Bucket`.
@@ -116653,14 +117608,6 @@ export type S3BucketProps = {
116653
117608
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket.html}
116654
117609
  */
116655
117610
  export type S3BucketAttributes = {
116656
- /**
116657
- * The Amazon Resource Name (ARN) of the specified bucket.
116658
- */
116659
- Arn: string;
116660
- /**
116661
- * The IPv4 DNS name of the specified bucket.
116662
- */
116663
- DomainName: string;
116664
117611
  /**
116665
117612
  * The IPv6 DNS name of the specified bucket. For more information about dual-stack endpoints, see [Using Amazon S3 Dual-Stack Endpoints](https://docs.aws.amazon.com/AmazonS3/latest/dev/dual-stack-endpoints.html).
116666
117613
  */
@@ -116669,42 +117616,94 @@ export type S3BucketAttributes = {
116669
117616
  * Returns the regional domain name of the specified bucket.
116670
117617
  */
116671
117618
  RegionalDomainName: string;
117619
+ /**
117620
+ * The IPv4 DNS name of the specified bucket.
117621
+ */
117622
+ DomainName: string;
116672
117623
  /**
116673
117624
  * The Amazon S3 website endpoint for the specified bucket.
116674
117625
  */
116675
117626
  WebsiteURL: string;
117627
+ /**
117628
+ * The Amazon Resource Name (ARN) of the specified bucket.
117629
+ */
117630
+ Arn: string;
116676
117631
  };
116677
117632
  /**
116678
- * Type definition for `AWS::S3::Bucket.TagFilter`.
116679
- * Tags to use to identify a subset of objects for an Amazon S3 bucket.
116680
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html}
117633
+ * Type definition for `AWS::S3::Bucket.DefaultRetention`.
117634
+ * The default retention period that you want to apply to new objects placed in the specified bucket.
117635
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html}
116681
117636
  */
116682
- export type S3BucketTagFilter = {
117637
+ export type S3BucketDefaultRetention = {
117638
+ Years?: number;
117639
+ Days?: number;
117640
+ Mode?: "COMPLIANCE" | "GOVERNANCE";
117641
+ };
117642
+ /**
117643
+ * Type definition for `AWS::S3::Bucket.SourceSelectionCriteria`.
117644
+ * A container that describes additional filters for identifying the source objects that you want to replicate.
117645
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html}
117646
+ */
117647
+ export type S3BucketSourceSelectionCriteria = {
117648
+ /**
117649
+ * A filter that you can specify for selection for modifications on replicas.
117650
+ */
117651
+ ReplicaModifications?: S3BucketReplicaModifications;
117652
+ /**
117653
+ * A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS.
117654
+ */
117655
+ SseKmsEncryptedObjects?: S3BucketSseKmsEncryptedObjects;
117656
+ };
117657
+ /**
117658
+ * Type definition for `AWS::S3::Bucket.ReplicationTimeValue`.
117659
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtimevalue.html}
117660
+ */
117661
+ export type S3BucketReplicationTimeValue = {
117662
+ Minutes: number;
117663
+ };
117664
+ /**
117665
+ * Type definition for `AWS::S3::Bucket.FilterRule`.
117666
+ * Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.
117667
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html}
117668
+ */
117669
+ export type S3BucketFilterRule = {
116683
117670
  Value: string;
116684
- Key: string;
117671
+ /**
117672
+ * @maxLength `1024`
117673
+ */
117674
+ Name: string;
116685
117675
  };
116686
117676
  /**
116687
- * Type definition for `AWS::S3::Bucket.Destination`.
116688
- * Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).
116689
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html}
117677
+ * Type definition for `AWS::S3::Bucket.ReplicationRule`.
117678
+ * Specifies which Amazon S3 objects to replicate and where to store the replicas.
117679
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html}
116690
117680
  */
116691
- export type S3BucketDestination = {
117681
+ export type S3BucketReplicationRule = {
116692
117682
  /**
116693
- * The Amazon Resource Name (ARN) of the bucket to which data is exported.
117683
+ * Specifies whether the rule is enabled.
116694
117684
  */
116695
- BucketArn: string;
117685
+ Status: "Disabled" | "Enabled";
116696
117686
  /**
116697
- * The account ID that owns the destination S3 bucket.
117687
+ * Specifies which Amazon S3 bucket to store replicated objects in and their storage class.
116698
117688
  */
116699
- BucketAccountId?: string;
117689
+ Destination: S3BucketReplicationDestination;
117690
+ Filter?: S3BucketReplicationRuleFilter;
117691
+ Priority?: number;
116700
117692
  /**
116701
- * Specifies the file format used when exporting data to Amazon S3.
117693
+ * A container that describes additional filters for identifying the source objects that you want to replicate.
116702
117694
  */
116703
- Format: "CSV" | "ORC" | "Parquet";
117695
+ SourceSelectionCriteria?: S3BucketSourceSelectionCriteria;
116704
117696
  /**
116705
- * The prefix to use when exporting data. The prefix is prepended to all results.
117697
+ * A unique identifier for the rule.
117698
+ * @maxLength `255`
117699
+ */
117700
+ Id?: string;
117701
+ /**
117702
+ * An object key name prefix that identifies the object or objects to which the rule applies.
117703
+ * @maxLength `1024`
116706
117704
  */
116707
117705
  Prefix?: string;
117706
+ DeleteMarkerReplication?: S3BucketDeleteMarkerReplication;
116708
117707
  };
116709
117708
  /**
116710
117709
  * Type definition for `AWS::S3::Bucket.AccelerateConfiguration`.
@@ -116717,61 +117716,82 @@ export type S3BucketAccelerateConfiguration = {
116717
117716
  AccelerationStatus: "Enabled" | "Suspended";
116718
117717
  };
116719
117718
  /**
116720
- * Type definition for `AWS::S3::Bucket.AnalyticsConfiguration`.
116721
- * Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.
116722
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html}
117719
+ * Type definition for `AWS::S3::Bucket.Metrics`.
117720
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metrics.html}
116723
117721
  */
116724
- export type S3BucketAnalyticsConfiguration = {
116725
- TagFilters?: S3BucketTagFilter[];
116726
- /**
116727
- * Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.
116728
- */
116729
- StorageClassAnalysis: S3BucketStorageClassAnalysis;
117722
+ export type S3BucketMetrics = {
117723
+ Status: "Disabled" | "Enabled";
117724
+ EventThreshold?: S3BucketReplicationTimeValue;
117725
+ };
117726
+ /**
117727
+ * Type definition for `AWS::S3::Bucket.RoutingRuleCondition`.
117728
+ * A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals
117729
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html}
117730
+ */
117731
+ export type S3BucketRoutingRuleCondition = {
116730
117732
  /**
116731
- * The ID that identifies the analytics configuration.
117733
+ * The object key name prefix when the redirect is applied.
116732
117734
  */
116733
- Id: string;
117735
+ KeyPrefixEquals?: string;
116734
117736
  /**
116735
- * The prefix that an object must have to be included in the analytics results.
117737
+ * The HTTP error code when the redirect is applied.
116736
117738
  */
116737
- Prefix?: string;
117739
+ HttpErrorCodeReturnedEquals?: string;
116738
117740
  };
116739
117741
  /**
116740
- * Type definition for `AWS::S3::Bucket.StorageClassAnalysis`.
116741
- * Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.
116742
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html}
117742
+ * Type definition for `AWS::S3::Bucket.OwnershipControls`.
117743
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrols.html}
116743
117744
  */
116744
- export type S3BucketStorageClassAnalysis = {
116745
- /**
116746
- * Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.
116747
- */
116748
- DataExport?: S3BucketDataExport;
117745
+ export type S3BucketOwnershipControls = {
117746
+ Rules: S3BucketOwnershipControlsRule[];
116749
117747
  };
116750
117748
  /**
116751
- * Type definition for `AWS::S3::Bucket.DataExport`.
116752
- * Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.
116753
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html}
117749
+ * Type definition for `AWS::S3::Bucket.DeleteMarkerReplication`.
117750
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-deletemarkerreplication.html}
116754
117751
  */
116755
- export type S3BucketDataExport = {
117752
+ export type S3BucketDeleteMarkerReplication = {
117753
+ Status?: "Disabled" | "Enabled";
117754
+ };
117755
+ /**
117756
+ * Type definition for `AWS::S3::Bucket.RoutingRule`.
117757
+ * Specifies the redirect behavior and when a redirect is applied.
117758
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html}
117759
+ */
117760
+ export type S3BucketRoutingRule = {
116756
117761
  /**
116757
- * Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).
117762
+ * Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return.
116758
117763
  */
116759
- Destination: S3BucketDestination;
117764
+ RedirectRule: S3BucketRedirectRule;
116760
117765
  /**
116761
- * The version of the output schema to use when exporting data.
117766
+ * A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals
116762
117767
  */
116763
- OutputSchemaVersion: "V_1";
117768
+ RoutingRuleCondition?: S3BucketRoutingRuleCondition;
116764
117769
  };
116765
117770
  /**
116766
- * Type definition for `AWS::S3::Bucket.BucketEncryption`.
116767
- * Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).
116768
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html}
117771
+ * Type definition for `AWS::S3::Bucket.NotificationFilter`.
117772
+ * Specifies object key name filtering rules.
117773
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html}
116769
117774
  */
116770
- export type S3BucketBucketEncryption = {
117775
+ export type S3BucketNotificationFilter = {
116771
117776
  /**
116772
- * Specifies the default server-side-encryption configuration.
117777
+ * A container for object key name prefix and suffix filtering rules.
116773
117778
  */
116774
- ServerSideEncryptionConfiguration: S3BucketServerSideEncryptionRule[];
117779
+ S3Key: S3BucketS3KeyFilter;
117780
+ };
117781
+ /**
117782
+ * Type definition for `AWS::S3::Bucket.ReplicationConfiguration`.
117783
+ * A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.
117784
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html}
117785
+ */
117786
+ export type S3BucketReplicationConfiguration = {
117787
+ /**
117788
+ * The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects.
117789
+ */
117790
+ Role: string;
117791
+ /**
117792
+ * A container for one or more replication rules.
117793
+ */
117794
+ Rules: S3BucketReplicationRule[];
116775
117795
  };
116776
117796
  /**
116777
117797
  * Type definition for `AWS::S3::Bucket.ServerSideEncryptionRule`.
@@ -116789,23 +117809,48 @@ export type S3BucketServerSideEncryptionRule = {
116789
117809
  ServerSideEncryptionByDefault?: S3BucketServerSideEncryptionByDefault;
116790
117810
  };
116791
117811
  /**
116792
- * Type definition for `AWS::S3::Bucket.ServerSideEncryptionByDefault`.
116793
- * Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.
116794
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html}
117812
+ * Type definition for `AWS::S3::Bucket.ReplicationDestination`.
117813
+ * Specifies which Amazon S3 bucket to store replicated objects in and their storage class.
117814
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html}
116795
117815
  */
116796
- export type S3BucketServerSideEncryptionByDefault = {
117816
+ export type S3BucketReplicationDestination = {
116797
117817
  /**
116798
- * "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse.
117818
+ * Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.
116799
117819
  */
116800
- KMSMasterKeyID?: string;
116801
- SSEAlgorithm: "aws:kms" | "AES256" | "aws:kms:dsse";
117820
+ AccessControlTranslation?: S3BucketAccessControlTranslation;
117821
+ Account?: string;
117822
+ Metrics?: S3BucketMetrics;
117823
+ Bucket: string;
117824
+ /**
117825
+ * Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.
117826
+ */
117827
+ EncryptionConfiguration?: S3BucketEncryptionConfiguration;
117828
+ /**
117829
+ * The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.
117830
+ */
117831
+ StorageClass?: "DEEP_ARCHIVE" | "GLACIER" | "GLACIER_IR" | "INTELLIGENT_TIERING" | "ONEZONE_IA" | "REDUCED_REDUNDANCY" | "STANDARD" | "STANDARD_IA";
117832
+ ReplicationTime?: S3BucketReplicationTime;
116802
117833
  };
116803
117834
  /**
116804
- * Type definition for `AWS::S3::Bucket.CorsConfiguration`.
116805
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html}
117835
+ * Type definition for `AWS::S3::Bucket.OwnershipControlsRule`.
117836
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrolsrule.html}
116806
117837
  */
116807
- export type S3BucketCorsConfiguration = {
116808
- CorsRules: S3BucketCorsRule[];
117838
+ export type S3BucketOwnershipControlsRule = {
117839
+ /**
117840
+ * Specifies an object ownership rule.
117841
+ */
117842
+ ObjectOwnership?: "ObjectWriter" | "BucketOwnerPreferred" | "BucketOwnerEnforced";
117843
+ };
117844
+ /**
117845
+ * Type definition for `AWS::S3::Bucket.EventBridgeConfiguration`.
117846
+ * Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.
117847
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-eventbridgeconfig.html}
117848
+ */
117849
+ export type S3BucketEventBridgeConfiguration = {
117850
+ /**
117851
+ * Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket.
117852
+ */
117853
+ EventBridgeEnabled: boolean;
116809
117854
  };
116810
117855
  /**
116811
117856
  * Type definition for `AWS::S3::Bucket.CorsRule`.
@@ -116814,9 +117859,9 @@ export type S3BucketCorsConfiguration = {
116814
117859
  */
116815
117860
  export type S3BucketCorsRule = {
116816
117861
  /**
116817
- * Headers that are specified in the Access-Control-Request-Headers header.
117862
+ * One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).
116818
117863
  */
116819
- AllowedHeaders?: string[];
117864
+ ExposedHeaders?: string[];
116820
117865
  /**
116821
117866
  * An HTTP method that you allow the origin to execute.
116822
117867
  */
@@ -116826,178 +117871,256 @@ export type S3BucketCorsRule = {
116826
117871
  */
116827
117872
  AllowedOrigins: string[];
116828
117873
  /**
116829
- * One or more headers in the response that you want customers to be able to access from their applications (for example, from a JavaScript XMLHttpRequest object).
117874
+ * Headers that are specified in the Access-Control-Request-Headers header.
116830
117875
  */
116831
- ExposedHeaders?: string[];
117876
+ AllowedHeaders?: string[];
117877
+ /**
117878
+ * The time in seconds that your browser is to cache the preflight response for the specified resource.
117879
+ */
117880
+ MaxAge?: number;
116832
117881
  /**
116833
117882
  * A unique identifier for this rule.
116834
117883
  * @maxLength `255`
116835
117884
  */
116836
117885
  Id?: string;
117886
+ };
117887
+ /**
117888
+ * Type definition for `AWS::S3::Bucket.AccessControlTranslation`.
117889
+ * Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.
117890
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html}
117891
+ */
117892
+ export type S3BucketAccessControlTranslation = {
117893
+ Owner: "Destination";
117894
+ };
117895
+ /**
117896
+ * Type definition for `AWS::S3::Bucket.ObjectLockRule`.
117897
+ * The Object Lock rule in place for the specified object.
117898
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html}
117899
+ */
117900
+ export type S3BucketObjectLockRule = {
116837
117901
  /**
116838
- * The time in seconds that your browser is to cache the preflight response for the specified resource.
117902
+ * The default retention period that you want to apply to new objects placed in the specified bucket.
116839
117903
  */
116840
- MaxAge?: number;
117904
+ DefaultRetention?: S3BucketDefaultRetention;
116841
117905
  };
116842
117906
  /**
116843
- * Type definition for `AWS::S3::Bucket.IntelligentTieringConfiguration`.
116844
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html}
117907
+ * Type definition for `AWS::S3::Bucket.Rule`.
117908
+ * You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.
117909
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html}
116845
117910
  */
116846
- export type S3BucketIntelligentTieringConfiguration = {
117911
+ export type S3BucketRule = {
117912
+ Status: "Enabled" | "Disabled";
117913
+ ExpiredObjectDeleteMarker?: boolean;
117914
+ NoncurrentVersionExpirationInDays?: number;
117915
+ Transitions?: S3BucketTransition[];
116847
117916
  /**
116848
- * The ID used to identify the S3 Intelligent-Tiering configuration.
117917
+ * @maxLength `20`
117918
+ * @pattern `[0-9]+`
116849
117919
  */
116850
- Id: string;
117920
+ ObjectSizeGreaterThan?: string;
117921
+ TagFilters?: S3BucketTagFilter[];
117922
+ NoncurrentVersionTransitions?: S3BucketNoncurrentVersionTransition[];
117923
+ Prefix?: string;
116851
117924
  /**
116852
- * An object key name prefix that identifies the subset of objects to which the rule applies.
117925
+ * @maxLength `20`
117926
+ * @pattern `[0-9]+`
116853
117927
  */
116854
- Prefix?: string;
117928
+ ObjectSizeLessThan?: string;
116855
117929
  /**
116856
- * Specifies the status of the configuration.
117930
+ * Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.
116857
117931
  */
116858
- Status: "Disabled" | "Enabled";
117932
+ NoncurrentVersionTransition?: S3BucketNoncurrentVersionTransition;
116859
117933
  /**
116860
- * A container for a key-value pair.
117934
+ * The date value in ISO 8601 format. The timezone is always UTC. (YYYY-MM-DDThh:mm:ssZ)
117935
+ * @pattern `^([0-2]\d{3})-(0[0-9]|1[0-2])-([0-2]\d|3[01])T([01]\d|2[0-4]):([0-5]\d):([0-6]\d)((\.\d{3})?)Z$`
116861
117936
  */
116862
- TagFilters?: S3BucketTagFilter[];
117937
+ ExpirationDate?: string;
116863
117938
  /**
116864
- * Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS.
117939
+ * Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime
116865
117940
  */
116866
- Tierings: S3BucketTiering[];
116867
- };
116868
- /**
116869
- * Type definition for `AWS::S3::Bucket.Tiering`.
116870
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html}
116871
- */
116872
- export type S3BucketTiering = {
117941
+ NoncurrentVersionExpiration?: S3BucketNoncurrentVersionExpiration;
117942
+ ExpirationInDays?: number;
116873
117943
  /**
116874
- * S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.
117944
+ * You must specify at least one of "TransitionDate" and "TransitionInDays"
116875
117945
  */
116876
- AccessTier: "ARCHIVE_ACCESS" | "DEEP_ARCHIVE_ACCESS";
117946
+ Transition?: S3BucketTransition;
116877
117947
  /**
116878
- * The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days).
117948
+ * @maxLength `255`
116879
117949
  */
116880
- Days: number;
117950
+ Id?: string;
117951
+ /**
117952
+ * Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.
117953
+ */
117954
+ AbortIncompleteMultipartUpload?: S3BucketAbortIncompleteMultipartUpload;
116881
117955
  };
116882
117956
  /**
116883
- * Type definition for `AWS::S3::Bucket.InventoryConfiguration`.
116884
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html}
117957
+ * Type definition for `AWS::S3::Bucket.S3KeyFilter`.
117958
+ * A container for object key name prefix and suffix filtering rules.
117959
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html}
116885
117960
  */
116886
- export type S3BucketInventoryConfiguration = {
117961
+ export type S3BucketS3KeyFilter = {
117962
+ Rules: S3BucketFilterRule[];
117963
+ };
117964
+ /**
117965
+ * Type definition for `AWS::S3::Bucket.AnalyticsConfiguration`.
117966
+ * Specifies the configuration and any analyses for the analytics filter of an Amazon S3 bucket.
117967
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-analyticsconfiguration.html}
117968
+ */
117969
+ export type S3BucketAnalyticsConfiguration = {
116887
117970
  /**
116888
- * Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).
117971
+ * Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.
116889
117972
  */
116890
- Destination: S3BucketDestination;
117973
+ StorageClassAnalysis: S3BucketStorageClassAnalysis;
117974
+ TagFilters?: S3BucketTagFilter[];
116891
117975
  /**
116892
- * Specifies whether the inventory is enabled or disabled.
117976
+ * The ID that identifies the analytics configuration.
116893
117977
  */
116894
- Enabled: boolean;
117978
+ Id: string;
116895
117979
  /**
116896
- * The ID used to identify the inventory configuration.
117980
+ * The prefix that an object must have to be included in the analytics results.
116897
117981
  */
116898
- Id: string;
117982
+ Prefix?: string;
117983
+ };
117984
+ /**
117985
+ * Type definition for `AWS::S3::Bucket.Destination`.
117986
+ * Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).
117987
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-destination.html}
117988
+ */
117989
+ export type S3BucketDestination = {
116899
117990
  /**
116900
- * Object versions to include in the inventory list.
117991
+ * The Amazon Resource Name (ARN) of the bucket to which data is exported.
116901
117992
  */
116902
- IncludedObjectVersions: "All" | "Current";
117993
+ BucketArn: string;
116903
117994
  /**
116904
- * Contains the optional fields that are included in the inventory results.
117995
+ * Specifies the file format used when exporting data to Amazon S3.
116905
117996
  */
116906
- OptionalFields?: ("Size" | "LastModifiedDate" | "StorageClass" | "ETag" | "IsMultipartUploaded" | "ReplicationStatus" | "EncryptionStatus" | "ObjectLockRetainUntilDate" | "ObjectLockMode" | "ObjectLockLegalHoldStatus" | "IntelligentTieringAccessTier" | "BucketKeyStatus")[];
117997
+ Format: "CSV" | "ORC" | "Parquet";
116907
117998
  /**
116908
- * The prefix that is prepended to all inventory results.
117999
+ * The account ID that owns the destination S3 bucket.
116909
118000
  */
116910
- Prefix?: string;
118001
+ BucketAccountId?: string;
116911
118002
  /**
116912
- * Specifies the schedule for generating inventory results.
118003
+ * The prefix to use when exporting data. The prefix is prepended to all results.
116913
118004
  */
116914
- ScheduleFrequency: "Daily" | "Weekly";
118005
+ Prefix?: string;
116915
118006
  };
116916
118007
  /**
116917
- * Type definition for `AWS::S3::Bucket.LifecycleConfiguration`.
116918
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html}
118008
+ * Type definition for `AWS::S3::Bucket.RedirectAllRequestsTo`.
118009
+ * Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.
118010
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html}
116919
118011
  */
116920
- export type S3BucketLifecycleConfiguration = {
118012
+ export type S3BucketRedirectAllRequestsTo = {
116921
118013
  /**
116922
- * A lifecycle rule for individual objects in an Amazon S3 bucket.
118014
+ * Protocol to use when redirecting requests. The default is the protocol that is used in the original request.
116923
118015
  */
116924
- Rules: S3BucketRule[];
118016
+ Protocol?: "http" | "https";
118017
+ /**
118018
+ * Name of the host where requests are redirected.
118019
+ */
118020
+ HostName: string;
116925
118021
  };
116926
118022
  /**
116927
- * Type definition for `AWS::S3::Bucket.Rule`.
116928
- * You must specify at least one of the following properties: AbortIncompleteMultipartUpload, ExpirationDate, ExpirationInDays, NoncurrentVersionExpirationInDays, NoncurrentVersionTransition, NoncurrentVersionTransitions, Transition, or Transitions.
116929
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule.html}
118023
+ * Type definition for `AWS::S3::Bucket.TagFilter`.
118024
+ * Tags to use to identify a subset of objects for an Amazon S3 bucket.
118025
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tagfilter.html}
116930
118026
  */
116931
- export type S3BucketRule = {
118027
+ export type S3BucketTagFilter = {
118028
+ Value: string;
118029
+ Key: string;
118030
+ };
118031
+ /**
118032
+ * Type definition for `AWS::S3::Bucket.WebsiteConfiguration`.
118033
+ * Specifies website configuration parameters for an Amazon S3 bucket.
118034
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html}
118035
+ */
118036
+ export type S3BucketWebsiteConfiguration = {
116932
118037
  /**
116933
- * Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.
118038
+ * The name of the index document for the website.
116934
118039
  */
116935
- AbortIncompleteMultipartUpload?: S3BucketAbortIncompleteMultipartUpload;
118040
+ IndexDocument?: string;
116936
118041
  /**
116937
- * The date value in ISO 8601 format. The timezone is always UTC. (YYYY-MM-DDThh:mm:ssZ)
116938
- * @pattern `^([0-2]\d{3})-(0[0-9]|1[0-2])-([0-2]\d|3[01])T([01]\d|2[0-4]):([0-5]\d):([0-6]\d)((\.\d{3})?)Z$`
118042
+ * Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.
116939
118043
  */
116940
- ExpirationDate?: string;
116941
- ExpirationInDays?: number;
116942
- ExpiredObjectDeleteMarker?: boolean;
118044
+ RedirectAllRequestsTo?: S3BucketRedirectAllRequestsTo;
118045
+ RoutingRules?: S3BucketRoutingRule[];
116943
118046
  /**
116944
- * @maxLength `255`
118047
+ * The name of the error document for the website.
116945
118048
  */
116946
- Id?: string;
116947
- NoncurrentVersionExpirationInDays?: number;
118049
+ ErrorDocument?: string;
118050
+ };
118051
+ /**
118052
+ * Type definition for `AWS::S3::Bucket.TopicConfiguration`.
118053
+ * The topic to which notifications are sent and the events for which notifications are generated.
118054
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html}
118055
+ */
118056
+ export type S3BucketTopicConfiguration = {
116948
118057
  /**
116949
- * Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime
118058
+ * The filtering rules that determine for which objects to send notifications.
116950
118059
  */
116951
- NoncurrentVersionExpiration?: S3BucketNoncurrentVersionExpiration;
118060
+ Filter?: S3BucketNotificationFilter;
116952
118061
  /**
116953
- * Container for the transition rule that describes when noncurrent objects transition to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 transition noncurrent object versions to the STANDARD_IA, ONEZONE_IA, INTELLIGENT_TIERING, GLACIER_IR, GLACIER, or DEEP_ARCHIVE storage class at a specific period in the object's lifetime.
118062
+ * The Amazon S3 bucket event about which to send notifications.
116954
118063
  */
116955
- NoncurrentVersionTransition?: S3BucketNoncurrentVersionTransition;
116956
- NoncurrentVersionTransitions?: S3BucketNoncurrentVersionTransition[];
116957
- Prefix?: string;
116958
- Status: "Enabled" | "Disabled";
116959
- TagFilters?: S3BucketTagFilter[];
118064
+ Event: string;
116960
118065
  /**
116961
- * @maxLength `20`
116962
- * @pattern `[0-9]+`
118066
+ * The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type.
116963
118067
  */
116964
- ObjectSizeGreaterThan?: string;
118068
+ Topic: string;
118069
+ };
118070
+ /**
118071
+ * Type definition for `AWS::S3::Bucket.IntelligentTieringConfiguration`.
118072
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-intelligenttieringconfiguration.html}
118073
+ */
118074
+ export type S3BucketIntelligentTieringConfiguration = {
116965
118075
  /**
116966
- * @maxLength `20`
116967
- * @pattern `[0-9]+`
118076
+ * Specifies the status of the configuration.
116968
118077
  */
116969
- ObjectSizeLessThan?: string;
118078
+ Status: "Disabled" | "Enabled";
116970
118079
  /**
116971
- * You must specify at least one of "TransitionDate" and "TransitionInDays"
118080
+ * Specifies a list of S3 Intelligent-Tiering storage class tiers in the configuration. At least one tier must be defined in the list. At most, you can specify two tiers in the list, one for each available AccessTier: ARCHIVE_ACCESS and DEEP_ARCHIVE_ACCESS.
116972
118081
  */
116973
- Transition?: S3BucketTransition;
116974
- Transitions?: S3BucketTransition[];
116975
- };
116976
- /**
116977
- * Type definition for `AWS::S3::Bucket.AbortIncompleteMultipartUpload`.
116978
- * Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.
116979
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html}
116980
- */
116981
- export type S3BucketAbortIncompleteMultipartUpload = {
118082
+ Tierings: S3BucketTiering[];
116982
118083
  /**
116983
- * Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload.
118084
+ * A container for a key-value pair.
116984
118085
  */
116985
- DaysAfterInitiation: number;
118086
+ TagFilters?: S3BucketTagFilter[];
118087
+ /**
118088
+ * The ID used to identify the S3 Intelligent-Tiering configuration.
118089
+ */
118090
+ Id: string;
118091
+ /**
118092
+ * An object key name prefix that identifies the subset of objects to which the rule applies.
118093
+ */
118094
+ Prefix?: string;
116986
118095
  };
116987
118096
  /**
116988
- * Type definition for `AWS::S3::Bucket.NoncurrentVersionExpiration`.
116989
- * Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime
116990
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversionexpiration.html}
118097
+ * Type definition for `AWS::S3::Bucket.PublicAccessBlockConfiguration`.
118098
+ * Configuration that defines how Amazon S3 handles public access.
118099
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html}
116991
118100
  */
116992
- export type S3BucketNoncurrentVersionExpiration = {
118101
+ export type S3BucketPublicAccessBlockConfiguration = {
116993
118102
  /**
116994
- * Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action
116995
- */
116996
- NoncurrentDays: number;
118103
+ * Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.
118104
+ Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.
118105
+ */
118106
+ RestrictPublicBuckets?: boolean;
116997
118107
  /**
116998
- * Specified the number of newer noncurrent and current versions that must exists before performing the associated action
116999
- */
117000
- NewerNoncurrentVersions?: number;
118108
+ * Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.
118109
+ Enabling this setting doesn't affect existing bucket policies.
118110
+ */
118111
+ BlockPublicPolicy?: boolean;
118112
+ /**
118113
+ * Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:
118114
+ - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.
118115
+ - PUT Object calls fail if the request includes a public ACL.
118116
+ Enabling this setting doesn't affect existing policies or ACLs.
118117
+ */
118118
+ BlockPublicAcls?: boolean;
118119
+ /**
118120
+ * Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.
118121
+ Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.
118122
+ */
118123
+ IgnorePublicAcls?: boolean;
117001
118124
  };
117002
118125
  /**
117003
118126
  * Type definition for `AWS::S3::Bucket.NoncurrentVersionTransition`.
@@ -117019,29 +118142,27 @@ export type S3BucketNoncurrentVersionTransition = {
117019
118142
  NewerNoncurrentVersions?: number;
117020
118143
  };
117021
118144
  /**
117022
- * Type definition for `AWS::S3::Bucket.Transition`.
117023
- * You must specify at least one of "TransitionDate" and "TransitionInDays"
117024
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html}
118145
+ * Type definition for `AWS::S3::Bucket.StorageClassAnalysis`.
118146
+ * Specifies data related to access patterns to be collected and made available to analyze the tradeoffs between different storage classes for an Amazon S3 bucket.
118147
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-storageclassanalysis.html}
117025
118148
  */
117026
- export type S3BucketTransition = {
117027
- StorageClass: "DEEP_ARCHIVE" | "GLACIER" | "Glacier" | "GLACIER_IR" | "INTELLIGENT_TIERING" | "ONEZONE_IA" | "STANDARD_IA";
118149
+ export type S3BucketStorageClassAnalysis = {
117028
118150
  /**
117029
- * The date value in ISO 8601 format. The timezone is always UTC. (YYYY-MM-DDThh:mm:ssZ)
117030
- * @pattern `^([0-2]\d{3})-(0[0-9]|1[0-2])-([0-2]\d|3[01])T([01]\d|2[0-4]):([0-5]\d):([0-6]\d)((\.\d{3})?)Z$`
118151
+ * Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.
117031
118152
  */
117032
- TransitionDate?: string;
117033
- TransitionInDays?: number;
118153
+ DataExport?: S3BucketDataExport;
117034
118154
  };
117035
118155
  /**
117036
- * Type definition for `AWS::S3::Bucket.LoggingConfiguration`.
117037
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html}
118156
+ * Type definition for `AWS::S3::Bucket.ServerSideEncryptionByDefault`.
118157
+ * Specifies the default server-side encryption to apply to new objects in the bucket. If a PUT Object request doesn't specify any server-side encryption, this default encryption will be applied.
118158
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-serversideencryptionbydefault.html}
117038
118159
  */
117039
- export type S3BucketLoggingConfiguration = {
118160
+ export type S3BucketServerSideEncryptionByDefault = {
118161
+ SSEAlgorithm: "aws:kms" | "AES256" | "aws:kms:dsse";
117040
118162
  /**
117041
- * The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined.
118163
+ * "KMSMasterKeyID" can only be used when you set the value of SSEAlgorithm as aws:kms or aws:kms:dsse.
117042
118164
  */
117043
- DestinationBucketName?: string;
117044
- LogFilePrefix?: string;
118165
+ KMSMasterKeyID?: string;
117045
118166
  };
117046
118167
  /**
117047
118168
  * Type definition for `AWS::S3::Bucket.MetricsConfiguration`.
@@ -117049,34 +118170,31 @@ export type S3BucketLoggingConfiguration = {
117049
118170
  */
117050
118171
  export type S3BucketMetricsConfiguration = {
117051
118172
  AccessPointArn?: string;
118173
+ TagFilters?: S3BucketTagFilter[];
117052
118174
  Id: string;
117053
118175
  Prefix?: string;
117054
- TagFilters?: S3BucketTagFilter[];
117055
118176
  };
117056
118177
  /**
117057
- * Type definition for `AWS::S3::Bucket.NotificationConfiguration`.
117058
- * Describes the notification configuration for an Amazon S3 bucket.
117059
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html}
118178
+ * Type definition for `AWS::S3::Bucket.ObjectLockConfiguration`.
118179
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html}
117060
118180
  */
117061
- export type S3BucketNotificationConfiguration = {
118181
+ export type S3BucketObjectLockConfiguration = {
118182
+ ObjectLockEnabled?: "Enabled";
117062
118183
  /**
117063
- * Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.
118184
+ * The Object Lock rule in place for the specified object.
117064
118185
  */
117065
- EventBridgeConfiguration?: S3BucketEventBridgeConfiguration;
117066
- LambdaConfigurations?: S3BucketLambdaConfiguration[];
117067
- QueueConfigurations?: S3BucketQueueConfiguration[];
117068
- TopicConfigurations?: S3BucketTopicConfiguration[];
118186
+ Rule?: S3BucketObjectLockRule;
117069
118187
  };
117070
118188
  /**
117071
- * Type definition for `AWS::S3::Bucket.EventBridgeConfiguration`.
117072
- * Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.
117073
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-eventbridgeconfig.html}
118189
+ * Type definition for `AWS::S3::Bucket.LoggingConfiguration`.
118190
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-loggingconfig.html}
117074
118191
  */
117075
- export type S3BucketEventBridgeConfiguration = {
118192
+ export type S3BucketLoggingConfiguration = {
118193
+ LogFilePrefix?: string;
117076
118194
  /**
117077
- * Specifies whether to send notifications to Amazon EventBridge when events occur in an Amazon S3 bucket.
118195
+ * The name of an Amazon S3 bucket where Amazon S3 store server access log files. You can store log files in any bucket that you own. By default, logs are stored in the bucket where the LoggingConfiguration property is defined.
117078
118196
  */
117079
- EventBridgeEnabled: boolean;
118197
+ DestinationBucketName?: string;
117080
118198
  };
117081
118199
  /**
117082
118200
  * Type definition for `AWS::S3::Bucket.LambdaConfiguration`.
@@ -117085,318 +118203,199 @@ export type S3BucketEventBridgeConfiguration = {
117085
118203
  */
117086
118204
  export type S3BucketLambdaConfiguration = {
117087
118205
  /**
117088
- * The Amazon S3 bucket event for which to invoke the AWS Lambda function.
118206
+ * The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs.
117089
118207
  */
117090
- Event: string;
118208
+ Function: string;
117091
118209
  /**
117092
118210
  * The filtering rules that determine which objects invoke the AWS Lambda function.
117093
118211
  */
117094
118212
  Filter?: S3BucketNotificationFilter;
117095
118213
  /**
117096
- * The Amazon Resource Name (ARN) of the AWS Lambda function that Amazon S3 invokes when the specified event type occurs.
118214
+ * The Amazon S3 bucket event for which to invoke the AWS Lambda function.
117097
118215
  */
117098
- Function: string;
118216
+ Event: string;
117099
118217
  };
117100
118218
  /**
117101
- * Type definition for `AWS::S3::Bucket.QueueConfiguration`.
117102
- * The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.
117103
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html}
118219
+ * Type definition for `AWS::S3::Bucket.DataExport`.
118220
+ * Specifies how data related to the storage class analysis for an Amazon S3 bucket should be exported.
118221
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-dataexport.html}
117104
118222
  */
117105
- export type S3BucketQueueConfiguration = {
117106
- /**
117107
- * The Amazon S3 bucket event about which you want to publish messages to Amazon SQS.
117108
- */
117109
- Event: string;
118223
+ export type S3BucketDataExport = {
117110
118224
  /**
117111
- * The filtering rules that determine which objects trigger notifications.
118225
+ * Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).
117112
118226
  */
117113
- Filter?: S3BucketNotificationFilter;
118227
+ Destination: S3BucketDestination;
117114
118228
  /**
117115
- * The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type.
118229
+ * The version of the output schema to use when exporting data.
117116
118230
  */
117117
- Queue: string;
118231
+ OutputSchemaVersion: "V_1";
117118
118232
  };
117119
118233
  /**
117120
- * Type definition for `AWS::S3::Bucket.TopicConfiguration`.
117121
- * The topic to which notifications are sent and the events for which notifications are generated.
117122
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-topicconfig.html}
118234
+ * Type definition for `AWS::S3::Bucket.Tiering`.
118235
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-tiering.html}
117123
118236
  */
117124
- export type S3BucketTopicConfiguration = {
117125
- /**
117126
- * The Amazon S3 bucket event about which to send notifications.
117127
- */
117128
- Event: string;
117129
- /**
117130
- * The filtering rules that determine for which objects to send notifications.
117131
- */
117132
- Filter?: S3BucketNotificationFilter;
118237
+ export type S3BucketTiering = {
117133
118238
  /**
117134
- * The Amazon Resource Name (ARN) of the Amazon SNS topic to which Amazon S3 publishes a message when it detects events of the specified type.
118239
+ * S3 Intelligent-Tiering access tier. See Storage class for automatically optimizing frequently and infrequently accessed objects for a list of access tiers in the S3 Intelligent-Tiering storage class.
117135
118240
  */
117136
- Topic: string;
117137
- };
117138
- /**
117139
- * Type definition for `AWS::S3::Bucket.NotificationFilter`.
117140
- * Specifies object key name filtering rules.
117141
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter.html}
117142
- */
117143
- export type S3BucketNotificationFilter = {
118241
+ AccessTier: "ARCHIVE_ACCESS" | "DEEP_ARCHIVE_ACCESS";
117144
118242
  /**
117145
- * A container for object key name prefix and suffix filtering rules.
118243
+ * The number of consecutive days of no access after which an object will be eligible to be transitioned to the corresponding tier. The minimum number of days specified for Archive Access tier must be at least 90 days and Deep Archive Access tier must be at least 180 days. The maximum can be up to 2 years (730 days).
117146
118244
  */
117147
- S3Key: S3BucketS3KeyFilter;
118245
+ Days: number;
117148
118246
  };
117149
118247
  /**
117150
- * Type definition for `AWS::S3::Bucket.S3KeyFilter`.
117151
- * A container for object key name prefix and suffix filtering rules.
117152
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key.html}
118248
+ * Type definition for `AWS::S3::Bucket.ReplicationTime`.
118249
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtime.html}
117153
118250
  */
117154
- export type S3BucketS3KeyFilter = {
117155
- Rules: S3BucketFilterRule[];
118251
+ export type S3BucketReplicationTime = {
118252
+ Status: "Disabled" | "Enabled";
118253
+ Time: S3BucketReplicationTimeValue;
117156
118254
  };
117157
118255
  /**
117158
- * Type definition for `AWS::S3::Bucket.FilterRule`.
117159
- * Specifies the Amazon S3 object key name to filter on and whether to filter on the suffix or prefix of the key name.
117160
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfiguration-config-filter-s3key-rules.html}
118256
+ * Type definition for `AWS::S3::Bucket.ReplicationRuleFilter`.
118257
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html}
117161
118258
  */
117162
- export type S3BucketFilterRule = {
118259
+ export type S3BucketReplicationRuleFilter = {
118260
+ And?: S3BucketReplicationRuleAndOperator;
117163
118261
  /**
117164
- * @maxLength `1024`
118262
+ * Tags to use to identify a subset of objects for an Amazon S3 bucket.
117165
118263
  */
117166
- Name: string;
117167
- Value: string;
118264
+ TagFilter?: S3BucketTagFilter;
118265
+ Prefix?: string;
117168
118266
  };
117169
118267
  /**
117170
- * Type definition for `AWS::S3::Bucket.ObjectLockConfiguration`.
117171
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockconfiguration.html}
118268
+ * Type definition for `AWS::S3::Bucket.RedirectRule`.
118269
+ * Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.
118270
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html}
117172
118271
  */
117173
- export type S3BucketObjectLockConfiguration = {
117174
- ObjectLockEnabled?: "Enabled";
118272
+ export type S3BucketRedirectRule = {
117175
118273
  /**
117176
- * The Object Lock rule in place for the specified object.
118274
+ * The specific object key to use in the redirect request.d
117177
118275
  */
117178
- Rule?: S3BucketObjectLockRule;
117179
- };
117180
- /**
117181
- * Type definition for `AWS::S3::Bucket.ObjectLockRule`.
117182
- * The Object Lock rule in place for the specified object.
117183
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-objectlockrule.html}
117184
- */
117185
- export type S3BucketObjectLockRule = {
118276
+ ReplaceKeyWith?: string;
117186
118277
  /**
117187
- * The default retention period that you want to apply to new objects placed in the specified bucket.
118278
+ * The HTTP redirect code to use on the response. Not required if one of the siblings is present.
117188
118279
  */
117189
- DefaultRetention?: S3BucketDefaultRetention;
117190
- };
117191
- /**
117192
- * Type definition for `AWS::S3::Bucket.DefaultRetention`.
117193
- * The default retention period that you want to apply to new objects placed in the specified bucket.
117194
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-defaultretention.html}
117195
- */
117196
- export type S3BucketDefaultRetention = {
117197
- Years?: number;
117198
- Days?: number;
117199
- Mode?: "COMPLIANCE" | "GOVERNANCE";
118280
+ HttpRedirectCode?: string;
118281
+ /**
118282
+ * Protocol to use when redirecting requests. The default is the protocol that is used in the original request.
118283
+ */
118284
+ Protocol?: "http" | "https";
118285
+ /**
118286
+ * The host name to use in the redirect request.
118287
+ */
118288
+ HostName?: string;
118289
+ /**
118290
+ * The object key prefix to use in the redirect request.
118291
+ */
118292
+ ReplaceKeyPrefixWith?: string;
117200
118293
  };
117201
118294
  /**
117202
- * Type definition for `AWS::S3::Bucket.OwnershipControls`.
117203
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrols.html}
118295
+ * Type definition for `AWS::S3::Bucket.EncryptionConfiguration`.
118296
+ * Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.
118297
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html}
117204
118298
  */
117205
- export type S3BucketOwnershipControls = {
117206
- Rules: S3BucketOwnershipControlsRule[];
118299
+ export type S3BucketEncryptionConfiguration = {
118300
+ /**
118301
+ * Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket.
118302
+ */
118303
+ ReplicaKmsKeyID: string;
117207
118304
  };
117208
118305
  /**
117209
- * Type definition for `AWS::S3::Bucket.OwnershipControlsRule`.
117210
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ownershipcontrolsrule.html}
118306
+ * Type definition for `AWS::S3::Bucket.BucketEncryption`.
118307
+ * Specifies default encryption for a bucket using server-side encryption with either Amazon S3-managed keys (SSE-S3) or AWS KMS-managed keys (SSE-KMS).
118308
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-bucketencryption.html}
117211
118309
  */
117212
- export type S3BucketOwnershipControlsRule = {
118310
+ export type S3BucketBucketEncryption = {
117213
118311
  /**
117214
- * Specifies an object ownership rule.
118312
+ * Specifies the default server-side-encryption configuration.
117215
118313
  */
117216
- ObjectOwnership?: "ObjectWriter" | "BucketOwnerPreferred" | "BucketOwnerEnforced";
118314
+ ServerSideEncryptionConfiguration: S3BucketServerSideEncryptionRule[];
117217
118315
  };
117218
118316
  /**
117219
- * Type definition for `AWS::S3::Bucket.PublicAccessBlockConfiguration`.
117220
- * Configuration that defines how Amazon S3 handles public access.
117221
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-publicaccessblockconfiguration.html}
118317
+ * Type definition for `AWS::S3::Bucket.NotificationConfiguration`.
118318
+ * Describes the notification configuration for an Amazon S3 bucket.
118319
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig.html}
117222
118320
  */
117223
- export type S3BucketPublicAccessBlockConfiguration = {
117224
- /**
117225
- * Specifies whether Amazon S3 should block public access control lists (ACLs) for this bucket and objects in this bucket. Setting this element to TRUE causes the following behavior:
117226
- - PUT Bucket acl and PUT Object acl calls fail if the specified ACL is public.
117227
- - PUT Object calls fail if the request includes a public ACL.
117228
- Enabling this setting doesn't affect existing policies or ACLs.
117229
- */
117230
- BlockPublicAcls?: boolean;
117231
- /**
117232
- * Specifies whether Amazon S3 should block public bucket policies for this bucket. Setting this element to TRUE causes Amazon S3 to reject calls to PUT Bucket policy if the specified bucket policy allows public access.
117233
- Enabling this setting doesn't affect existing bucket policies.
117234
- */
117235
- BlockPublicPolicy?: boolean;
117236
- /**
117237
- * Specifies whether Amazon S3 should ignore public ACLs for this bucket and objects in this bucket. Setting this element to TRUE causes Amazon S3 to ignore all public ACLs on this bucket and objects in this bucket.
117238
- Enabling this setting doesn't affect the persistence of any existing ACLs and doesn't prevent new public ACLs from being set.
117239
- */
117240
- IgnorePublicAcls?: boolean;
118321
+ export type S3BucketNotificationConfiguration = {
118322
+ TopicConfigurations?: S3BucketTopicConfiguration[];
118323
+ QueueConfigurations?: S3BucketQueueConfiguration[];
118324
+ LambdaConfigurations?: S3BucketLambdaConfiguration[];
117241
118325
  /**
117242
- * Specifies whether Amazon S3 should restrict public bucket policies for this bucket. Setting this element to TRUE restricts access to this bucket to only AWS services and authorized users within this account if the bucket has a public policy.
117243
- Enabling this setting doesn't affect previously stored bucket policies, except that public and cross-account access within any public bucket policy, including non-public delegation to specific accounts, is blocked.
117244
- */
117245
- RestrictPublicBuckets?: boolean;
118326
+ * Describes the Amazon EventBridge notification configuration for an Amazon S3 bucket.
118327
+ */
118328
+ EventBridgeConfiguration?: S3BucketEventBridgeConfiguration;
117246
118329
  };
117247
118330
  /**
117248
- * Type definition for `AWS::S3::Bucket.ReplicationConfiguration`.
117249
- * A container for replication rules. You can add up to 1,000 rules. The maximum size of a replication configuration is 2 MB.
117250
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration.html}
118331
+ * Type definition for `AWS::S3::Bucket.LifecycleConfiguration`.
118332
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig.html}
117251
118333
  */
117252
- export type S3BucketReplicationConfiguration = {
117253
- /**
117254
- * The Amazon Resource Name (ARN) of the AWS Identity and Access Management (IAM) role that Amazon S3 assumes when replicating objects.
117255
- */
117256
- Role: string;
118334
+ export type S3BucketLifecycleConfiguration = {
117257
118335
  /**
117258
- * A container for one or more replication rules.
118336
+ * A lifecycle rule for individual objects in an Amazon S3 bucket.
117259
118337
  */
117260
- Rules: S3BucketReplicationRule[];
118338
+ Rules: S3BucketRule[];
117261
118339
  };
117262
118340
  /**
117263
- * Type definition for `AWS::S3::Bucket.ReplicationRule`.
117264
- * Specifies which Amazon S3 objects to replicate and where to store the replicas.
117265
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules.html}
118341
+ * Type definition for `AWS::S3::Bucket.InventoryConfiguration`.
118342
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-inventoryconfiguration.html}
117266
118343
  */
117267
- export type S3BucketReplicationRule = {
117268
- DeleteMarkerReplication?: S3BucketDeleteMarkerReplication;
117269
- /**
117270
- * Specifies which Amazon S3 bucket to store replicated objects in and their storage class.
117271
- */
117272
- Destination: S3BucketReplicationDestination;
117273
- Filter?: S3BucketReplicationRuleFilter;
117274
- /**
117275
- * A unique identifier for the rule.
117276
- * @maxLength `255`
117277
- */
117278
- Id?: string;
117279
- /**
117280
- * An object key name prefix that identifies the object or objects to which the rule applies.
117281
- * @maxLength `1024`
117282
- */
117283
- Prefix?: string;
117284
- Priority?: number;
118344
+ export type S3BucketInventoryConfiguration = {
117285
118345
  /**
117286
- * A container that describes additional filters for identifying the source objects that you want to replicate.
118346
+ * Specifies information about where to publish analysis or configuration results for an Amazon S3 bucket and S3 Replication Time Control (S3 RTC).
117287
118347
  */
117288
- SourceSelectionCriteria?: S3BucketSourceSelectionCriteria;
118348
+ Destination: S3BucketDestination;
117289
118349
  /**
117290
- * Specifies whether the rule is enabled.
118350
+ * Contains the optional fields that are included in the inventory results.
117291
118351
  */
117292
- Status: "Disabled" | "Enabled";
117293
- };
117294
- /**
117295
- * Type definition for `AWS::S3::Bucket.DeleteMarkerReplication`.
117296
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-deletemarkerreplication.html}
117297
- */
117298
- export type S3BucketDeleteMarkerReplication = {
117299
- Status?: "Disabled" | "Enabled";
117300
- };
117301
- /**
117302
- * Type definition for `AWS::S3::Bucket.ReplicationDestination`.
117303
- * Specifies which Amazon S3 bucket to store replicated objects in and their storage class.
117304
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationconfiguration-rules-destination.html}
117305
- */
117306
- export type S3BucketReplicationDestination = {
118352
+ OptionalFields?: ("Size" | "LastModifiedDate" | "StorageClass" | "ETag" | "IsMultipartUploaded" | "ReplicationStatus" | "EncryptionStatus" | "ObjectLockRetainUntilDate" | "ObjectLockMode" | "ObjectLockLegalHoldStatus" | "IntelligentTieringAccessTier" | "BucketKeyStatus")[];
117307
118353
  /**
117308
- * Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.
118354
+ * Object versions to include in the inventory list.
117309
118355
  */
117310
- AccessControlTranslation?: S3BucketAccessControlTranslation;
117311
- Account?: string;
117312
- Bucket: string;
118356
+ IncludedObjectVersions: "All" | "Current";
117313
118357
  /**
117314
- * Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.
118358
+ * Specifies whether the inventory is enabled or disabled.
117315
118359
  */
117316
- EncryptionConfiguration?: S3BucketEncryptionConfiguration;
117317
- Metrics?: S3BucketMetrics;
117318
- ReplicationTime?: S3BucketReplicationTime;
118360
+ Enabled: boolean;
117319
118361
  /**
117320
- * The storage class to use when replicating objects, such as S3 Standard or reduced redundancy.
118362
+ * The ID used to identify the inventory configuration.
117321
118363
  */
117322
- StorageClass?: "DEEP_ARCHIVE" | "GLACIER" | "GLACIER_IR" | "INTELLIGENT_TIERING" | "ONEZONE_IA" | "REDUCED_REDUNDANCY" | "STANDARD" | "STANDARD_IA";
117323
- };
117324
- /**
117325
- * Type definition for `AWS::S3::Bucket.AccessControlTranslation`.
117326
- * Specify this only in a cross-account scenario (where source and destination bucket owners are not the same), and you want to change replica ownership to the AWS account that owns the destination bucket. If this is not specified in the replication configuration, the replicas are owned by same AWS account that owns the source object.
117327
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-accesscontroltranslation.html}
117328
- */
117329
- export type S3BucketAccessControlTranslation = {
117330
- Owner: "Destination";
117331
- };
117332
- /**
117333
- * Type definition for `AWS::S3::Bucket.EncryptionConfiguration`.
117334
- * Specifies encryption-related information for an Amazon S3 bucket that is a destination for replicated objects.
117335
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-encryptionconfiguration.html}
117336
- */
117337
- export type S3BucketEncryptionConfiguration = {
118364
+ Id: string;
117338
118365
  /**
117339
- * Specifies the ID (Key ARN or Alias ARN) of the customer managed customer master key (CMK) stored in AWS Key Management Service (KMS) for the destination bucket.
118366
+ * The prefix that is prepended to all inventory results.
117340
118367
  */
117341
- ReplicaKmsKeyID: string;
117342
- };
117343
- /**
117344
- * Type definition for `AWS::S3::Bucket.Metrics`.
117345
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-metrics.html}
117346
- */
117347
- export type S3BucketMetrics = {
117348
- EventThreshold?: S3BucketReplicationTimeValue;
117349
- Status: "Disabled" | "Enabled";
117350
- };
117351
- /**
117352
- * Type definition for `AWS::S3::Bucket.ReplicationTimeValue`.
117353
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtimevalue.html}
117354
- */
117355
- export type S3BucketReplicationTimeValue = {
117356
- Minutes: number;
117357
- };
117358
- /**
117359
- * Type definition for `AWS::S3::Bucket.ReplicationTime`.
117360
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationtime.html}
117361
- */
117362
- export type S3BucketReplicationTime = {
117363
- Status: "Disabled" | "Enabled";
117364
- Time: S3BucketReplicationTimeValue;
117365
- };
117366
- /**
117367
- * Type definition for `AWS::S3::Bucket.ReplicationRuleFilter`.
117368
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationrulefilter.html}
117369
- */
117370
- export type S3BucketReplicationRuleFilter = {
117371
- And?: S3BucketReplicationRuleAndOperator;
117372
118368
  Prefix?: string;
117373
118369
  /**
117374
- * Tags to use to identify a subset of objects for an Amazon S3 bucket.
118370
+ * Specifies the schedule for generating inventory results.
117375
118371
  */
117376
- TagFilter?: S3BucketTagFilter;
118372
+ ScheduleFrequency: "Daily" | "Weekly";
117377
118373
  };
117378
118374
  /**
117379
118375
  * Type definition for `AWS::S3::Bucket.ReplicationRuleAndOperator`.
117380
118376
  * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-replicationruleandoperator.html}
117381
118377
  */
117382
118378
  export type S3BucketReplicationRuleAndOperator = {
117383
- Prefix?: string;
117384
118379
  TagFilters?: S3BucketTagFilter[];
118380
+ Prefix?: string;
117385
118381
  };
117386
118382
  /**
117387
- * Type definition for `AWS::S3::Bucket.SourceSelectionCriteria`.
117388
- * A container that describes additional filters for identifying the source objects that you want to replicate.
117389
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-sourceselectioncriteria.html}
118383
+ * Type definition for `AWS::S3::Bucket.VersioningConfiguration`.
118384
+ * Describes the versioning state of an Amazon S3 bucket.
118385
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html}
117390
118386
  */
117391
- export type S3BucketSourceSelectionCriteria = {
117392
- /**
117393
- * A filter that you can specify for selection for modifications on replicas.
117394
- */
117395
- ReplicaModifications?: S3BucketReplicaModifications;
118387
+ export type S3BucketVersioningConfiguration = {
117396
118388
  /**
117397
- * A container for filter information for the selection of Amazon S3 objects encrypted with AWS KMS.
118389
+ * The versioning state of the bucket.
117398
118390
  */
117399
- SseKmsEncryptedObjects?: S3BucketSseKmsEncryptedObjects;
118391
+ Status: "Enabled" | "Suspended";
118392
+ };
118393
+ /**
118394
+ * Type definition for `AWS::S3::Bucket.CorsConfiguration`.
118395
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-cors.html}
118396
+ */
118397
+ export type S3BucketCorsConfiguration = {
118398
+ CorsRules: S3BucketCorsRule[];
117400
118399
  };
117401
118400
  /**
117402
118401
  * Type definition for `AWS::S3::Bucket.ReplicaModifications`.
@@ -117409,133 +118408,88 @@ export type S3BucketReplicaModifications = {
117409
118408
  Status: "Enabled" | "Disabled";
117410
118409
  };
117411
118410
  /**
117412
- * Type definition for `AWS::S3::Bucket.SseKmsEncryptedObjects`.
117413
- * A container for filter information for the selection of S3 objects encrypted with AWS KMS.
117414
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html}
117415
- */
117416
- export type S3BucketSseKmsEncryptedObjects = {
117417
- /**
117418
- * Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.
117419
- */
117420
- Status: "Disabled" | "Enabled";
117421
- };
117422
- /**
117423
- * Type definition for `AWS::S3::Bucket.Tag`.
118411
+ * Type definition for `AWS::S3::Bucket.NoncurrentVersionExpiration`.
118412
+ * Container for the expiration rule that describes when noncurrent objects are expired. If your bucket is versioning-enabled (or versioning is suspended), you can set this action to request that Amazon S3 expire noncurrent object versions at a specific period in the object's lifetime
118413
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-noncurrentversionexpiration.html}
117424
118414
  */
117425
- export type S3BucketTag = {
117426
- /**
117427
- * @minLength `1`
117428
- * @maxLength `128`
117429
- */
117430
- Key: string;
118415
+ export type S3BucketNoncurrentVersionExpiration = {
117431
118416
  /**
117432
- * @minLength `1`
117433
- * @maxLength `256`
118417
+ * Specified the number of days an object is noncurrent before Amazon S3 can perform the associated action
117434
118418
  */
117435
- Value: string;
117436
- };
117437
- /**
117438
- * Type definition for `AWS::S3::Bucket.VersioningConfiguration`.
117439
- * Describes the versioning state of an Amazon S3 bucket.
117440
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-versioningconfig.html}
117441
- */
117442
- export type S3BucketVersioningConfiguration = {
118419
+ NoncurrentDays: number;
117443
118420
  /**
117444
- * The versioning state of the bucket.
118421
+ * Specified the number of newer noncurrent and current versions that must exists before performing the associated action
117445
118422
  */
117446
- Status: "Enabled" | "Suspended";
118423
+ NewerNoncurrentVersions?: number;
117447
118424
  };
117448
118425
  /**
117449
- * Type definition for `AWS::S3::Bucket.WebsiteConfiguration`.
117450
- * Specifies website configuration parameters for an Amazon S3 bucket.
117451
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration.html}
118426
+ * Type definition for `AWS::S3::Bucket.QueueConfiguration`.
118427
+ * The Amazon Simple Queue Service queues to publish messages to and the events for which to publish messages.
118428
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-notificationconfig-queueconfig.html}
117452
118429
  */
117453
- export type S3BucketWebsiteConfiguration = {
118430
+ export type S3BucketQueueConfiguration = {
117454
118431
  /**
117455
- * The name of the error document for the website.
118432
+ * The filtering rules that determine which objects trigger notifications.
117456
118433
  */
117457
- ErrorDocument?: string;
118434
+ Filter?: S3BucketNotificationFilter;
117458
118435
  /**
117459
- * The name of the index document for the website.
118436
+ * The Amazon S3 bucket event about which you want to publish messages to Amazon SQS.
117460
118437
  */
117461
- IndexDocument?: string;
117462
- RoutingRules?: S3BucketRoutingRule[];
118438
+ Event: string;
117463
118439
  /**
117464
- * Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.
118440
+ * The Amazon Resource Name (ARN) of the Amazon SQS queue to which Amazon S3 publishes a message when it detects events of the specified type.
117465
118441
  */
117466
- RedirectAllRequestsTo?: S3BucketRedirectAllRequestsTo;
118442
+ Queue: string;
117467
118443
  };
117468
118444
  /**
117469
- * Type definition for `AWS::S3::Bucket.RoutingRule`.
117470
- * Specifies the redirect behavior and when a redirect is applied.
117471
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules.html}
118445
+ * Type definition for `AWS::S3::Bucket.Transition`.
118446
+ * You must specify at least one of "TransitionDate" and "TransitionInDays"
118447
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-lifecycleconfig-rule-transition.html}
117472
118448
  */
117473
- export type S3BucketRoutingRule = {
117474
- /**
117475
- * Container for redirect information. You can redirect requests to another host, to another page, or with another protocol. In the event of an error, you can specify a different error code to return.
117476
- */
117477
- RedirectRule: S3BucketRedirectRule;
118449
+ export type S3BucketTransition = {
117478
118450
  /**
117479
- * A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals
118451
+ * The date value in ISO 8601 format. The timezone is always UTC. (YYYY-MM-DDThh:mm:ssZ)
118452
+ * @pattern `^([0-2]\d{3})-(0[0-9]|1[0-2])-([0-2]\d|3[01])T([01]\d|2[0-4]):([0-5]\d):([0-6]\d)((\.\d{3})?)Z$`
117480
118453
  */
117481
- RoutingRuleCondition?: S3BucketRoutingRuleCondition;
118454
+ TransitionDate?: string;
118455
+ StorageClass: "DEEP_ARCHIVE" | "GLACIER" | "Glacier" | "GLACIER_IR" | "INTELLIGENT_TIERING" | "ONEZONE_IA" | "STANDARD_IA";
118456
+ TransitionInDays?: number;
117482
118457
  };
117483
118458
  /**
117484
- * Type definition for `AWS::S3::Bucket.RedirectRule`.
117485
- * Specifies how requests are redirected. In the event of an error, you can specify a different error code to return.
117486
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-redirectrule.html}
118459
+ * Type definition for `AWS::S3::Bucket.SseKmsEncryptedObjects`.
118460
+ * A container for filter information for the selection of S3 objects encrypted with AWS KMS.
118461
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-ssekmsencryptedobjects.html}
117487
118462
  */
117488
- export type S3BucketRedirectRule = {
117489
- /**
117490
- * The host name to use in the redirect request.
117491
- */
117492
- HostName?: string;
117493
- /**
117494
- * The HTTP redirect code to use on the response. Not required if one of the siblings is present.
117495
- */
117496
- HttpRedirectCode?: string;
117497
- /**
117498
- * Protocol to use when redirecting requests. The default is the protocol that is used in the original request.
117499
- */
117500
- Protocol?: "http" | "https";
117501
- /**
117502
- * The object key prefix to use in the redirect request.
117503
- */
117504
- ReplaceKeyPrefixWith?: string;
118463
+ export type S3BucketSseKmsEncryptedObjects = {
117505
118464
  /**
117506
- * The specific object key to use in the redirect request.d
118465
+ * Specifies whether Amazon S3 replicates objects created with server-side encryption using a customer master key (CMK) stored in AWS Key Management Service.
117507
118466
  */
117508
- ReplaceKeyWith?: string;
118467
+ Status: "Disabled" | "Enabled";
117509
118468
  };
117510
118469
  /**
117511
- * Type definition for `AWS::S3::Bucket.RoutingRuleCondition`.
117512
- * A container for describing a condition that must be met for the specified redirect to apply.You must specify at least one of HttpErrorCodeReturnedEquals and KeyPrefixEquals
117513
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-routingrules-routingrulecondition.html}
118470
+ * Type definition for `AWS::S3::Bucket.Tag`.
117514
118471
  */
117515
- export type S3BucketRoutingRuleCondition = {
118472
+ export type S3BucketTag = {
117516
118473
  /**
117517
- * The object key name prefix when the redirect is applied.
118474
+ * @maxLength `256`
117518
118475
  */
117519
- KeyPrefixEquals?: string;
118476
+ Value: string;
117520
118477
  /**
117521
- * The HTTP error code when the redirect is applied.
118478
+ * @minLength `1`
118479
+ * @maxLength `128`
117522
118480
  */
117523
- HttpErrorCodeReturnedEquals?: string;
118481
+ Key: string;
117524
118482
  };
117525
118483
  /**
117526
- * Type definition for `AWS::S3::Bucket.RedirectAllRequestsTo`.
117527
- * Specifies the redirect behavior of all requests to a website endpoint of an Amazon S3 bucket.
117528
- * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-websiteconfiguration-redirectallrequeststo.html}
118484
+ * Type definition for `AWS::S3::Bucket.AbortIncompleteMultipartUpload`.
118485
+ * Specifies the days since the initiation of an incomplete multipart upload that Amazon S3 will wait before permanently removing all parts of the upload.
118486
+ * @see {@link http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-s3-bucket-abortincompletemultipartupload.html}
117529
118487
  */
117530
- export type S3BucketRedirectAllRequestsTo = {
117531
- /**
117532
- * Name of the host where requests are redirected.
117533
- */
117534
- HostName: string;
118488
+ export type S3BucketAbortIncompleteMultipartUpload = {
117535
118489
  /**
117536
- * Protocol to use when redirecting requests. The default is the protocol that is used in the original request.
118490
+ * Specifies the number of days after which Amazon S3 aborts an incomplete multipart upload.
117537
118491
  */
117538
- Protocol?: "http" | "https";
118492
+ DaysAfterInitiation: number;
117539
118493
  };
117540
118494
  /**
117541
118495
  * Type definition for `AWS::S3::BucketPolicy`.
@@ -118007,6 +118961,169 @@ export type S3StorageLensStorageLensConfiguration = {
118007
118961
  */
118008
118962
  StorageLensArn?: string;
118009
118963
  };
118964
+ /**
118965
+ * Type definition for `AWS::S3::StorageLensGroup`.
118966
+ * The AWS::S3::StorageLensGroup resource is an Amazon S3 resource type that you can use to create Storage Lens Group.
118967
+ */
118968
+ export type S3StorageLensGroupProps = {
118969
+ /**
118970
+ * The name that identifies the Amazon S3 Storage Lens Group.
118971
+ * @minLength `1`
118972
+ * @maxLength `64`
118973
+ * @pattern `^[a-zA-Z0-9\-_]+$`
118974
+ */
118975
+ Name: string;
118976
+ /**
118977
+ * Sets the Storage Lens Group filter.
118978
+ */
118979
+ Filter: S3StorageLensGroupFilter;
118980
+ /**
118981
+ * A set of tags (key-value pairs) for this Amazon S3 Storage Lens Group.
118982
+ */
118983
+ Tags?: S3StorageLensGroupTag[];
118984
+ };
118985
+ /**
118986
+ * Type definition for `AWS::S3::StorageLensGroup`.
118987
+ * The AWS::S3::StorageLensGroup resource is an Amazon S3 resource type that you can use to create Storage Lens Group.
118988
+ */
118989
+ export type S3StorageLensGroupAttributes = {
118990
+ /**
118991
+ * The ARN for the Amazon S3 Storage Lens Group.
118992
+ */
118993
+ StorageLensGroupArn: string;
118994
+ };
118995
+ /**
118996
+ * Type definition for `AWS::S3::StorageLensGroup.MatchObjectAge`.
118997
+ * Filter to match all of the specified values for the minimum and maximum object age.
118998
+ */
118999
+ export type S3StorageLensGroupMatchObjectAge = {
119000
+ /**
119001
+ * Minimum object age to which the rule applies.
119002
+ * @min `1`
119003
+ */
119004
+ DaysGreaterThan?: number;
119005
+ /**
119006
+ * Maximum object age to which the rule applies.
119007
+ * @min `1`
119008
+ */
119009
+ DaysLessThan?: number;
119010
+ };
119011
+ /**
119012
+ * Type definition for `AWS::S3::StorageLensGroup.MatchObjectSize`.
119013
+ * Filter to match all of the specified values for the minimum and maximum object size.
119014
+ */
119015
+ export type S3StorageLensGroupMatchObjectSize = {
119016
+ /**
119017
+ * Minimum object size to which the rule applies.
119018
+ * @min `1`
119019
+ */
119020
+ BytesGreaterThan?: number;
119021
+ /**
119022
+ * Maximum object size to which the rule applies.
119023
+ * @min `1`
119024
+ */
119025
+ BytesLessThan?: number;
119026
+ };
119027
+ /**
119028
+ * Type definition for `AWS::S3::StorageLensGroup.And`.
119029
+ * The Storage Lens group will include objects that match all of the specified filter values.
119030
+ */
119031
+ export type S3StorageLensGroupAnd = {
119032
+ /**
119033
+ * Filter to match any of the specified prefixes.
119034
+ */
119035
+ MatchAnyPrefix?: string[];
119036
+ /**
119037
+ * Filter to match any of the specified suffixes.
119038
+ */
119039
+ MatchAnySuffix?: string[];
119040
+ /**
119041
+ * Filter to match any of the specified object tags.
119042
+ */
119043
+ MatchAnyTag?: S3StorageLensGroupTag[];
119044
+ /**
119045
+ * Filter to match all of the specified values for the minimum and maximum object size.
119046
+ */
119047
+ MatchObjectSize?: S3StorageLensGroupMatchObjectSize;
119048
+ /**
119049
+ * Filter to match all of the specified values for the minimum and maximum object age.
119050
+ */
119051
+ MatchObjectAge?: S3StorageLensGroupMatchObjectAge;
119052
+ };
119053
+ /**
119054
+ * Type definition for `AWS::S3::StorageLensGroup.Or`.
119055
+ * The Storage Lens group will include objects that match any of the specified filter values.
119056
+ */
119057
+ export type S3StorageLensGroupOr = {
119058
+ /**
119059
+ * Filter to match any of the specified prefixes.
119060
+ */
119061
+ MatchAnyPrefix?: string[];
119062
+ /**
119063
+ * Filter to match any of the specified suffixes.
119064
+ */
119065
+ MatchAnySuffix?: string[];
119066
+ /**
119067
+ * Filter to match any of the specified object tags.
119068
+ */
119069
+ MatchAnyTag?: S3StorageLensGroupTag[];
119070
+ /**
119071
+ * Filter to match all of the specified values for the minimum and maximum object size.
119072
+ */
119073
+ MatchObjectSize?: S3StorageLensGroupMatchObjectSize;
119074
+ /**
119075
+ * Filter to match all of the specified values for the minimum and maximum object age.
119076
+ */
119077
+ MatchObjectAge?: S3StorageLensGroupMatchObjectAge;
119078
+ };
119079
+ /**
119080
+ * Type definition for `AWS::S3::StorageLensGroup.Filter`.
119081
+ * Sets the Storage Lens Group filter.
119082
+ */
119083
+ export type S3StorageLensGroupFilter = {
119084
+ /**
119085
+ * Filter to match any of the specified prefixes.
119086
+ */
119087
+ MatchAnyPrefix?: string[];
119088
+ /**
119089
+ * Filter to match any of the specified suffixes.
119090
+ */
119091
+ MatchAnySuffix?: string[];
119092
+ /**
119093
+ * Filter to match any of the specified object tags.
119094
+ */
119095
+ MatchAnyTag?: S3StorageLensGroupTag[];
119096
+ /**
119097
+ * Filter to match all of the specified values for the minimum and maximum object size.
119098
+ */
119099
+ MatchObjectSize?: S3StorageLensGroupMatchObjectSize;
119100
+ /**
119101
+ * Filter to match all of the specified values for the minimum and maximum object age.
119102
+ */
119103
+ MatchObjectAge?: S3StorageLensGroupMatchObjectAge;
119104
+ /**
119105
+ * The Storage Lens group will include objects that match all of the specified filter values.
119106
+ */
119107
+ And?: S3StorageLensGroupAnd;
119108
+ /**
119109
+ * The Storage Lens group will include objects that match any of the specified filter values.
119110
+ */
119111
+ Or?: S3StorageLensGroupOr;
119112
+ };
119113
+ /**
119114
+ * Type definition for `AWS::S3::StorageLensGroup.Tag`.
119115
+ */
119116
+ export type S3StorageLensGroupTag = {
119117
+ /**
119118
+ * @minLength `1`
119119
+ * @maxLength `128`
119120
+ */
119121
+ Key: string;
119122
+ /**
119123
+ * @maxLength `256`
119124
+ */
119125
+ Value: string;
119126
+ };
118010
119127
  /**
118011
119128
  * Type definition for `AWS::S3ObjectLambda::AccessPoint`.
118012
119129
  * The AWS::S3ObjectLambda::AccessPoint resource is an Amazon S3ObjectLambda resource type that you can use to add computation to S3 actions
@@ -138142,6 +139259,7 @@ export interface ResourceTypes {
138142
139259
  "AWS::ImageBuilder::ImagePipeline": ImageBuilderImagePipelineProps;
138143
139260
  "AWS::ImageBuilder::ImageRecipe": ImageBuilderImageRecipeProps;
138144
139261
  "AWS::ImageBuilder::InfrastructureConfiguration": ImageBuilderInfrastructureConfigurationProps;
139262
+ "AWS::ImageBuilder::LifecyclePolicy": ImageBuilderLifecyclePolicyProps;
138145
139263
  "AWS::Inspector::AssessmentTarget": InspectorAssessmentTargetProps;
138146
139264
  "AWS::Inspector::AssessmentTemplate": InspectorAssessmentTemplateProps;
138147
139265
  "AWS::Inspector::ResourceGroup": InspectorResourceGroupProps;
@@ -138382,6 +139500,7 @@ export interface ResourceTypes {
138382
139500
  "AWS::Omics::Workflow": OmicsWorkflowProps;
138383
139501
  "AWS::OpenSearchServerless::AccessPolicy": OpenSearchServerlessAccessPolicyProps;
138384
139502
  "AWS::OpenSearchServerless::Collection": OpenSearchServerlessCollectionProps;
139503
+ "AWS::OpenSearchServerless::LifecyclePolicy": OpenSearchServerlessLifecyclePolicyProps;
138385
139504
  "AWS::OpenSearchServerless::SecurityConfig": OpenSearchServerlessSecurityConfigProps;
138386
139505
  "AWS::OpenSearchServerless::SecurityPolicy": OpenSearchServerlessSecurityPolicyProps;
138387
139506
  "AWS::OpenSearchServerless::VpcEndpoint": OpenSearchServerlessVpcEndpointProps;
@@ -138531,6 +139650,7 @@ export interface ResourceTypes {
138531
139650
  "AWS::S3::MultiRegionAccessPoint": S3MultiRegionAccessPointProps;
138532
139651
  "AWS::S3::MultiRegionAccessPointPolicy": S3MultiRegionAccessPointPolicyProps;
138533
139652
  "AWS::S3::StorageLens": S3StorageLensProps;
139653
+ "AWS::S3::StorageLensGroup": S3StorageLensGroupProps;
138534
139654
  "AWS::S3ObjectLambda::AccessPoint": S3ObjectLambdaAccessPointProps;
138535
139655
  "AWS::S3ObjectLambda::AccessPointPolicy": S3ObjectLambdaAccessPointPolicyProps;
138536
139656
  "AWS::S3Outposts::AccessPoint": S3OutpostsAccessPointProps;
@@ -139236,6 +140356,7 @@ export interface AttributeTypes {
139236
140356
  "AWS::ImageBuilder::ImagePipeline": ImageBuilderImagePipelineAttributes;
139237
140357
  "AWS::ImageBuilder::ImageRecipe": ImageBuilderImageRecipeAttributes;
139238
140358
  "AWS::ImageBuilder::InfrastructureConfiguration": ImageBuilderInfrastructureConfigurationAttributes;
140359
+ "AWS::ImageBuilder::LifecyclePolicy": ImageBuilderLifecyclePolicyAttributes;
139239
140360
  "AWS::Inspector::AssessmentTarget": InspectorAssessmentTargetAttributes;
139240
140361
  "AWS::Inspector::AssessmentTemplate": InspectorAssessmentTemplateAttributes;
139241
140362
  "AWS::Inspector::ResourceGroup": InspectorResourceGroupAttributes;
@@ -139586,6 +140707,7 @@ export interface AttributeTypes {
139586
140707
  "AWS::S3::MultiRegionAccessPoint": S3MultiRegionAccessPointAttributes;
139587
140708
  "AWS::S3::MultiRegionAccessPointPolicy": S3MultiRegionAccessPointPolicyAttributes;
139588
140709
  "AWS::S3::StorageLens": S3StorageLensAttributes;
140710
+ "AWS::S3::StorageLensGroup": S3StorageLensGroupAttributes;
139589
140711
  "AWS::S3ObjectLambda::AccessPoint": S3ObjectLambdaAccessPointAttributes;
139590
140712
  "AWS::S3Outposts::AccessPoint": S3OutpostsAccessPointAttributes;
139591
140713
  "AWS::S3Outposts::Bucket": S3OutpostsBucketAttributes;
@@ -140327,6 +141449,7 @@ export declare const ResourceType: {
140327
141449
  readonly ImageBuilderImagePipelineProps: "AWS::ImageBuilder::ImagePipeline";
140328
141450
  readonly ImageBuilderImageRecipeProps: "AWS::ImageBuilder::ImageRecipe";
140329
141451
  readonly ImageBuilderInfrastructureConfigurationProps: "AWS::ImageBuilder::InfrastructureConfiguration";
141452
+ readonly ImageBuilderLifecyclePolicyProps: "AWS::ImageBuilder::LifecyclePolicy";
140330
141453
  readonly InspectorAssessmentTargetProps: "AWS::Inspector::AssessmentTarget";
140331
141454
  readonly InspectorAssessmentTemplateProps: "AWS::Inspector::AssessmentTemplate";
140332
141455
  readonly InspectorResourceGroupProps: "AWS::Inspector::ResourceGroup";
@@ -140567,6 +141690,7 @@ export declare const ResourceType: {
140567
141690
  readonly OmicsWorkflowProps: "AWS::Omics::Workflow";
140568
141691
  readonly OpenSearchServerlessAccessPolicyProps: "AWS::OpenSearchServerless::AccessPolicy";
140569
141692
  readonly OpenSearchServerlessCollectionProps: "AWS::OpenSearchServerless::Collection";
141693
+ readonly OpenSearchServerlessLifecyclePolicyProps: "AWS::OpenSearchServerless::LifecyclePolicy";
140570
141694
  readonly OpenSearchServerlessSecurityConfigProps: "AWS::OpenSearchServerless::SecurityConfig";
140571
141695
  readonly OpenSearchServerlessSecurityPolicyProps: "AWS::OpenSearchServerless::SecurityPolicy";
140572
141696
  readonly OpenSearchServerlessVpcEndpointProps: "AWS::OpenSearchServerless::VpcEndpoint";
@@ -140716,6 +141840,7 @@ export declare const ResourceType: {
140716
141840
  readonly S3MultiRegionAccessPointProps: "AWS::S3::MultiRegionAccessPoint";
140717
141841
  readonly S3MultiRegionAccessPointPolicyProps: "AWS::S3::MultiRegionAccessPointPolicy";
140718
141842
  readonly S3StorageLensProps: "AWS::S3::StorageLens";
141843
+ readonly S3StorageLensGroupProps: "AWS::S3::StorageLensGroup";
140719
141844
  readonly S3ObjectLambdaAccessPointProps: "AWS::S3ObjectLambda::AccessPoint";
140720
141845
  readonly S3ObjectLambdaAccessPointPolicyProps: "AWS::S3ObjectLambda::AccessPointPolicy";
140721
141846
  readonly S3OutpostsAccessPointProps: "AWS::S3Outposts::AccessPoint";