@aws-sdk/client-auto-scaling 3.40.0 → 3.45.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.
Files changed (72) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/dist-cjs/endpoints.js +9 -0
  3. package/dist-cjs/models/models_0.js +44 -8
  4. package/dist-cjs/protocols/Aws_query.js +247 -0
  5. package/dist-es/endpoints.js +9 -0
  6. package/dist-es/models/models_0.js +28 -4
  7. package/dist-es/protocols/Aws_query.js +355 -87
  8. package/dist-types/AutoScaling.d.ts +25 -20
  9. package/dist-types/commands/AttachInstancesCommand.d.ts +1 -1
  10. package/dist-types/commands/AttachLoadBalancerTargetGroupsCommand.d.ts +3 -1
  11. package/dist-types/commands/AttachLoadBalancersCommand.d.ts +3 -1
  12. package/dist-types/commands/BatchDeleteScheduledActionCommand.d.ts +1 -1
  13. package/dist-types/commands/BatchPutScheduledUpdateGroupActionCommand.d.ts +1 -1
  14. package/dist-types/commands/CancelInstanceRefreshCommand.d.ts +1 -1
  15. package/dist-types/commands/CompleteLifecycleActionCommand.d.ts +7 -6
  16. package/dist-types/commands/CreateAutoScalingGroupCommand.d.ts +1 -1
  17. package/dist-types/commands/CreateLaunchConfigurationCommand.d.ts +1 -1
  18. package/dist-types/commands/CreateOrUpdateTagsCommand.d.ts +1 -1
  19. package/dist-types/commands/DeleteAutoScalingGroupCommand.d.ts +1 -1
  20. package/dist-types/commands/DeleteLaunchConfigurationCommand.d.ts +1 -1
  21. package/dist-types/commands/DeleteLifecycleHookCommand.d.ts +1 -1
  22. package/dist-types/commands/DeleteNotificationConfigurationCommand.d.ts +1 -1
  23. package/dist-types/commands/DeletePolicyCommand.d.ts +1 -1
  24. package/dist-types/commands/DeleteScheduledActionCommand.d.ts +1 -1
  25. package/dist-types/commands/DeleteTagsCommand.d.ts +1 -1
  26. package/dist-types/commands/DeleteWarmPoolCommand.d.ts +1 -1
  27. package/dist-types/commands/DescribeAccountLimitsCommand.d.ts +1 -1
  28. package/dist-types/commands/DescribeAdjustmentTypesCommand.d.ts +1 -1
  29. package/dist-types/commands/DescribeAutoScalingGroupsCommand.d.ts +1 -1
  30. package/dist-types/commands/DescribeAutoScalingInstancesCommand.d.ts +1 -1
  31. package/dist-types/commands/DescribeAutoScalingNotificationTypesCommand.d.ts +1 -1
  32. package/dist-types/commands/DescribeInstanceRefreshesCommand.d.ts +1 -1
  33. package/dist-types/commands/DescribeLaunchConfigurationsCommand.d.ts +1 -1
  34. package/dist-types/commands/DescribeLifecycleHookTypesCommand.d.ts +1 -1
  35. package/dist-types/commands/DescribeLifecycleHooksCommand.d.ts +1 -1
  36. package/dist-types/commands/DescribeLoadBalancerTargetGroupsCommand.d.ts +1 -1
  37. package/dist-types/commands/DescribeLoadBalancersCommand.d.ts +1 -1
  38. package/dist-types/commands/DescribeMetricCollectionTypesCommand.d.ts +1 -1
  39. package/dist-types/commands/DescribeNotificationConfigurationsCommand.d.ts +1 -1
  40. package/dist-types/commands/DescribePoliciesCommand.d.ts +1 -1
  41. package/dist-types/commands/DescribeScalingActivitiesCommand.d.ts +1 -1
  42. package/dist-types/commands/DescribeScalingProcessTypesCommand.d.ts +1 -1
  43. package/dist-types/commands/DescribeScheduledActionsCommand.d.ts +1 -1
  44. package/dist-types/commands/DescribeTagsCommand.d.ts +1 -1
  45. package/dist-types/commands/DescribeTerminationPolicyTypesCommand.d.ts +1 -1
  46. package/dist-types/commands/DescribeWarmPoolCommand.d.ts +1 -1
  47. package/dist-types/commands/DetachInstancesCommand.d.ts +1 -1
  48. package/dist-types/commands/DetachLoadBalancerTargetGroupsCommand.d.ts +1 -1
  49. package/dist-types/commands/DetachLoadBalancersCommand.d.ts +1 -1
  50. package/dist-types/commands/DisableMetricsCollectionCommand.d.ts +1 -1
  51. package/dist-types/commands/EnableMetricsCollectionCommand.d.ts +1 -1
  52. package/dist-types/commands/EnterStandbyCommand.d.ts +1 -1
  53. package/dist-types/commands/ExecutePolicyCommand.d.ts +1 -1
  54. package/dist-types/commands/ExitStandbyCommand.d.ts +1 -1
  55. package/dist-types/commands/GetPredictiveScalingForecastCommand.d.ts +1 -1
  56. package/dist-types/commands/PutLifecycleHookCommand.d.ts +9 -9
  57. package/dist-types/commands/PutNotificationConfigurationCommand.d.ts +1 -1
  58. package/dist-types/commands/PutScalingPolicyCommand.d.ts +1 -1
  59. package/dist-types/commands/PutScheduledUpdateGroupActionCommand.d.ts +1 -1
  60. package/dist-types/commands/PutWarmPoolCommand.d.ts +1 -1
  61. package/dist-types/commands/RecordLifecycleActionHeartbeatCommand.d.ts +6 -7
  62. package/dist-types/commands/ResumeProcessesCommand.d.ts +1 -1
  63. package/dist-types/commands/SetDesiredCapacityCommand.d.ts +1 -1
  64. package/dist-types/commands/SetInstanceHealthCommand.d.ts +1 -1
  65. package/dist-types/commands/SetInstanceProtectionCommand.d.ts +3 -2
  66. package/dist-types/commands/StartInstanceRefreshCommand.d.ts +1 -1
  67. package/dist-types/commands/SuspendProcessesCommand.d.ts +1 -1
  68. package/dist-types/commands/TerminateInstanceInAutoScalingGroupCommand.d.ts +1 -1
  69. package/dist-types/commands/UpdateAutoScalingGroupCommand.d.ts +1 -1
  70. package/dist-types/models/models_0.d.ts +273 -100
  71. package/dist-types/ts3.4/models/models_0.d.ts +87 -11
  72. package/package.json +6 -6
@@ -595,37 +595,9 @@ export declare namespace LaunchTemplateSpecification {
595
595
  /**
596
596
  * <p>Describes information used to specify a lifecycle hook for an Auto Scaling
597
597
  * 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>
598
+ *
599
+ *
600
+ *
629
601
  * <p>For more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/lifecycle-hooks.html">Amazon EC2 Auto Scaling lifecycle
630
602
  * hooks</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
631
603
  */
@@ -1157,7 +1129,7 @@ export declare namespace InstanceRequirements {
1157
1129
  const filterSensitiveLog: (obj: InstanceRequirements) => any;
1158
1130
  }
1159
1131
  /**
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>
1132
+ * <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
1133
  */
1162
1134
  export interface LaunchTemplateOverrides {
1163
1135
  /**
@@ -1176,7 +1148,7 @@ export interface LaunchTemplateOverrides {
1176
1148
  * overage. For example, if there are two units remaining to fulfill capacity, and Amazon EC2 Auto Scaling
1177
1149
  * can only launch an instance with a <code>WeightedCapacity</code> of five units, the
1178
1150
  * 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
1151
+ * information, see <a href="https://docs.aws.amazon.com/ec2-auto-scaling-mixed-instances-groups-instance-weighting.html">Instance weighting for
1180
1152
  * Amazon EC2 Auto Scaling</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>. Value must be in the
1181
1153
  * range of 1–999.</p>
1182
1154
  */
@@ -1185,7 +1157,7 @@ export interface LaunchTemplateOverrides {
1185
1157
  * <p>Provides the launch template to be used when launching the instance type specified in
1186
1158
  * <code>InstanceType</code>. For example, some instance types might require a launch
1187
1159
  * 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
1160
+ * 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
1161
  * different launch template for an instance type</a> in the
1190
1162
  * <i>Amazon EC2 Auto Scaling User Guide</i>. </p>
1191
1163
  */
@@ -1231,7 +1203,7 @@ export declare namespace LaunchTemplate {
1231
1203
  /**
1232
1204
  * <p>Describes a mixed instances policy. A mixed instances policy contains the instance
1233
1205
  * 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
1206
+ * 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
1207
  * groups with multiple instance types and purchase options</a> in the
1236
1208
  * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1237
1209
  */
@@ -1316,7 +1288,7 @@ export interface CreateAutoScalingGroupType {
1316
1288
  *
1317
1289
  *
1318
1290
  *
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
1291
+ * <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
1292
  * instance types and purchase options</a> in the <i>Amazon EC2 Auto Scaling User
1321
1293
  * Guide</i>.</p>
1322
1294
  */
@@ -1390,9 +1362,8 @@ export interface CreateAutoScalingGroupType {
1390
1362
  HealthCheckType?: string;
1391
1363
  /**
1392
1364
  * <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
1365
+ * of an EC2 instance that has come into service and marking it unhealthy due to a failed
1366
+ * 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
1367
  * check grace period</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1397
1368
  * <p>Conditional: Required if you are adding an <code>ELB</code> health check.</p>
1398
1369
  */
@@ -1425,7 +1396,8 @@ export interface CreateAutoScalingGroupType {
1425
1396
  /**
1426
1397
  * <p>Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling
1427
1398
  * 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
1399
+ * scale in, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html">Using
1400
+ * instance scale-in protection</a> in the
1429
1401
  * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1430
1402
  */
1431
1403
  NewInstancesProtectedFromScaleIn?: boolean;
@@ -1434,8 +1406,8 @@ export interface CreateAutoScalingGroupType {
1434
1406
  * disabled. When you turn on Capacity Rebalancing, Amazon EC2 Auto Scaling attempts to launch a Spot
1435
1407
  * Instance whenever Amazon EC2 notifies that a Spot Instance is at an elevated risk of
1436
1408
  * 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>
1409
+ * more information, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-capacity-rebalancing.html">Amazon EC2 Auto Scaling
1410
+ * Capacity Rebalancing</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
1439
1411
  */
1440
1412
  CapacityRebalance?: boolean;
1441
1413
  /**
@@ -1982,8 +1954,7 @@ export interface DeleteNotificationConfigurationType {
1982
1954
  */
1983
1955
  AutoScalingGroupName: string | undefined;
1984
1956
  /**
1985
- * <p>The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (Amazon SNS)
1986
- * topic.</p>
1957
+ * <p>The Amazon Resource Name (ARN) of the Amazon SNS topic.</p>
1987
1958
  */
1988
1959
  TopicARN: string | undefined;
1989
1960
  }
@@ -2566,7 +2537,8 @@ export interface AutoScalingGroup {
2566
2537
  HealthCheckType: string | undefined;
2567
2538
  /**
2568
2539
  * <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>
2540
+ * of an EC2 instance that has come into service and marking it unhealthy due to a failed
2541
+ * health check.</p>
2570
2542
  */
2571
2543
  HealthCheckGracePeriod?: number;
2572
2544
  /**
@@ -2832,7 +2804,7 @@ export interface DesiredConfiguration {
2832
2804
  /**
2833
2805
  * <p>Describes a mixed instances policy. A mixed instances policy contains the instance
2834
2806
  * 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
2807
+ * 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
2808
  * groups with multiple instance types and purchase options</a> in the
2837
2809
  * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
2838
2810
  */
@@ -3287,9 +3259,9 @@ export declare namespace LaunchConfigurationsType {
3287
3259
  const filterSensitiveLog: (obj: LaunchConfigurationsType) => any;
3288
3260
  }
3289
3261
  /**
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>
3262
+ * <p>Describes a lifecycle hook, which enables an Auto Scaling group to be aware of events in the
3263
+ * Auto Scaling instance lifecycle, and then perform a custom action when the corresponding
3264
+ * lifecycle event occurs.</p>
3293
3265
  */
3294
3266
  export interface LifecycleHook {
3295
3267
  /**
@@ -3729,8 +3701,7 @@ export interface NotificationConfiguration {
3729
3701
  */
3730
3702
  AutoScalingGroupName?: string;
3731
3703
  /**
3732
- * <p>The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (Amazon SNS)
3733
- * topic.</p>
3704
+ * <p>The Amazon Resource Name (ARN) of the Amazon SNS topic.</p>
3734
3705
  */
3735
3706
  TopicARN?: string;
3736
3707
  /**
@@ -3851,6 +3822,197 @@ export declare enum PredictiveScalingMaxCapacityBreachBehavior {
3851
3822
  HonorMaxCapacity = "HonorMaxCapacity",
3852
3823
  IncreaseMaxCapacity = "IncreaseMaxCapacity"
3853
3824
  }
3825
+ /**
3826
+ * <p>Describes the dimension of a metric.</p>
3827
+ */
3828
+ export interface MetricDimension {
3829
+ /**
3830
+ * <p>The name of the dimension.</p>
3831
+ */
3832
+ Name: string | undefined;
3833
+ /**
3834
+ * <p>The value of the dimension.</p>
3835
+ */
3836
+ Value: string | undefined;
3837
+ }
3838
+ export declare namespace MetricDimension {
3839
+ /**
3840
+ * @internal
3841
+ */
3842
+ const filterSensitiveLog: (obj: MetricDimension) => any;
3843
+ }
3844
+ /**
3845
+ * <p>Represents a specific metric. </p>
3846
+ */
3847
+ export interface Metric {
3848
+ /**
3849
+ * <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
3850
+ * services that publish CloudWatch metrics </a> in the <i>Amazon CloudWatch User
3851
+ * Guide</i>.</p>
3852
+ */
3853
+ Namespace: string | undefined;
3854
+ /**
3855
+ * <p>The name of the metric.</p>
3856
+ */
3857
+ MetricName: string | undefined;
3858
+ /**
3859
+ * <p>The dimensions for the metric. For the list of available dimensions, see the Amazon Web Services
3860
+ * documentation available from the table in <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/aws-services-cloudwatch-metrics.html">Amazon Web Services
3861
+ * services that publish CloudWatch metrics </a> in the <i>Amazon CloudWatch User
3862
+ * Guide</i>. </p>
3863
+ * <p>Conditional: If you published your metric with dimensions, you must specify the same
3864
+ * dimensions in your scaling policy.</p>
3865
+ */
3866
+ Dimensions?: MetricDimension[];
3867
+ }
3868
+ export declare namespace Metric {
3869
+ /**
3870
+ * @internal
3871
+ */
3872
+ const filterSensitiveLog: (obj: Metric) => any;
3873
+ }
3874
+ /**
3875
+ * <p>This structure defines the CloudWatch metric to return, along with the statistic, period,
3876
+ * and unit.</p>
3877
+ *
3878
+ * <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
3879
+ * concepts</a> in the <i>Amazon CloudWatch User Guide</i>.</p>
3880
+ */
3881
+ export interface MetricStat {
3882
+ /**
3883
+ * <p>The CloudWatch metric to return, including the metric name, namespace, and dimensions. To
3884
+ * 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>
3885
+ */
3886
+ Metric: Metric | undefined;
3887
+ /**
3888
+ * <p>The statistic to return. It can include any CloudWatch statistic or extended statistic. For
3889
+ * 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>
3890
+ * <p>The most commonly used metrics for predictive scaling are <code>Average</code> and
3891
+ * <code>Sum</code>.</p>
3892
+ */
3893
+ Stat: string | undefined;
3894
+ /**
3895
+ * <p>The unit to use for the returned data points. For a complete list of the units that
3896
+ * CloudWatch supports, see the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html">MetricDatum</a>
3897
+ * data type in the <i>Amazon CloudWatch API Reference</i>.</p>
3898
+ */
3899
+ Unit?: string;
3900
+ }
3901
+ export declare namespace MetricStat {
3902
+ /**
3903
+ * @internal
3904
+ */
3905
+ const filterSensitiveLog: (obj: MetricStat) => any;
3906
+ }
3907
+ /**
3908
+ * <p>The metric data to return. Also defines whether this call is returning data for one
3909
+ * metric only, or whether it is performing a math expression on the values of returned
3910
+ * metric statistics to create a new time series. A time series is a series of data points,
3911
+ * each of which is associated with a timestamp.</p>
3912
+ *
3913
+ *
3914
+ * <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
3915
+ * the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
3916
+ */
3917
+ export interface MetricDataQuery {
3918
+ /**
3919
+ * <p>A short name that identifies the object's results in the response. This name must be
3920
+ * unique among all <code>MetricDataQuery</code> objects specified for a single scaling
3921
+ * policy. If you are performing math expressions on this set of data, this name represents
3922
+ * that data and can serve as a variable in the mathematical expression. The valid
3923
+ * characters are letters, numbers, and underscores. The first character must be a
3924
+ * lowercase letter. </p>
3925
+ */
3926
+ Id: string | undefined;
3927
+ /**
3928
+ * <p>The math expression to perform on the returned data, if this object is performing a
3929
+ * math expression. This expression can use the <code>Id</code> of the other metrics to
3930
+ * refer to those metrics, and can also use the <code>Id</code> of other expressions to use
3931
+ * the result of those expressions. </p>
3932
+ * <p>Conditional: Within each <code>MetricDataQuery</code> object, you must specify either
3933
+ * <code>Expression</code> or <code>MetricStat</code>, but not both.</p>
3934
+ */
3935
+ Expression?: string;
3936
+ /**
3937
+ * <p>Information about the metric data to return.</p>
3938
+ * <p>Conditional: Within each <code>MetricDataQuery</code> object, you must specify either
3939
+ * <code>Expression</code> or <code>MetricStat</code>, but not both.</p>
3940
+ */
3941
+ MetricStat?: MetricStat;
3942
+ /**
3943
+ * <p>A human-readable label for this metric or expression. This is especially useful if
3944
+ * this is a math expression, so that you know what the value represents.</p>
3945
+ */
3946
+ Label?: string;
3947
+ /**
3948
+ * <p>Indicates whether to return the timestamps and raw data values of this metric. </p>
3949
+ * <p>If you use any math expressions, specify <code>true</code> for this value for only the
3950
+ * final math expression that the metric specification is based on. You must specify
3951
+ * <code>false</code> for <code>ReturnData</code> for all the other metrics and
3952
+ * expressions used in the metric specification.</p>
3953
+ * <p>If you are only retrieving metrics and not performing any math expressions, do not
3954
+ * specify anything for <code>ReturnData</code>. This sets it to its default
3955
+ * (<code>true</code>).</p>
3956
+ */
3957
+ ReturnData?: boolean;
3958
+ }
3959
+ export declare namespace MetricDataQuery {
3960
+ /**
3961
+ * @internal
3962
+ */
3963
+ const filterSensitiveLog: (obj: MetricDataQuery) => any;
3964
+ }
3965
+ /**
3966
+ * <p>Describes a customized capacity metric for a predictive scaling policy.</p>
3967
+ */
3968
+ export interface PredictiveScalingCustomizedCapacityMetric {
3969
+ /**
3970
+ * <p>One or more metric data queries to provide the data points for a capacity metric. Use
3971
+ * multiple metric data queries only if you are performing a math expression on returned
3972
+ * data. </p>
3973
+ */
3974
+ MetricDataQueries: MetricDataQuery[] | undefined;
3975
+ }
3976
+ export declare namespace PredictiveScalingCustomizedCapacityMetric {
3977
+ /**
3978
+ * @internal
3979
+ */
3980
+ const filterSensitiveLog: (obj: PredictiveScalingCustomizedCapacityMetric) => any;
3981
+ }
3982
+ /**
3983
+ * <p>Describes a custom load metric for a predictive scaling policy.</p>
3984
+ */
3985
+ export interface PredictiveScalingCustomizedLoadMetric {
3986
+ /**
3987
+ * <p>One or more metric data queries to provide the data points for a load metric. Use
3988
+ * multiple metric data queries only if you are performing a math expression on returned
3989
+ * data. </p>
3990
+ */
3991
+ MetricDataQueries: MetricDataQuery[] | undefined;
3992
+ }
3993
+ export declare namespace PredictiveScalingCustomizedLoadMetric {
3994
+ /**
3995
+ * @internal
3996
+ */
3997
+ const filterSensitiveLog: (obj: PredictiveScalingCustomizedLoadMetric) => any;
3998
+ }
3999
+ /**
4000
+ * <p>Describes a custom scaling metric for a predictive scaling policy.</p>
4001
+ */
4002
+ export interface PredictiveScalingCustomizedScalingMetric {
4003
+ /**
4004
+ * <p>One or more metric data queries to provide the data points for a scaling metric. Use
4005
+ * multiple metric data queries only if you are performing a math expression on returned
4006
+ * data. </p>
4007
+ */
4008
+ MetricDataQueries: MetricDataQuery[] | undefined;
4009
+ }
4010
+ export declare namespace PredictiveScalingCustomizedScalingMetric {
4011
+ /**
4012
+ * @internal
4013
+ */
4014
+ const filterSensitiveLog: (obj: PredictiveScalingCustomizedScalingMetric) => any;
4015
+ }
3854
4016
  export declare enum PredefinedLoadMetricType {
3855
4017
  ALBTargetGroupRequestCount = "ALBTargetGroupRequestCount",
3856
4018
  ASGTotalCPUUtilization = "ASGTotalCPUUtilization",
@@ -3870,8 +4032,8 @@ export interface PredictiveScalingPredefinedLoadMetric {
3870
4032
  PredefinedMetricType: PredefinedLoadMetricType | string | undefined;
3871
4033
  /**
3872
4034
  * <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>
4035
+ * the request count served by your Auto Scaling group. You can't specify a resource label unless
4036
+ * the target group is attached to the Auto Scaling group.</p>
3875
4037
  * <p>You create the resource label by appending the final portion of the load balancer ARN
3876
4038
  * and the final portion of the target group ARN into a single value, separated by a forward
3877
4039
  * slash (/). The format of the resource label is:</p>
@@ -3966,8 +4128,8 @@ export interface PredictiveScalingPredefinedScalingMetric {
3966
4128
  PredefinedMetricType: PredefinedScalingMetricType | string | undefined;
3967
4129
  /**
3968
4130
  * <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>
4131
+ * the average request count served by your Auto Scaling group. You can't specify a resource label
4132
+ * unless the target group is attached to the Auto Scaling group.</p>
3971
4133
  * <p>You create the resource label by appending the final portion of the load balancer ARN
3972
4134
  * and the final portion of the target group ARN into a single value, separated by a forward
3973
4135
  * slash (/). The format of the resource label is:</p>
@@ -4038,25 +4200,46 @@ export declare namespace PredictiveScalingPredefinedScalingMetric {
4038
4200
  * 1000 requests per minute as possible at all times.</p>
4039
4201
  * </li>
4040
4202
  * </ul>
4203
+ * <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
4204
+ * the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
4041
4205
  */
4042
4206
  export interface PredictiveScalingMetricSpecification {
4043
4207
  /**
4044
4208
  * <p>Specifies the target utilization.</p>
4209
+ * <note>
4210
+ * <p>Some metrics are based on a count instead of a percentage, such as the request
4211
+ * count for an Application Load Balancer or the number of messages in an SQS queue. If the scaling policy
4212
+ * specifies one of these metrics, specify the target utilization as the optimal
4213
+ * average request or message count per instance during any one-minute interval.
4214
+ * </p>
4215
+ * </note>
4045
4216
  */
4046
4217
  TargetValue: number | undefined;
4047
4218
  /**
4048
- * <p>The metric pair specification from which Amazon EC2 Auto Scaling determines the appropriate scaling
4049
- * metric and load metric to use.</p>
4219
+ * <p>The predefined metric pair specification from which Amazon EC2 Auto Scaling determines the
4220
+ * appropriate scaling metric and load metric to use.</p>
4050
4221
  */
4051
4222
  PredefinedMetricPairSpecification?: PredictiveScalingPredefinedMetricPair;
4052
4223
  /**
4053
- * <p>The scaling metric specification.</p>
4224
+ * <p>The predefined scaling metric specification.</p>
4054
4225
  */
4055
4226
  PredefinedScalingMetricSpecification?: PredictiveScalingPredefinedScalingMetric;
4056
4227
  /**
4057
- * <p>The load metric specification.</p>
4228
+ * <p>The predefined load metric specification.</p>
4058
4229
  */
4059
4230
  PredefinedLoadMetricSpecification?: PredictiveScalingPredefinedLoadMetric;
4231
+ /**
4232
+ * <p>The customized scaling metric specification.</p>
4233
+ */
4234
+ CustomizedScalingMetricSpecification?: PredictiveScalingCustomizedScalingMetric;
4235
+ /**
4236
+ * <p>The customized load metric specification.</p>
4237
+ */
4238
+ CustomizedLoadMetricSpecification?: PredictiveScalingCustomizedLoadMetric;
4239
+ /**
4240
+ * <p>The customized capacity metric specification.</p>
4241
+ */
4242
+ CustomizedCapacityMetricSpecification?: PredictiveScalingCustomizedCapacityMetric;
4060
4243
  }
4061
4244
  export declare namespace PredictiveScalingMetricSpecification {
4062
4245
  /**
@@ -4204,25 +4387,6 @@ export declare namespace StepAdjustment {
4204
4387
  */
4205
4388
  const filterSensitiveLog: (obj: StepAdjustment) => any;
4206
4389
  }
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
4390
  export declare enum MetricStatistic {
4227
4391
  Average = "Average",
4228
4392
  Maximum = "Maximum",
@@ -4239,7 +4403,7 @@ export declare enum MetricStatistic {
4239
4403
  * <p>Add values for each required parameter from CloudWatch. You can use an existing
4240
4404
  * metric, or a new metric that you create. To use your own metric, you must first
4241
4405
  * 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
4406
+ * custom metrics</a> in the <i>Amazon CloudWatch User
4243
4407
  * Guide</i>.</p>
4244
4408
  * </li>
4245
4409
  * <li>
@@ -4249,12 +4413,19 @@ export declare enum MetricStatistic {
4249
4413
  * increases.</p>
4250
4414
  * </li>
4251
4415
  * </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>
4416
+ * <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
4417
+ * concepts</a>.</p>
4418
+ * <note>
4419
+ * <p>Each individual service provides information about the metrics, namespace, and
4420
+ * 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
4421
+ * Guide</i>.</p>
4422
+ * </note>
4254
4423
  */
4255
4424
  export interface CustomizedMetricSpecification {
4256
4425
  /**
4257
- * <p>The name of the metric.</p>
4426
+ * <p>The name of the metric. To get the exact metric name, namespace, and dimensions,
4427
+ * inspect the <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_Metric.html">Metric</a> object
4428
+ * that is returned by a call to <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_ListMetrics.html">ListMetrics</a>.</p>
4258
4429
  */
4259
4430
  MetricName: string | undefined;
4260
4431
  /**
@@ -4272,7 +4443,9 @@ export interface CustomizedMetricSpecification {
4272
4443
  */
4273
4444
  Statistic: MetricStatistic | string | undefined;
4274
4445
  /**
4275
- * <p>The unit of the metric.</p>
4446
+ * <p>The unit of the metric. For a complete list of the units that CloudWatch supports, see the
4447
+ * <a href="https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html">MetricDatum</a>
4448
+ * data type in the <i>Amazon CloudWatch API Reference</i>.</p>
4276
4449
  */
4277
4450
  Unit?: string;
4278
4451
  }
@@ -5285,7 +5458,7 @@ export declare namespace ExitStandbyQuery {
5285
5458
  */
5286
5459
  export interface CapacityForecast {
5287
5460
  /**
5288
- * <p>The time stamps for the data points, in UTC format.</p>
5461
+ * <p>The timestamps for the data points, in UTC format.</p>
5289
5462
  */
5290
5463
  Timestamps: Date[] | undefined;
5291
5464
  /**
@@ -5307,7 +5480,7 @@ export declare namespace CapacityForecast {
5307
5480
  */
5308
5481
  export interface LoadForecast {
5309
5482
  /**
5310
- * <p>The time stamps for the data points, in UTC format.</p>
5483
+ * <p>The timestamps for the data points, in UTC format.</p>
5311
5484
  */
5312
5485
  Timestamps: Date[] | undefined;
5313
5486
  /**
@@ -5416,9 +5589,8 @@ export interface PutLifecycleHookType {
5416
5589
  * is in the transition state for the lifecycle hook. This target can be either an SQS
5417
5590
  * queue or an SNS topic.</p>
5418
5591
  * <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>
5592
+ * <p>This operation uses the JSON format when sending notifications to an Amazon SQS queue, and
5593
+ * an email key-value pair format when sending notifications to an Amazon SNS topic.</p>
5422
5594
  * <p>When you specify a notification target, Amazon EC2 Auto Scaling sends it a test message. Test
5423
5595
  * messages contain the following additional key-value pair: <code>"Event":
5424
5596
  * "autoscaling:TEST_NOTIFICATION"</code>.</p>
@@ -5457,8 +5629,7 @@ export interface PutNotificationConfigurationType {
5457
5629
  */
5458
5630
  AutoScalingGroupName: string | undefined;
5459
5631
  /**
5460
- * <p>The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (Amazon SNS)
5461
- * topic.</p>
5632
+ * <p>The Amazon Resource Name (ARN) of the Amazon SNS topic.</p>
5462
5633
  */
5463
5634
  TopicARN: string | undefined;
5464
5635
  /**
@@ -5599,7 +5770,7 @@ export interface PutScalingPolicyType {
5599
5770
  */
5600
5771
  EstimatedInstanceWarmup?: number;
5601
5772
  /**
5602
- * <p>A target tracking scaling policy. Provides support for predefined or customized
5773
+ * <p>A target tracking scaling policy. Provides support for predefined or custom
5603
5774
  * metrics.</p>
5604
5775
  * <p>The following predefined metrics are available:</p>
5605
5776
  * <ul>
@@ -5640,9 +5811,10 @@ export interface PutScalingPolicyType {
5640
5811
  */
5641
5812
  Enabled?: boolean;
5642
5813
  /**
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>
5814
+ * <p>A predictive scaling policy. Provides support for predefined and custom
5815
+ * metrics.</p>
5816
+ * <p>Predefined metrics include CPU utilization, network in/out, and the Application Load
5817
+ * Balancer request count.</p>
5646
5818
  * <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
5819
  * Reference</i>.</p>
5648
5820
  * <p>Required if the policy type is <code>PredictiveScaling</code>.</p>
@@ -6060,7 +6232,7 @@ export interface UpdateAutoScalingGroupType {
6060
6232
  LaunchTemplate?: LaunchTemplateSpecification;
6061
6233
  /**
6062
6234
  * <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
6235
+ * <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-mixed-instances-groups.html">Auto Scaling groups with multiple
6064
6236
  * instance types and purchase options</a> in the <i>Amazon EC2 Auto Scaling User
6065
6237
  * Guide</i>.</p>
6066
6238
  */
@@ -6108,8 +6280,8 @@ export interface UpdateAutoScalingGroupType {
6108
6280
  HealthCheckType?: string;
6109
6281
  /**
6110
6282
  * <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
6283
+ * of an EC2 instance that has come into service and marking it unhealthy due to a failed
6284
+ * 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
6285
  * check grace period</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
6114
6286
  * <p>Conditional: Required if you are adding an <code>ELB</code> health check.</p>
6115
6287
  */
@@ -6137,7 +6309,8 @@ export interface UpdateAutoScalingGroupType {
6137
6309
  /**
6138
6310
  * <p>Indicates whether newly launched instances are protected from termination by Amazon EC2 Auto Scaling
6139
6311
  * 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
6312
+ * scale in, see <a href="https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-instance-protection.html">Using
6313
+ * instance scale-in protection</a> in the
6141
6314
  * <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
6142
6315
  */
6143
6316
  NewInstancesProtectedFromScaleIn?: boolean;
@@ -6157,8 +6330,8 @@ export interface UpdateAutoScalingGroupType {
6157
6330
  */
6158
6331
  MaxInstanceLifetime?: number;
6159
6332
  /**
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>
6333
+ * <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
6334
+ * Capacity Rebalancing</a> in the <i>Amazon EC2 Auto Scaling User Guide</i>.</p>
6162
6335
  */
6163
6336
  CapacityRebalance?: boolean;
6164
6337
  /**