@aws-sdk/client-auto-scaling 3.42.0 → 3.47.0

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.
@@ -68,12 +68,6 @@ export interface ActiveInstanceRefreshNotFoundFault extends __SmithyException, $
68
68
  $fault: "client";
69
69
  message?: string;
70
70
  }
71
- export declare namespace ActiveInstanceRefreshNotFoundFault {
72
- /**
73
- * @internal
74
- */
75
- const filterSensitiveLog: (obj: ActiveInstanceRefreshNotFoundFault) => any;
76
- }
77
71
  export declare enum ScalingActivityStatusCode {
78
72
  Cancelled = "Cancelled",
79
73
  Failed = "Failed",
@@ -227,12 +221,6 @@ export interface AlreadyExistsFault extends __SmithyException, $MetadataBearer {
227
221
  */
228
222
  message?: string;
229
223
  }
230
- export declare namespace AlreadyExistsFault {
231
- /**
232
- * @internal
233
- */
234
- const filterSensitiveLog: (obj: AlreadyExistsFault) => any;
235
- }
236
224
  export interface AttachInstancesQuery {
237
225
  /**
238
226
  * <p>The IDs of the instances. You can specify up to 20 instances.</p>
@@ -261,12 +249,6 @@ export interface ResourceContentionFault extends __SmithyException, $MetadataBea
261
249
  */
262
250
  message?: string;
263
251
  }
264
- export declare namespace ResourceContentionFault {
265
- /**
266
- * @internal
267
- */
268
- const filterSensitiveLog: (obj: ResourceContentionFault) => any;
269
- }
270
252
  /**
271
253
  * <p>The service-linked role is not yet ready for use.</p>
272
254
  */
@@ -275,12 +257,6 @@ export interface ServiceLinkedRoleFailure extends __SmithyException, $MetadataBe
275
257
  $fault: "server";
276
258
  message?: string;
277
259
  }
278
- export declare namespace ServiceLinkedRoleFailure {
279
- /**
280
- * @internal
281
- */
282
- const filterSensitiveLog: (obj: ServiceLinkedRoleFailure) => any;
283
- }
284
260
  export interface AttachLoadBalancersResultType {
285
261
  }
286
262
  export declare namespace AttachLoadBalancersResultType {
@@ -487,12 +463,6 @@ export interface LimitExceededFault extends __SmithyException, $MetadataBearer {
487
463
  */
488
464
  message?: string;
489
465
  }
490
- export declare namespace LimitExceededFault {
491
- /**
492
- * @internal
493
- */
494
- const filterSensitiveLog: (obj: LimitExceededFault) => any;
495
- }
496
466
  export interface CancelInstanceRefreshAnswer {
497
467
  /**
498
468
  * <p>The instance refresh ID.</p>
@@ -595,37 +565,9 @@ export declare namespace LaunchTemplateSpecification {
595
565
  /**
596
566
  * <p>Describes information used to specify a lifecycle hook for an Auto Scaling
597
567
  * group.</p>
598
- * <p>A lifecycle hook tells Amazon EC2 Auto Scaling to perform an action on an instance when the instance
599
- * launches (before it is put into service) or as the instance terminates (before it is
600
- * fully terminated).</p>
601
- * <p>This step is a part of the procedure for creating a lifecycle hook for an Auto Scaling
602
- * group:</p>
603
- * <ol>
604
- * <li>
605
- * <p>(Optional) Create a Lambda function and a rule that allows CloudWatch Events to
606
- * invoke your Lambda function when Amazon EC2 Auto Scaling launches or terminates
607
- * instances.</p>
608
- * </li>
609
- * <li>
610
- * <p>(Optional) Create a notification target and an IAM role. The target can be
611
- * either an Amazon SQS queue or an Amazon SNS topic. The role allows Amazon EC2 Auto Scaling to
612
- * publish lifecycle notifications to the target.</p>
613
- * </li>
614
- * <li>
615
- * <p>
616
- * <b>Create the lifecycle hook. Specify whether the hook is
617
- * used when the instances launch or terminate.</b>
618
- * </p>
619
- * </li>
620
- * <li>
621
- * <p>If you need more time, record the lifecycle action heartbeat to keep the
622
- * instance in a pending state.</p>
623
- * </li>
624
- * <li>
625
- * <p>If you finish before the timeout period ends, complete the lifecycle
626
- * action.</p>
627
- * </li>
628
- * </ol>
568
+ *
569
+ *
570
+ *
629
571
  * <p>For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html">Amazon EC2 Auto Scaling lifecycle
630
572
  * hooks</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
631
573
  */
@@ -1157,7 +1099,7 @@ export declare namespace InstanceRequirements {
1157
1099
  const filterSensitiveLog: (obj: InstanceRequirements) => any;
1158
1100
  }
1159
1101
  /**
1160
- * <p>Describes an override for a launch template. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-override-options.html">Configuring overrides</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>. </p>
1102
+ * <p>Describes an override for a launch template. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-configuring-overrides.html">Configuring overrides</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>. </p>
1161
1103
  */
1162
1104
  export interface LaunchTemplateOverrides {
1163
1105
  /**
@@ -1176,7 +1118,7 @@ export interface LaunchTemplateOverrides {
1176
1118
  * overage. For example, if there are two units remaining to fulfill capacity, and Amazon EC2 Auto Scaling
1177
1119
  * can only launch an instance with a <code>WeightedCapacity</code> of five units, the
1178
1120
  * instance is launched, and the desired capacity is exceeded by three units. For more
1179
- * information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-instance-weighting.html">Instance weighting for
1121
+ * information, see <a href="https://docs.aws.amazon.com/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html">Instance weighting for
1180
1122
  * Amazon EC2 Auto Scaling</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>. Value must be in the
1181
1123
  * range of 1–999.</p>
1182
1124
  */
@@ -1185,7 +1127,7 @@ export interface LaunchTemplateOverrides {
1185
1127
  * <p>Provides the launch template to be used when launching the instance type specified in
1186
1128
  * <code>InstanceType</code>. For example, some instance types might require a launch
1187
1129
  * template with a different AMI. If not provided, Amazon EC2 Auto Scaling uses the launch template that's
1188
- * defined for your mixed instances policy. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-launch-template-overrides.html">Specifying a
1130
+ * defined for your mixed instances policy. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups-launch-template-overrides.html">Specifying a
1189
1131
  * different launch template for an instance type</a> in the
1190
1132
  * <i>Amazon EC2 Auto Scaling User Guide</i>. </p>
1191
1133
  */
@@ -1231,7 +1173,7 @@ export declare namespace LaunchTemplate {
1231
1173
  /**
1232
1174
  * <p>Describes a mixed instances policy. A mixed instances policy contains the instance
1233
1175
  * types that Amazon EC2 Auto Scaling can launch and other information that Amazon EC2 Auto Scaling can use to launch
1234
- * instances and help optimize your costs. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html">Auto Scaling
1176
+ * instances and help optimize your costs. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html">Auto Scaling
1235
1177
  * groups with multiple instance types and purchase options</a> in the
1236
1178
  * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1237
1179
  */
@@ -1316,7 +1258,7 @@ export interface CreateAutoScalingGroupType {
1316
1258
  *
1317
1259
  *
1318
1260
  *
1319
- * <p>For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html">Auto Scaling groups with multiple
1261
+ * <p>For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html">Auto Scaling groups with multiple
1320
1262
  * instance types and purchase options</a> in the <i>Amazon EC2 Auto Scaling User
1321
1263
  * Guide</i>.</p>
1322
1264
  */
@@ -1390,9 +1332,8 @@ export interface CreateAutoScalingGroupType {
1390
1332
  HealthCheckType?: string;
1391
1333
  /**
1392
1334
  * <p>The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status
1393
- * of an EC2 instance that has come into service. During this time, any health check
1394
- * failures for the instance are ignored. The default value is <code>0</code>. For more
1395
- * information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html#health-check-grace-period">Health
1335
+ * of an EC2 instance that has come into service and marking it unhealthy due to a failed
1336
+ * health check. The default value is <code>0</code>. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html#health-check-grace-period">Health
1396
1337
  * check grace period</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1397
1338
  * <p>Conditional: Required if you are adding an <code>ELB</code> health check.</p>
1398
1339
  */
@@ -1425,7 +1366,8 @@ export interface CreateAutoScalingGroupType {
1425
1366
  /**
1426
1367
  * <p>Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling
1427
1368
  * when scaling in. For more information about preventing instances from terminating on
1428
- * scale in, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection">Instance scale-in protection</a> in the
1369
+ * scale in, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html">Using
1370
+ * instance scale-in protection</a> in the
1429
1371
  * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1430
1372
  */
1431
1373
  NewInstancesProtectedFromScaleIn?: boolean;
@@ -1434,8 +1376,8 @@ export interface CreateAutoScalingGroupType {
1434
1376
  * disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot
1435
1377
  * Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of
1436
1378
  * interruption. After launching a new instance, it then terminates an old instance. For
1437
- * more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html">Amazon EC2 Auto Scaling Capacity
1438
- * Rebalancing</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1379
+ * more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html">Amazon EC2 Auto Scaling
1380
+ * Capacity Rebalancing</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1439
1381
  */
1440
1382
  CapacityRebalance?: boolean;
1441
1383
  /**
@@ -1898,12 +1840,6 @@ export interface ResourceInUseFault extends __SmithyException, $MetadataBearer {
1898
1840
  */
1899
1841
  message?: string;
1900
1842
  }
1901
- export declare namespace ResourceInUseFault {
1902
- /**
1903
- * @internal
1904
- */
1905
- const filterSensitiveLog: (obj: ResourceInUseFault) => any;
1906
- }
1907
1843
  export interface DeleteAutoScalingGroupType {
1908
1844
  /**
1909
1845
  * <p>The name of the Auto Scaling group.</p>
@@ -1934,12 +1870,6 @@ export interface ScalingActivityInProgressFault extends __SmithyException, $Meta
1934
1870
  */
1935
1871
  message?: string;
1936
1872
  }
1937
- export declare namespace ScalingActivityInProgressFault {
1938
- /**
1939
- * @internal
1940
- */
1941
- const filterSensitiveLog: (obj: ScalingActivityInProgressFault) => any;
1942
- }
1943
1873
  export interface LaunchConfigurationNameType {
1944
1874
  /**
1945
1875
  * <p>The name of the launch configuration.</p>
@@ -1982,8 +1912,7 @@ export interface DeleteNotificationConfigurationType {
1982
1912
  */
1983
1913
  AutoScalingGroupName: string | undefined;
1984
1914
  /**
1985
- * <p>The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (Amazon SNS)
1986
- * topic.</p>
1915
+ * <p>The Amazon Resource Name (ARN) of the Amazon SNS topic.</p>
1987
1916
  */
1988
1917
  TopicARN: string | undefined;
1989
1918
  }
@@ -2566,7 +2495,8 @@ export interface AutoScalingGroup {
2566
2495
  HealthCheckType: string | undefined;
2567
2496
  /**
2568
2497
  * <p>The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status
2569
- * of an EC2 instance that has come into service.</p>
2498
+ * of an EC2 instance that has come into service and marking it unhealthy due to a failed
2499
+ * health check.</p>
2570
2500
  */
2571
2501
  HealthCheckGracePeriod?: number;
2572
2502
  /**
@@ -2686,12 +2616,6 @@ export interface InvalidNextToken extends __SmithyException, $MetadataBearer {
2686
2616
  */
2687
2617
  message?: string;
2688
2618
  }
2689
- export declare namespace InvalidNextToken {
2690
- /**
2691
- * @internal
2692
- */
2693
- const filterSensitiveLog: (obj: InvalidNextToken) => any;
2694
- }
2695
2619
  /**
2696
2620
  * <p>Describes an EC2 instance associated with an Auto Scaling group.</p>
2697
2621
  */
@@ -2832,7 +2756,7 @@ export interface DesiredConfiguration {
2832
2756
  /**
2833
2757
  * <p>Describes a mixed instances policy. A mixed instances policy contains the instance
2834
2758
  * types that Amazon EC2 Auto Scaling can launch and other information that Amazon EC2 Auto Scaling can use to launch
2835
- * instances and help optimize your costs. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html">Auto Scaling
2759
+ * instances and help optimize your costs. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html">Auto Scaling
2836
2760
  * groups with multiple instance types and purchase options</a> in the
2837
2761
  * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
2838
2762
  */
@@ -3287,9 +3211,9 @@ export declare namespace LaunchConfigurationsType {
3287
3211
  const filterSensitiveLog: (obj: LaunchConfigurationsType) => any;
3288
3212
  }
3289
3213
  /**
3290
- * <p>Describes a lifecycle hook, which tells Amazon EC2 Auto Scaling that you want to perform an action
3291
- * whenever it launches instances or terminates
3292
- * instances.</p>
3214
+ * <p>Describes a lifecycle hook, which enables an Auto Scaling group to be aware of events in the
3215
+ * Auto Scaling instance lifecycle, and then perform a custom action when the corresponding
3216
+ * lifecycle event occurs.</p>
3293
3217
  */
3294
3218
  export interface LifecycleHook {
3295
3219
  /**
@@ -3729,8 +3653,7 @@ export interface NotificationConfiguration {
3729
3653
  */
3730
3654
  AutoScalingGroupName?: string;
3731
3655
  /**
3732
- * <p>The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (Amazon SNS)
3733
- * topic.</p>
3656
+ * <p>The Amazon Resource Name (ARN) of the Amazon SNS topic.</p>
3734
3657
  */
3735
3658
  TopicARN?: string;
3736
3659
  /**
@@ -3851,6 +3774,197 @@ export declare enum PredictiveScalingMaxCapacityBreachBehavior {
3851
3774
  HonorMaxCapacity = "HonorMaxCapacity",
3852
3775
  IncreaseMaxCapacity = "IncreaseMaxCapacity"
3853
3776
  }
3777
+ /**
3778
+ * <p>Describes the dimension of a metric.</p>
3779
+ */
3780
+ export interface MetricDimension {
3781
+ /**
3782
+ * <p>The name of the dimension.</p>
3783
+ */
3784
+ Name: string | undefined;
3785
+ /**
3786
+ * <p>The value of the dimension.</p>
3787
+ */
3788
+ Value: string | undefined;
3789
+ }
3790
+ export declare namespace MetricDimension {
3791
+ /**
3792
+ * @internal
3793
+ */
3794
+ const filterSensitiveLog: (obj: MetricDimension) => any;
3795
+ }
3796
+ /**
3797
+ * <p>Represents a specific metric. </p>
3798
+ */
3799
+ export interface Metric {
3800
+ /**
3801
+ * <p>The namespace of the metric. For more information, see the table in <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html">Amazon Web Services
3802
+ * services that publish CloudWatch metrics </a> in the <i>Amazon CloudWatch User
3803
+ * Guide</i>.</p>
3804
+ */
3805
+ Namespace: string | undefined;
3806
+ /**
3807
+ * <p>The name of the metric.</p>
3808
+ */
3809
+ MetricName: string | undefined;
3810
+ /**
3811
+ * <p>The dimensions for the metric. For the list of available dimensions, see the Amazon Web Services
3812
+ * documentation available from the table in <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html">Amazon Web Services
3813
+ * services that publish CloudWatch metrics </a> in the <i>Amazon CloudWatch User
3814
+ * Guide</i>. </p>
3815
+ * <p>Conditional: If you published your metric with dimensions, you must specify the same
3816
+ * dimensions in your scaling policy.</p>
3817
+ */
3818
+ Dimensions?: MetricDimension[];
3819
+ }
3820
+ export declare namespace Metric {
3821
+ /**
3822
+ * @internal
3823
+ */
3824
+ const filterSensitiveLog: (obj: Metric) => any;
3825
+ }
3826
+ /**
3827
+ * <p>This structure defines the CloudWatch metric to return, along with the statistic, period,
3828
+ * and unit.</p>
3829
+ *
3830
+ * <p>For more information about the CloudWatch terminology below, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html">Amazon CloudWatch
3831
+ * concepts</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
3832
+ */
3833
+ export interface MetricStat {
3834
+ /**
3835
+ * <p>The CloudWatch metric to return, including the metric name, namespace, and dimensions. To
3836
+ * get the exact metric name, namespace, and dimensions, inspect the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html">Metric</a> object that is returned by a call to <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html">ListMetrics</a>.</p>
3837
+ */
3838
+ Metric: Metric | undefined;
3839
+ /**
3840
+ * <p>The statistic to return. It can include any CloudWatch statistic or extended statistic. For
3841
+ * a list of valid values, see the table in <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Statistic">Statistics</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
3842
+ * <p>The most commonly used metrics for predictive scaling are <code>Average</code> and
3843
+ * <code>Sum</code>.</p>
3844
+ */
3845
+ Stat: string | undefined;
3846
+ /**
3847
+ * <p>The unit to use for the returned data points. For a complete list of the units that
3848
+ * CloudWatch supports, see the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html">MetricDatum</a>
3849
+ * data type in the <i>Amazon CloudWatch API Reference</i>.</p>
3850
+ */
3851
+ Unit?: string;
3852
+ }
3853
+ export declare namespace MetricStat {
3854
+ /**
3855
+ * @internal
3856
+ */
3857
+ const filterSensitiveLog: (obj: MetricStat) => any;
3858
+ }
3859
+ /**
3860
+ * <p>The metric data to return. Also defines whether this call is returning data for one
3861
+ * metric only, or whether it is performing a math expression on the values of returned
3862
+ * metric statistics to create a new time series. A time series is a series of data points,
3863
+ * each of which is associated with a timestamp.</p>
3864
+ *
3865
+ *
3866
+ * <p>For more information and examples, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/predictive-scaling-customized-metric-specification.html">Advanced predictive scaling policy configurations using custom metrics</a> in
3867
+ * the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
3868
+ */
3869
+ export interface MetricDataQuery {
3870
+ /**
3871
+ * <p>A short name that identifies the object's results in the response. This name must be
3872
+ * unique among all <code>MetricDataQuery</code> objects specified for a single scaling
3873
+ * policy. If you are performing math expressions on this set of data, this name represents
3874
+ * that data and can serve as a variable in the mathematical expression. The valid
3875
+ * characters are letters, numbers, and underscores. The first character must be a
3876
+ * lowercase letter. </p>
3877
+ */
3878
+ Id: string | undefined;
3879
+ /**
3880
+ * <p>The math expression to perform on the returned data, if this object is performing a
3881
+ * math expression. This expression can use the <code>Id</code> of the other metrics to
3882
+ * refer to those metrics, and can also use the <code>Id</code> of other expressions to use
3883
+ * the result of those expressions. </p>
3884
+ * <p>Conditional: Within each <code>MetricDataQuery</code> object, you must specify either
3885
+ * <code>Expression</code> or <code>MetricStat</code>, but not both.</p>
3886
+ */
3887
+ Expression?: string;
3888
+ /**
3889
+ * <p>Information about the metric data to return.</p>
3890
+ * <p>Conditional: Within each <code>MetricDataQuery</code> object, you must specify either
3891
+ * <code>Expression</code> or <code>MetricStat</code>, but not both.</p>
3892
+ */
3893
+ MetricStat?: MetricStat;
3894
+ /**
3895
+ * <p>A human-readable label for this metric or expression. This is especially useful if
3896
+ * this is a math expression, so that you know what the value represents.</p>
3897
+ */
3898
+ Label?: string;
3899
+ /**
3900
+ * <p>Indicates whether to return the timestamps and raw data values of this metric. </p>
3901
+ * <p>If you use any math expressions, specify <code>true</code> for this value for only the
3902
+ * final math expression that the metric specification is based on. You must specify
3903
+ * <code>false</code> for <code>ReturnData</code> for all the other metrics and
3904
+ * expressions used in the metric specification.</p>
3905
+ * <p>If you are only retrieving metrics and not performing any math expressions, do not
3906
+ * specify anything for <code>ReturnData</code>. This sets it to its default
3907
+ * (<code>true</code>).</p>
3908
+ */
3909
+ ReturnData?: boolean;
3910
+ }
3911
+ export declare namespace MetricDataQuery {
3912
+ /**
3913
+ * @internal
3914
+ */
3915
+ const filterSensitiveLog: (obj: MetricDataQuery) => any;
3916
+ }
3917
+ /**
3918
+ * <p>Describes a customized capacity metric for a predictive scaling policy.</p>
3919
+ */
3920
+ export interface PredictiveScalingCustomizedCapacityMetric {
3921
+ /**
3922
+ * <p>One or more metric data queries to provide the data points for a capacity metric. Use
3923
+ * multiple metric data queries only if you are performing a math expression on returned
3924
+ * data. </p>
3925
+ */
3926
+ MetricDataQueries: MetricDataQuery[] | undefined;
3927
+ }
3928
+ export declare namespace PredictiveScalingCustomizedCapacityMetric {
3929
+ /**
3930
+ * @internal
3931
+ */
3932
+ const filterSensitiveLog: (obj: PredictiveScalingCustomizedCapacityMetric) => any;
3933
+ }
3934
+ /**
3935
+ * <p>Describes a custom load metric for a predictive scaling policy.</p>
3936
+ */
3937
+ export interface PredictiveScalingCustomizedLoadMetric {
3938
+ /**
3939
+ * <p>One or more metric data queries to provide the data points for a load metric. Use
3940
+ * multiple metric data queries only if you are performing a math expression on returned
3941
+ * data. </p>
3942
+ */
3943
+ MetricDataQueries: MetricDataQuery[] | undefined;
3944
+ }
3945
+ export declare namespace PredictiveScalingCustomizedLoadMetric {
3946
+ /**
3947
+ * @internal
3948
+ */
3949
+ const filterSensitiveLog: (obj: PredictiveScalingCustomizedLoadMetric) => any;
3950
+ }
3951
+ /**
3952
+ * <p>Describes a custom scaling metric for a predictive scaling policy.</p>
3953
+ */
3954
+ export interface PredictiveScalingCustomizedScalingMetric {
3955
+ /**
3956
+ * <p>One or more metric data queries to provide the data points for a scaling metric. Use
3957
+ * multiple metric data queries only if you are performing a math expression on returned
3958
+ * data. </p>
3959
+ */
3960
+ MetricDataQueries: MetricDataQuery[] | undefined;
3961
+ }
3962
+ export declare namespace PredictiveScalingCustomizedScalingMetric {
3963
+ /**
3964
+ * @internal
3965
+ */
3966
+ const filterSensitiveLog: (obj: PredictiveScalingCustomizedScalingMetric) => any;
3967
+ }
3854
3968
  export declare enum PredefinedLoadMetricType {
3855
3969
  ALBTargetGroupRequestCount = "ALBTargetGroupRequestCount",
3856
3970
  ASGTotalCPUUtilization = "ASGTotalCPUUtilization",
@@ -3870,8 +3984,8 @@ export interface PredictiveScalingPredefinedLoadMetric {
3870
3984
  PredefinedMetricType: PredefinedLoadMetricType | string | undefined;
3871
3985
  /**
3872
3986
  * <p>A label that uniquely identifies a specific Application Load Balancer target group from which to determine
3873
- * the request count served by your Auto Scaling group. You can't specify a resource label
3874
- * unless the target group is attached to the Auto Scaling group.</p>
3987
+ * the request count served by your Auto Scaling group. You can't specify a resource label unless
3988
+ * the target group is attached to the Auto Scaling group.</p>
3875
3989
  * <p>You create the resource label by appending the final portion of the load balancer ARN
3876
3990
  * and the final portion of the target group ARN into a single value, separated by a forward
3877
3991
  * slash (/). The format of the resource label is:</p>
@@ -3966,8 +4080,8 @@ export interface PredictiveScalingPredefinedScalingMetric {
3966
4080
  PredefinedMetricType: PredefinedScalingMetricType | string | undefined;
3967
4081
  /**
3968
4082
  * <p>A label that uniquely identifies a specific Application Load Balancer target group from which to determine
3969
- * the average request count served by your Auto Scaling group. You can't specify a resource
3970
- * label unless the target group is attached to the Auto Scaling group.</p>
4083
+ * the average request count served by your Auto Scaling group. You can't specify a resource label
4084
+ * unless the target group is attached to the Auto Scaling group.</p>
3971
4085
  * <p>You create the resource label by appending the final portion of the load balancer ARN
3972
4086
  * and the final portion of the target group ARN into a single value, separated by a forward
3973
4087
  * slash (/). The format of the resource label is:</p>
@@ -4038,25 +4152,46 @@ export declare namespace PredictiveScalingPredefinedScalingMetric {
4038
4152
  * 1000 requests per minute as possible at all times.</p>
4039
4153
  * </li>
4040
4154
  * </ul>
4155
+ * <p>For information about using custom metrics with predictive scaling, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/predictive-scaling-customized-metric-specification.html">Advanced predictive scaling policy configurations using custom metrics</a> in
4156
+ * the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
4041
4157
  */
4042
4158
  export interface PredictiveScalingMetricSpecification {
4043
4159
  /**
4044
4160
  * <p>Specifies the target utilization.</p>
4161
+ * <note>
4162
+ * <p>Some metrics are based on a count instead of a percentage, such as the request
4163
+ * count for an Application Load Balancer or the number of messages in an SQS queue. If the scaling policy
4164
+ * specifies one of these metrics, specify the target utilization as the optimal
4165
+ * average request or message count per instance during any one-minute interval.
4166
+ * </p>
4167
+ * </note>
4045
4168
  */
4046
4169
  TargetValue: number | undefined;
4047
4170
  /**
4048
- * <p>The metric pair specification from which Amazon EC2 Auto Scaling determines the appropriate scaling
4049
- * metric and load metric to use.</p>
4171
+ * <p>The predefined metric pair specification from which Amazon EC2 Auto Scaling determines the
4172
+ * appropriate scaling metric and load metric to use.</p>
4050
4173
  */
4051
4174
  PredefinedMetricPairSpecification?: PredictiveScalingPredefinedMetricPair;
4052
4175
  /**
4053
- * <p>The scaling metric specification.</p>
4176
+ * <p>The predefined scaling metric specification.</p>
4054
4177
  */
4055
4178
  PredefinedScalingMetricSpecification?: PredictiveScalingPredefinedScalingMetric;
4056
4179
  /**
4057
- * <p>The load metric specification.</p>
4180
+ * <p>The predefined load metric specification.</p>
4058
4181
  */
4059
4182
  PredefinedLoadMetricSpecification?: PredictiveScalingPredefinedLoadMetric;
4183
+ /**
4184
+ * <p>The customized scaling metric specification.</p>
4185
+ */
4186
+ CustomizedScalingMetricSpecification?: PredictiveScalingCustomizedScalingMetric;
4187
+ /**
4188
+ * <p>The customized load metric specification.</p>
4189
+ */
4190
+ CustomizedLoadMetricSpecification?: PredictiveScalingCustomizedLoadMetric;
4191
+ /**
4192
+ * <p>The customized capacity metric specification.</p>
4193
+ */
4194
+ CustomizedCapacityMetricSpecification?: PredictiveScalingCustomizedCapacityMetric;
4060
4195
  }
4061
4196
  export declare namespace PredictiveScalingMetricSpecification {
4062
4197
  /**
@@ -4204,25 +4339,6 @@ export declare namespace StepAdjustment {
4204
4339
  */
4205
4340
  const filterSensitiveLog: (obj: StepAdjustment) => any;
4206
4341
  }
4207
- /**
4208
- * <p>Describes the dimension of a metric.</p>
4209
- */
4210
- export interface MetricDimension {
4211
- /**
4212
- * <p>The name of the dimension.</p>
4213
- */
4214
- Name: string | undefined;
4215
- /**
4216
- * <p>The value of the dimension.</p>
4217
- */
4218
- Value: string | undefined;
4219
- }
4220
- export declare namespace MetricDimension {
4221
- /**
4222
- * @internal
4223
- */
4224
- const filterSensitiveLog: (obj: MetricDimension) => any;
4225
- }
4226
4342
  export declare enum MetricStatistic {
4227
4343
  Average = "Average",
4228
4344
  Maximum = "Maximum",
@@ -4239,7 +4355,7 @@ export declare enum MetricStatistic {
4239
4355
  * <p>Add values for each required parameter from CloudWatch. You can use an existing
4240
4356
  * metric, or a new metric that you create. To use your own metric, you must first
4241
4357
  * publish the metric to CloudWatch. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/publishingMetrics.html">Publish
4242
- * Custom Metrics</a> in the <i>Amazon CloudWatch User
4358
+ * custom metrics</a> in the <i>Amazon CloudWatch User
4243
4359
  * Guide</i>.</p>
4244
4360
  * </li>
4245
4361
  * <li>
@@ -4249,12 +4365,19 @@ export declare enum MetricStatistic {
4249
4365
  * increases.</p>
4250
4366
  * </li>
4251
4367
  * </ul>
4252
- * <p>For more information about CloudWatch, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html">Amazon CloudWatch
4253
- * Concepts</a>.</p>
4368
+ * <p>For more information about the CloudWatch terminology below, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html">Amazon CloudWatch
4369
+ * concepts</a>.</p>
4370
+ * <note>
4371
+ * <p>Each individual service provides information about the metrics, namespace, and
4372
+ * dimensions they use. For more information, see <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html">Amazon Web Services services that publish CloudWatch metrics</a> in the <i>Amazon CloudWatch User
4373
+ * Guide</i>.</p>
4374
+ * </note>
4254
4375
  */
4255
4376
  export interface CustomizedMetricSpecification {
4256
4377
  /**
4257
- * <p>The name of the metric.</p>
4378
+ * <p>The name of the metric. To get the exact metric name, namespace, and dimensions,
4379
+ * inspect the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html">Metric</a> object
4380
+ * that is returned by a call to <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html">ListMetrics</a>.</p>
4258
4381
  */
4259
4382
  MetricName: string | undefined;
4260
4383
  /**
@@ -4272,7 +4395,9 @@ export interface CustomizedMetricSpecification {
4272
4395
  */
4273
4396
  Statistic: MetricStatistic | string | undefined;
4274
4397
  /**
4275
- * <p>The unit of the metric.</p>
4398
+ * <p>The unit of the metric. For a complete list of the units that CloudWatch supports, see the
4399
+ * <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html">MetricDatum</a>
4400
+ * data type in the <i>Amazon CloudWatch API Reference</i>.</p>
4276
4401
  */
4277
4402
  Unit?: string;
4278
4403
  }
@@ -5285,7 +5410,7 @@ export declare namespace ExitStandbyQuery {
5285
5410
  */
5286
5411
  export interface CapacityForecast {
5287
5412
  /**
5288
- * <p>The time stamps for the data points, in UTC format.</p>
5413
+ * <p>The timestamps for the data points, in UTC format.</p>
5289
5414
  */
5290
5415
  Timestamps: Date[] | undefined;
5291
5416
  /**
@@ -5307,7 +5432,7 @@ export declare namespace CapacityForecast {
5307
5432
  */
5308
5433
  export interface LoadForecast {
5309
5434
  /**
5310
- * <p>The time stamps for the data points, in UTC format.</p>
5435
+ * <p>The timestamps for the data points, in UTC format.</p>
5311
5436
  */
5312
5437
  Timestamps: Date[] | undefined;
5313
5438
  /**
@@ -5416,9 +5541,8 @@ export interface PutLifecycleHookType {
5416
5541
  * is in the transition state for the lifecycle hook. This target can be either an SQS
5417
5542
  * queue or an SNS topic.</p>
5418
5543
  * <p>If you specify an empty string, this overrides the current ARN.</p>
5419
- * <p>This operation uses the JSON format when sending notifications to an Amazon SQS queue,
5420
- * and an email key-value pair format when sending notifications to an Amazon SNS
5421
- * topic.</p>
5544
+ * <p>This operation uses the JSON format when sending notifications to an Amazon SQS queue, and
5545
+ * an email key-value pair format when sending notifications to an Amazon SNS topic.</p>
5422
5546
  * <p>When you specify a notification target, Amazon EC2 Auto Scaling sends it a test message. Test
5423
5547
  * messages contain the following additional key-value pair: <code>"Event":
5424
5548
  * "autoscaling:TEST_NOTIFICATION"</code>.</p>
@@ -5457,8 +5581,7 @@ export interface PutNotificationConfigurationType {
5457
5581
  */
5458
5582
  AutoScalingGroupName: string | undefined;
5459
5583
  /**
5460
- * <p>The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (Amazon SNS)
5461
- * topic.</p>
5584
+ * <p>The Amazon Resource Name (ARN) of the Amazon SNS topic.</p>
5462
5585
  */
5463
5586
  TopicARN: string | undefined;
5464
5587
  /**
@@ -5599,7 +5722,7 @@ export interface PutScalingPolicyType {
5599
5722
  */
5600
5723
  EstimatedInstanceWarmup?: number;
5601
5724
  /**
5602
- * <p>A target tracking scaling policy. Provides support for predefined or customized
5725
+ * <p>A target tracking scaling policy. Provides support for predefined or custom
5603
5726
  * metrics.</p>
5604
5727
  * <p>The following predefined metrics are available:</p>
5605
5728
  * <ul>
@@ -5640,9 +5763,10 @@ export interface PutScalingPolicyType {
5640
5763
  */
5641
5764
  Enabled?: boolean;
5642
5765
  /**
5643
- * <p>A predictive scaling policy. Provides support for only predefined metrics.</p>
5644
- * <p>Predictive scaling works with CPU utilization, network in/out, and the Application
5645
- * Load Balancer request count.</p>
5766
+ * <p>A predictive scaling policy. Provides support for predefined and custom
5767
+ * metrics.</p>
5768
+ * <p>Predefined metrics include CPU utilization, network in/out, and the Application Load
5769
+ * Balancer request count.</p>
5646
5770
  * <p>For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/APIReference/API_PredictiveScalingConfiguration.html">PredictiveScalingConfiguration</a> in the <i>Amazon EC2 Auto Scaling API
5647
5771
  * Reference</i>.</p>
5648
5772
  * <p>Required if the policy type is <code>PredictiveScaling</code>.</p>
@@ -5962,12 +6086,6 @@ export interface InstanceRefreshInProgressFault extends __SmithyException, $Meta
5962
6086
  $fault: "client";
5963
6087
  message?: string;
5964
6088
  }
5965
- export declare namespace InstanceRefreshInProgressFault {
5966
- /**
5967
- * @internal
5968
- */
5969
- const filterSensitiveLog: (obj: InstanceRefreshInProgressFault) => any;
5970
- }
5971
6089
  export interface StartInstanceRefreshAnswer {
5972
6090
  /**
5973
6091
  * <p>A unique ID for tracking the progress of the request.</p>
@@ -6060,7 +6178,7 @@ export interface UpdateAutoScalingGroupType {
6060
6178
  LaunchTemplate?: LaunchTemplateSpecification;
6061
6179
  /**
6062
6180
  * <p>An embedded object that specifies a mixed instances policy. For more information, see
6063
- * <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/asg-purchase-options.html">Auto Scaling groups with multiple
6181
+ * <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html">Auto Scaling groups with multiple
6064
6182
  * instance types and purchase options</a> in the <i>Amazon EC2 Auto Scaling User
6065
6183
  * Guide</i>.</p>
6066
6184
  */
@@ -6108,8 +6226,8 @@ export interface UpdateAutoScalingGroupType {
6108
6226
  HealthCheckType?: string;
6109
6227
  /**
6110
6228
  * <p>The amount of time, in seconds, that Amazon EC2 Auto Scaling waits before checking the health status
6111
- * of an EC2 instance that has come into service. The default value is <code>0</code>. For
6112
- * more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html#health-check-grace-period">Health
6229
+ * of an EC2 instance that has come into service and marking it unhealthy due to a failed
6230
+ * health check. The default value is <code>0</code>. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/healthcheck.html#health-check-grace-period">Health
6113
6231
  * check grace period</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
6114
6232
  * <p>Conditional: Required if you are adding an <code>ELB</code> health check.</p>
6115
6233
  */
@@ -6137,7 +6255,8 @@ export interface UpdateAutoScalingGroupType {
6137
6255
  /**
6138
6256
  * <p>Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling
6139
6257
  * when scaling in. For more information about preventing instances from terminating on
6140
- * scale in, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/as-instance-termination.html#instance-protection">Instance scale-in protection</a> in the
6258
+ * scale in, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html">Using
6259
+ * instance scale-in protection</a> in the
6141
6260
  * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
6142
6261
  */
6143
6262
  NewInstancesProtectedFromScaleIn?: boolean;
@@ -6157,8 +6276,8 @@ export interface UpdateAutoScalingGroupType {
6157
6276
  */
6158
6277
  MaxInstanceLifetime?: number;
6159
6278
  /**
6160
- * <p>Enables or disables Capacity Rebalancing. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/capacity-rebalance.html">Amazon EC2 Auto Scaling Capacity Rebalancing</a> in the
6161
- * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
6279
+ * <p>Enables or disables Capacity Rebalancing. For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html">Amazon EC2 Auto Scaling
6280
+ * Capacity Rebalancing</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
6162
6281
  */
6163
6282
  CapacityRebalance?: boolean;
6164
6283
  /**