@aws-sdk/client-compute-optimizer 3.721.0 → 3.726.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.
@@ -14,6 +14,7 @@ import { getRuntimeConfig as __getRuntimeConfig } from "./runtimeConfig";
14
14
  import { resolveRuntimeExtensions } from "./runtimeExtensions";
15
15
  export { __Client };
16
16
  export class ComputeOptimizerClient extends __Client {
17
+ config;
17
18
  constructor(...[configuration]) {
18
19
  const _config_0 = __getRuntimeConfig(configuration || {});
19
20
  const _config_1 = resolveClientEndpointParameters(_config_0);
@@ -1,13 +1,13 @@
1
1
  import { ComputeOptimizerServiceException as __BaseException } from "./ComputeOptimizerServiceException";
2
2
  export class AccessDeniedException extends __BaseException {
3
+ name = "AccessDeniedException";
4
+ $fault = "client";
3
5
  constructor(opts) {
4
6
  super({
5
7
  name: "AccessDeniedException",
6
8
  $fault: "client",
7
9
  ...opts,
8
10
  });
9
- this.name = "AccessDeniedException";
10
- this.$fault = "client";
11
11
  Object.setPrototypeOf(this, AccessDeniedException.prototype);
12
12
  }
13
13
  }
@@ -17,6 +17,14 @@ export const Status = {
17
17
  INACTIVE: "Inactive",
18
18
  PENDING: "Pending",
19
19
  };
20
+ export const AllocationStrategy = {
21
+ LOWEST_PRICE: "LowestPrice",
22
+ PRIORITIZED: "Prioritized",
23
+ };
24
+ export const AsgType = {
25
+ MIXED_INSTANCE_TYPE: "MixedInstanceTypes",
26
+ SINGLE_INSTANCE_TYPE: "SingleInstanceType",
27
+ };
20
28
  export const AutoScalingConfiguration = {
21
29
  TARGET_TRACKING_SCALING_CPU: "TargetTrackingScalingCpu",
22
30
  TARGET_TRACKING_SCALING_MEMORY: "TargetTrackingScalingMemory",
@@ -147,86 +155,86 @@ export const ScopeName = {
147
155
  RESOURCE_ARN: "ResourceArn",
148
156
  };
149
157
  export class InternalServerException extends __BaseException {
158
+ name = "InternalServerException";
159
+ $fault = "server";
150
160
  constructor(opts) {
151
161
  super({
152
162
  name: "InternalServerException",
153
163
  $fault: "server",
154
164
  ...opts,
155
165
  });
156
- this.name = "InternalServerException";
157
- this.$fault = "server";
158
166
  Object.setPrototypeOf(this, InternalServerException.prototype);
159
167
  }
160
168
  }
161
169
  export class InvalidParameterValueException extends __BaseException {
170
+ name = "InvalidParameterValueException";
171
+ $fault = "client";
162
172
  constructor(opts) {
163
173
  super({
164
174
  name: "InvalidParameterValueException",
165
175
  $fault: "client",
166
176
  ...opts,
167
177
  });
168
- this.name = "InvalidParameterValueException";
169
- this.$fault = "client";
170
178
  Object.setPrototypeOf(this, InvalidParameterValueException.prototype);
171
179
  }
172
180
  }
173
181
  export class MissingAuthenticationToken extends __BaseException {
182
+ name = "MissingAuthenticationToken";
183
+ $fault = "client";
174
184
  constructor(opts) {
175
185
  super({
176
186
  name: "MissingAuthenticationToken",
177
187
  $fault: "client",
178
188
  ...opts,
179
189
  });
180
- this.name = "MissingAuthenticationToken";
181
- this.$fault = "client";
182
190
  Object.setPrototypeOf(this, MissingAuthenticationToken.prototype);
183
191
  }
184
192
  }
185
193
  export class OptInRequiredException extends __BaseException {
194
+ name = "OptInRequiredException";
195
+ $fault = "client";
186
196
  constructor(opts) {
187
197
  super({
188
198
  name: "OptInRequiredException",
189
199
  $fault: "client",
190
200
  ...opts,
191
201
  });
192
- this.name = "OptInRequiredException";
193
- this.$fault = "client";
194
202
  Object.setPrototypeOf(this, OptInRequiredException.prototype);
195
203
  }
196
204
  }
197
205
  export class ResourceNotFoundException extends __BaseException {
206
+ name = "ResourceNotFoundException";
207
+ $fault = "client";
198
208
  constructor(opts) {
199
209
  super({
200
210
  name: "ResourceNotFoundException",
201
211
  $fault: "client",
202
212
  ...opts,
203
213
  });
204
- this.name = "ResourceNotFoundException";
205
- this.$fault = "client";
206
214
  Object.setPrototypeOf(this, ResourceNotFoundException.prototype);
207
215
  }
208
216
  }
209
217
  export class ServiceUnavailableException extends __BaseException {
218
+ name = "ServiceUnavailableException";
219
+ $fault = "server";
210
220
  constructor(opts) {
211
221
  super({
212
222
  name: "ServiceUnavailableException",
213
223
  $fault: "server",
214
224
  ...opts,
215
225
  });
216
- this.name = "ServiceUnavailableException";
217
- this.$fault = "server";
218
226
  Object.setPrototypeOf(this, ServiceUnavailableException.prototype);
219
227
  }
220
228
  }
221
229
  export class ThrottlingException extends __BaseException {
230
+ name = "ThrottlingException";
231
+ $fault = "client";
222
232
  constructor(opts) {
223
233
  super({
224
234
  name: "ThrottlingException",
225
235
  $fault: "client",
226
236
  ...opts,
227
237
  });
228
- this.name = "ThrottlingException";
229
- this.$fault = "client";
230
238
  Object.setPrototypeOf(this, ThrottlingException.prototype);
231
239
  }
232
240
  }
@@ -244,10 +252,13 @@ export const ExportableAutoScalingGroupField = {
244
252
  ACCOUNT_ID: "AccountId",
245
253
  AUTO_SCALING_GROUP_ARN: "AutoScalingGroupArn",
246
254
  AUTO_SCALING_GROUP_NAME: "AutoScalingGroupName",
255
+ CURRENT_CONFIGURATION_ALLOCATION_STRATEGY: "CurrentConfigurationAllocationStrategy",
247
256
  CURRENT_CONFIGURATION_DESIRED_CAPACITY: "CurrentConfigurationDesiredCapacity",
248
257
  CURRENT_CONFIGURATION_INSTANCE_TYPE: "CurrentConfigurationInstanceType",
249
258
  CURRENT_CONFIGURATION_MAX_SIZE: "CurrentConfigurationMaxSize",
250
259
  CURRENT_CONFIGURATION_MIN_SIZE: "CurrentConfigurationMinSize",
260
+ CURRENT_CONFIGURATION_MIXED_INSTANCE_TYPES: "CurrentConfigurationMixedInstanceTypes",
261
+ CURRENT_CONFIGURATION_TYPE: "CurrentConfigurationType",
251
262
  CURRENT_INSTANCE_GPU_INFO: "CurrentInstanceGpuInfo",
252
263
  CURRENT_MEMORY: "CurrentMemory",
253
264
  CURRENT_NETWORK: "CurrentNetwork",
@@ -267,10 +278,14 @@ export const ExportableAutoScalingGroupField = {
267
278
  INFERRED_WORKLOAD_TYPES: "InferredWorkloadTypes",
268
279
  LAST_REFRESH_TIMESTAMP: "LastRefreshTimestamp",
269
280
  LOOKBACK_PERIOD_IN_DAYS: "LookbackPeriodInDays",
281
+ RECOMMENDATION_OPTIONS_CONFIGURATION_ALLOCATION_STRATEGY: "RecommendationOptionsConfigurationAllocationStrategy",
270
282
  RECOMMENDATION_OPTIONS_CONFIGURATION_DESIRED_CAPACITY: "RecommendationOptionsConfigurationDesiredCapacity",
283
+ RECOMMENDATION_OPTIONS_CONFIGURATION_ESTIMATED_INSTANCE_HOUR_REDUCTION_PERCENTAGE: "RecommendationOptionsConfigurationEstimatedInstanceHourReductionPercentage",
271
284
  RECOMMENDATION_OPTIONS_CONFIGURATION_INSTANCE_TYPE: "RecommendationOptionsConfigurationInstanceType",
272
285
  RECOMMENDATION_OPTIONS_CONFIGURATION_MAX_SIZE: "RecommendationOptionsConfigurationMaxSize",
273
286
  RECOMMENDATION_OPTIONS_CONFIGURATION_MIN_SIZE: "RecommendationOptionsConfigurationMinSize",
287
+ RECOMMENDATION_OPTIONS_CONFIGURATION_MIXED_INSTANCE_TYPES: "RecommendationOptionsConfigurationMixedInstanceTypes",
288
+ RECOMMENDATION_OPTIONS_CONFIGURATION_TYPE: "RecommendationOptionsConfigurationType",
274
289
  RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY: "RecommendationOptionsEstimatedMonthlySavingsCurrency",
275
290
  RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY_AFTER_DISCOUNTS: "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts",
276
291
  RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE: "RecommendationOptionsEstimatedMonthlySavingsValue",
@@ -318,14 +333,14 @@ export const FilterName = {
318
333
  RECOMMENDATION_SOURCE_TYPE: "RecommendationSourceType",
319
334
  };
320
335
  export class LimitExceededException extends __BaseException {
336
+ name = "LimitExceededException";
337
+ $fault = "client";
321
338
  constructor(opts) {
322
339
  super({
323
340
  name: "LimitExceededException",
324
341
  $fault: "client",
325
342
  ...opts,
326
343
  });
327
- this.name = "LimitExceededException";
328
- this.$fault = "client";
329
344
  Object.setPrototypeOf(this, LimitExceededException.prototype);
330
345
  }
331
346
  }
@@ -704,6 +704,18 @@ const de_AccountEnrollmentStatuses = (output, context) => {
704
704
  });
705
705
  return retVal;
706
706
  };
707
+ const de_AutoScalingGroupConfiguration = (output, context) => {
708
+ return take(output, {
709
+ allocationStrategy: __expectString,
710
+ desiredCapacity: __expectInt32,
711
+ estimatedInstanceHourReductionPercentage: __limitedParseDouble,
712
+ instanceType: __expectString,
713
+ maxSize: __expectInt32,
714
+ minSize: __expectInt32,
715
+ mixedInstanceTypes: _json,
716
+ type: __expectString,
717
+ });
718
+ };
707
719
  const de_AutoScalingGroupEstimatedMonthlySavings = (output, context) => {
708
720
  return take(output, {
709
721
  currency: __expectString,
@@ -715,7 +727,7 @@ const de_AutoScalingGroupRecommendation = (output, context) => {
715
727
  accountId: __expectString,
716
728
  autoScalingGroupArn: __expectString,
717
729
  autoScalingGroupName: __expectString,
718
- currentConfiguration: _json,
730
+ currentConfiguration: (_) => de_AutoScalingGroupConfiguration(_, context),
719
731
  currentInstanceGpuInfo: _json,
720
732
  currentPerformanceRisk: __expectString,
721
733
  effectiveRecommendationPreferences: _json,
@@ -729,7 +741,7 @@ const de_AutoScalingGroupRecommendation = (output, context) => {
729
741
  };
730
742
  const de_AutoScalingGroupRecommendationOption = (output, context) => {
731
743
  return take(output, {
732
- configuration: _json,
744
+ configuration: (_) => de_AutoScalingGroupConfiguration(_, context),
733
745
  instanceGpuInfo: _json,
734
746
  migrationEffort: __expectString,
735
747
  performanceRisk: __limitedParseDouble,
@@ -52,7 +52,7 @@ declare const ExportAutoScalingGroupRecommendationsCommand_base: {
52
52
  * },
53
53
  * ],
54
54
  * fieldsToExport: [ // ExportableAutoScalingGroupFields
55
- * "AccountId" || "AutoScalingGroupArn" || "AutoScalingGroupName" || "Finding" || "UtilizationMetricsCpuMaximum" || "UtilizationMetricsMemoryMaximum" || "UtilizationMetricsEbsReadOpsPerSecondMaximum" || "UtilizationMetricsEbsWriteOpsPerSecondMaximum" || "UtilizationMetricsEbsReadBytesPerSecondMaximum" || "UtilizationMetricsEbsWriteBytesPerSecondMaximum" || "UtilizationMetricsDiskReadOpsPerSecondMaximum" || "UtilizationMetricsDiskWriteOpsPerSecondMaximum" || "UtilizationMetricsDiskReadBytesPerSecondMaximum" || "UtilizationMetricsDiskWriteBytesPerSecondMaximum" || "UtilizationMetricsNetworkInBytesPerSecondMaximum" || "UtilizationMetricsNetworkOutBytesPerSecondMaximum" || "UtilizationMetricsNetworkPacketsInPerSecondMaximum" || "UtilizationMetricsNetworkPacketsOutPerSecondMaximum" || "LookbackPeriodInDays" || "CurrentConfigurationInstanceType" || "CurrentConfigurationDesiredCapacity" || "CurrentConfigurationMinSize" || "CurrentConfigurationMaxSize" || "CurrentOnDemandPrice" || "CurrentStandardOneYearNoUpfrontReservedPrice" || "CurrentStandardThreeYearNoUpfrontReservedPrice" || "CurrentVCpus" || "CurrentMemory" || "CurrentStorage" || "CurrentNetwork" || "RecommendationOptionsConfigurationInstanceType" || "RecommendationOptionsConfigurationDesiredCapacity" || "RecommendationOptionsConfigurationMinSize" || "RecommendationOptionsConfigurationMaxSize" || "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum" || "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum" || "RecommendationOptionsPerformanceRisk" || "RecommendationOptionsOnDemandPrice" || "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice" || "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice" || "RecommendationOptionsVcpus" || "RecommendationOptionsMemory" || "RecommendationOptionsStorage" || "RecommendationOptionsNetwork" || "LastRefreshTimestamp" || "CurrentPerformanceRisk" || "RecommendationOptionsSavingsOpportunityPercentage" || "RecommendationOptionsEstimatedMonthlySavingsCurrency" || "RecommendationOptionsEstimatedMonthlySavingsValue" || "EffectiveRecommendationPreferencesCpuVendorArchitectures" || "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics" || "EffectiveRecommendationPreferencesInferredWorkloadTypes" || "EffectiveRecommendationPreferencesPreferredResources" || "EffectiveRecommendationPreferencesLookBackPeriod" || "InferredWorkloadTypes" || "RecommendationOptionsMigrationEffort" || "CurrentInstanceGpuInfo" || "RecommendationOptionsInstanceGpuInfo" || "UtilizationMetricsGpuPercentageMaximum" || "UtilizationMetricsGpuMemoryPercentageMaximum" || "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum" || "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum" || "EffectiveRecommendationPreferencesSavingsEstimationMode" || "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" || "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" || "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts",
55
+ * "AccountId" || "AutoScalingGroupArn" || "AutoScalingGroupName" || "Finding" || "UtilizationMetricsCpuMaximum" || "UtilizationMetricsMemoryMaximum" || "UtilizationMetricsEbsReadOpsPerSecondMaximum" || "UtilizationMetricsEbsWriteOpsPerSecondMaximum" || "UtilizationMetricsEbsReadBytesPerSecondMaximum" || "UtilizationMetricsEbsWriteBytesPerSecondMaximum" || "UtilizationMetricsDiskReadOpsPerSecondMaximum" || "UtilizationMetricsDiskWriteOpsPerSecondMaximum" || "UtilizationMetricsDiskReadBytesPerSecondMaximum" || "UtilizationMetricsDiskWriteBytesPerSecondMaximum" || "UtilizationMetricsNetworkInBytesPerSecondMaximum" || "UtilizationMetricsNetworkOutBytesPerSecondMaximum" || "UtilizationMetricsNetworkPacketsInPerSecondMaximum" || "UtilizationMetricsNetworkPacketsOutPerSecondMaximum" || "LookbackPeriodInDays" || "CurrentConfigurationInstanceType" || "CurrentConfigurationDesiredCapacity" || "CurrentConfigurationMinSize" || "CurrentConfigurationMaxSize" || "CurrentConfigurationAllocationStrategy" || "CurrentConfigurationMixedInstanceTypes" || "CurrentConfigurationType" || "CurrentOnDemandPrice" || "CurrentStandardOneYearNoUpfrontReservedPrice" || "CurrentStandardThreeYearNoUpfrontReservedPrice" || "CurrentVCpus" || "CurrentMemory" || "CurrentStorage" || "CurrentNetwork" || "RecommendationOptionsConfigurationInstanceType" || "RecommendationOptionsConfigurationDesiredCapacity" || "RecommendationOptionsConfigurationMinSize" || "RecommendationOptionsConfigurationMaxSize" || "RecommendationOptionsConfigurationEstimatedInstanceHourReductionPercentage" || "RecommendationOptionsConfigurationAllocationStrategy" || "RecommendationOptionsConfigurationMixedInstanceTypes" || "RecommendationOptionsConfigurationType" || "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum" || "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum" || "RecommendationOptionsPerformanceRisk" || "RecommendationOptionsOnDemandPrice" || "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice" || "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice" || "RecommendationOptionsVcpus" || "RecommendationOptionsMemory" || "RecommendationOptionsStorage" || "RecommendationOptionsNetwork" || "LastRefreshTimestamp" || "CurrentPerformanceRisk" || "RecommendationOptionsSavingsOpportunityPercentage" || "RecommendationOptionsEstimatedMonthlySavingsCurrency" || "RecommendationOptionsEstimatedMonthlySavingsValue" || "EffectiveRecommendationPreferencesCpuVendorArchitectures" || "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics" || "EffectiveRecommendationPreferencesInferredWorkloadTypes" || "EffectiveRecommendationPreferencesPreferredResources" || "EffectiveRecommendationPreferencesLookBackPeriod" || "InferredWorkloadTypes" || "RecommendationOptionsMigrationEffort" || "CurrentInstanceGpuInfo" || "RecommendationOptionsInstanceGpuInfo" || "UtilizationMetricsGpuPercentageMaximum" || "UtilizationMetricsGpuMemoryPercentageMaximum" || "RecommendationOptionsProjectedUtilizationMetricsGpuPercentageMaximum" || "RecommendationOptionsProjectedUtilizationMetricsGpuMemoryPercentageMaximum" || "EffectiveRecommendationPreferencesSavingsEstimationMode" || "RecommendationOptionsSavingsOpportunityAfterDiscountsPercentage" || "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts" || "RecommendationOptionsEstimatedMonthlySavingsValueAfterDiscounts",
56
56
  * ],
57
57
  * s3DestinationConfig: { // S3DestinationConfig
58
58
  * bucket: "STRING_VALUE",
@@ -84,6 +84,12 @@ declare const GetAutoScalingGroupRecommendationsCommand_base: {
84
84
  * // minSize: Number("int"),
85
85
  * // maxSize: Number("int"),
86
86
  * // instanceType: "STRING_VALUE",
87
+ * // allocationStrategy: "Prioritized" || "LowestPrice",
88
+ * // estimatedInstanceHourReductionPercentage: Number("double"),
89
+ * // type: "SingleInstanceType" || "MixedInstanceTypes",
90
+ * // mixedInstanceTypes: [ // MixedInstanceTypes
91
+ * // "STRING_VALUE",
92
+ * // ],
87
93
  * // },
88
94
  * // currentInstanceGpuInfo: { // GpuInfo
89
95
  * // gpus: [ // Gpus
@@ -100,6 +106,12 @@ declare const GetAutoScalingGroupRecommendationsCommand_base: {
100
106
  * // minSize: Number("int"),
101
107
  * // maxSize: Number("int"),
102
108
  * // instanceType: "STRING_VALUE",
109
+ * // allocationStrategy: "Prioritized" || "LowestPrice",
110
+ * // estimatedInstanceHourReductionPercentage: Number("double"),
111
+ * // type: "SingleInstanceType" || "MixedInstanceTypes",
112
+ * // mixedInstanceTypes: [
113
+ * // "STRING_VALUE",
114
+ * // ],
103
115
  * // },
104
116
  * // instanceGpuInfo: {
105
117
  * // gpus: [
@@ -55,6 +55,30 @@ export interface AccountEnrollmentStatus {
55
55
  */
56
56
  lastUpdatedTimestamp?: Date | undefined;
57
57
  }
58
+ /**
59
+ * @public
60
+ * @enum
61
+ */
62
+ export declare const AllocationStrategy: {
63
+ readonly LOWEST_PRICE: "LowestPrice";
64
+ readonly PRIORITIZED: "Prioritized";
65
+ };
66
+ /**
67
+ * @public
68
+ */
69
+ export type AllocationStrategy = (typeof AllocationStrategy)[keyof typeof AllocationStrategy];
70
+ /**
71
+ * @public
72
+ * @enum
73
+ */
74
+ export declare const AsgType: {
75
+ readonly MIXED_INSTANCE_TYPE: "MixedInstanceTypes";
76
+ readonly SINGLE_INSTANCE_TYPE: "SingleInstanceType";
77
+ };
78
+ /**
79
+ * @public
80
+ */
81
+ export type AsgType = (typeof AsgType)[keyof typeof AsgType];
58
82
  /**
59
83
  * @public
60
84
  * @enum
@@ -68,32 +92,60 @@ export declare const AutoScalingConfiguration: {
68
92
  */
69
93
  export type AutoScalingConfiguration = (typeof AutoScalingConfiguration)[keyof typeof AutoScalingConfiguration];
70
94
  /**
71
- * <p>Describes the configuration of an Auto Scaling group.</p>
95
+ * <p>Describes the configuration of an EC2 Auto Scaling group.</p>
72
96
  * @public
73
97
  */
74
98
  export interface AutoScalingGroupConfiguration {
75
99
  /**
76
- * <p>The desired capacity, or number of instances, for the Auto Scaling group.</p>
100
+ * <p>The desired capacity, or number of instances, for the EC2 Auto Scaling group.</p>
77
101
  * @public
78
102
  */
79
103
  desiredCapacity?: number | undefined;
80
104
  /**
81
- * <p>The minimum size, or minimum number of instances, for the Auto Scaling
105
+ * <p>The minimum size, or minimum number of instances, for the EC2 Auto Scaling
82
106
  * group.</p>
83
107
  * @public
84
108
  */
85
109
  minSize?: number | undefined;
86
110
  /**
87
- * <p>The maximum size, or maximum number of instances, for the Auto Scaling
111
+ * <p>The maximum size, or maximum number of instances, for the EC2 Auto Scaling
88
112
  * group.</p>
89
113
  * @public
90
114
  */
91
115
  maxSize?: number | undefined;
92
116
  /**
93
- * <p>The instance type for the Auto Scaling group.</p>
117
+ * <p>The instance type for the EC2 Auto Scaling group.</p>
94
118
  * @public
95
119
  */
96
120
  instanceType?: string | undefined;
121
+ /**
122
+ * <p>
123
+ * Describes the allocation strategy that the EC2 Auto Scaling group uses. This field is only available for EC2 Auto Scaling groups with mixed instance types.
124
+ * </p>
125
+ * @public
126
+ */
127
+ allocationStrategy?: AllocationStrategy | undefined;
128
+ /**
129
+ * <p>
130
+ * Describes the projected percentage reduction in instance hours after adopting the recommended configuration. This field is only available for EC2 Auto Scaling groups with scaling policies.
131
+ * </p>
132
+ * @public
133
+ */
134
+ estimatedInstanceHourReductionPercentage?: number | undefined;
135
+ /**
136
+ * <p>
137
+ * Describes whether the EC2 Auto Scaling group has a single instance type or a mixed instance type configuration.
138
+ * </p>
139
+ * @public
140
+ */
141
+ type?: AsgType | undefined;
142
+ /**
143
+ * <p>
144
+ * List the instance types within an EC2 Auto Scaling group that has mixed instance types.
145
+ * </p>
146
+ * @public
147
+ */
148
+ mixedInstanceTypes?: string[] | undefined;
97
149
  }
98
150
  /**
99
151
  * @public
@@ -1514,10 +1566,13 @@ export declare const ExportableAutoScalingGroupField: {
1514
1566
  readonly ACCOUNT_ID: "AccountId";
1515
1567
  readonly AUTO_SCALING_GROUP_ARN: "AutoScalingGroupArn";
1516
1568
  readonly AUTO_SCALING_GROUP_NAME: "AutoScalingGroupName";
1569
+ readonly CURRENT_CONFIGURATION_ALLOCATION_STRATEGY: "CurrentConfigurationAllocationStrategy";
1517
1570
  readonly CURRENT_CONFIGURATION_DESIRED_CAPACITY: "CurrentConfigurationDesiredCapacity";
1518
1571
  readonly CURRENT_CONFIGURATION_INSTANCE_TYPE: "CurrentConfigurationInstanceType";
1519
1572
  readonly CURRENT_CONFIGURATION_MAX_SIZE: "CurrentConfigurationMaxSize";
1520
1573
  readonly CURRENT_CONFIGURATION_MIN_SIZE: "CurrentConfigurationMinSize";
1574
+ readonly CURRENT_CONFIGURATION_MIXED_INSTANCE_TYPES: "CurrentConfigurationMixedInstanceTypes";
1575
+ readonly CURRENT_CONFIGURATION_TYPE: "CurrentConfigurationType";
1521
1576
  readonly CURRENT_INSTANCE_GPU_INFO: "CurrentInstanceGpuInfo";
1522
1577
  readonly CURRENT_MEMORY: "CurrentMemory";
1523
1578
  readonly CURRENT_NETWORK: "CurrentNetwork";
@@ -1537,10 +1592,14 @@ export declare const ExportableAutoScalingGroupField: {
1537
1592
  readonly INFERRED_WORKLOAD_TYPES: "InferredWorkloadTypes";
1538
1593
  readonly LAST_REFRESH_TIMESTAMP: "LastRefreshTimestamp";
1539
1594
  readonly LOOKBACK_PERIOD_IN_DAYS: "LookbackPeriodInDays";
1595
+ readonly RECOMMENDATION_OPTIONS_CONFIGURATION_ALLOCATION_STRATEGY: "RecommendationOptionsConfigurationAllocationStrategy";
1540
1596
  readonly RECOMMENDATION_OPTIONS_CONFIGURATION_DESIRED_CAPACITY: "RecommendationOptionsConfigurationDesiredCapacity";
1597
+ readonly RECOMMENDATION_OPTIONS_CONFIGURATION_ESTIMATED_INSTANCE_HOUR_REDUCTION_PERCENTAGE: "RecommendationOptionsConfigurationEstimatedInstanceHourReductionPercentage";
1541
1598
  readonly RECOMMENDATION_OPTIONS_CONFIGURATION_INSTANCE_TYPE: "RecommendationOptionsConfigurationInstanceType";
1542
1599
  readonly RECOMMENDATION_OPTIONS_CONFIGURATION_MAX_SIZE: "RecommendationOptionsConfigurationMaxSize";
1543
1600
  readonly RECOMMENDATION_OPTIONS_CONFIGURATION_MIN_SIZE: "RecommendationOptionsConfigurationMinSize";
1601
+ readonly RECOMMENDATION_OPTIONS_CONFIGURATION_MIXED_INSTANCE_TYPES: "RecommendationOptionsConfigurationMixedInstanceTypes";
1602
+ readonly RECOMMENDATION_OPTIONS_CONFIGURATION_TYPE: "RecommendationOptionsConfigurationType";
1544
1603
  readonly RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY: "RecommendationOptionsEstimatedMonthlySavingsCurrency";
1545
1604
  readonly RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY_AFTER_DISCOUNTS: "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts";
1546
1605
  readonly RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE: "RecommendationOptionsEstimatedMonthlySavingsValue";
@@ -7,7 +7,7 @@ export declare const getRuntimeConfig: (config: ComputeOptimizerClientConfig) =>
7
7
  runtime: string;
8
8
  defaultsMode: import("@smithy/types").Provider<import("@smithy/smithy-client").ResolvedDefaultsMode>;
9
9
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
10
- credentialDefaultProvider: (input: any) => import("@smithy/types").AwsCredentialIdentityProvider;
10
+ credentialDefaultProvider: ((input: any) => import("@smithy/types").AwsCredentialIdentityProvider) | ((_: unknown) => () => Promise<import("@smithy/types").AwsCredentialIdentity>);
11
11
  defaultUserAgentProvider: (config?: import("@aws-sdk/util-user-agent-browser").PreviouslyResolved | undefined) => Promise<import("@smithy/types").UserAgent>;
12
12
  maxAttempts: number | import("@smithy/types").Provider<number>;
13
13
  region: string | import("@smithy/types").Provider<any>;
@@ -7,7 +7,7 @@ export declare const getRuntimeConfig: (config: ComputeOptimizerClientConfig) =>
7
7
  runtime: string;
8
8
  defaultsMode: import("@smithy/types").Provider<import("@smithy/smithy-client").ResolvedDefaultsMode>;
9
9
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
10
- credentialDefaultProvider: (init?: import("@aws-sdk/credential-provider-node").DefaultProviderInit | undefined) => import("@smithy/types").MemoizedProvider<import("@smithy/types").AwsCredentialIdentity>;
10
+ credentialDefaultProvider: ((input: any) => import("@smithy/types").AwsCredentialIdentityProvider) | ((init?: import("@aws-sdk/credential-provider-node").DefaultProviderInit | undefined) => import("@smithy/types").MemoizedProvider<import("@smithy/types").AwsCredentialIdentity>);
11
11
  defaultUserAgentProvider: (config?: import("@aws-sdk/util-user-agent-node").PreviouslyResolved | undefined) => Promise<import("@smithy/types").UserAgent>;
12
12
  maxAttempts: number | import("@smithy/types").Provider<number>;
13
13
  region: string | import("@smithy/types").Provider<string>;
@@ -22,7 +22,7 @@ export declare const getRuntimeConfig: (config: ComputeOptimizerClientConfig) =>
22
22
  region: string | import("@smithy/types").Provider<any>;
23
23
  profile?: string | undefined;
24
24
  defaultUserAgentProvider: (config?: import("@aws-sdk/util-user-agent-browser").PreviouslyResolved | undefined) => Promise<import("@smithy/types").UserAgent>;
25
- credentialDefaultProvider: (input: any) => import("@smithy/types").AwsCredentialIdentityProvider;
25
+ credentialDefaultProvider: ((input: any) => import("@smithy/types").AwsCredentialIdentityProvider) | ((_: unknown) => () => Promise<import("@smithy/types").AwsCredentialIdentity>);
26
26
  maxAttempts: number | import("@smithy/types").Provider<number>;
27
27
  retryMode: string | import("@smithy/types").Provider<string>;
28
28
  logger: import("@smithy/types").Logger;
@@ -31,7 +31,7 @@ export declare const getRuntimeConfig: (config: ComputeOptimizerClientConfig) =>
31
31
  customUserAgent?: string | import("@smithy/types").UserAgent | undefined;
32
32
  userAgentAppId?: string | import("@smithy/types").Provider<string | undefined> | undefined;
33
33
  retryStrategy?: import("@smithy/types").RetryStrategy | import("@smithy/types").RetryStrategyV2 | undefined;
34
- endpoint?: string | import("@smithy/types").Endpoint | import("@smithy/types").Provider<import("@smithy/types").Endpoint> | import("@smithy/types").EndpointV2 | import("@smithy/types").Provider<import("@smithy/types").EndpointV2> | undefined;
34
+ endpoint?: ((string | import("@smithy/types").Endpoint | import("@smithy/types").Provider<import("@smithy/types").Endpoint> | import("@smithy/types").EndpointV2 | import("@smithy/types").Provider<import("@smithy/types").EndpointV2>) & (string | import("@smithy/types").Provider<string> | import("@smithy/types").Endpoint | import("@smithy/types").Provider<import("@smithy/types").Endpoint> | import("@smithy/types").EndpointV2 | import("@smithy/types").Provider<import("@smithy/types").EndpointV2>)) | undefined;
35
35
  endpointProvider: (endpointParams: import("./endpoint/EndpointParameters").EndpointParameters, context?: {
36
36
  logger?: import("@smithy/types").Logger | undefined;
37
37
  }) => import("@smithy/types").EndpointV2;
@@ -20,6 +20,17 @@ export interface AccountEnrollmentStatus {
20
20
  statusReason?: string | undefined;
21
21
  lastUpdatedTimestamp?: Date | undefined;
22
22
  }
23
+ export declare const AllocationStrategy: {
24
+ readonly LOWEST_PRICE: "LowestPrice";
25
+ readonly PRIORITIZED: "Prioritized";
26
+ };
27
+ export type AllocationStrategy =
28
+ (typeof AllocationStrategy)[keyof typeof AllocationStrategy];
29
+ export declare const AsgType: {
30
+ readonly MIXED_INSTANCE_TYPE: "MixedInstanceTypes";
31
+ readonly SINGLE_INSTANCE_TYPE: "SingleInstanceType";
32
+ };
33
+ export type AsgType = (typeof AsgType)[keyof typeof AsgType];
23
34
  export declare const AutoScalingConfiguration: {
24
35
  readonly TARGET_TRACKING_SCALING_CPU: "TargetTrackingScalingCpu";
25
36
  readonly TARGET_TRACKING_SCALING_MEMORY: "TargetTrackingScalingMemory";
@@ -31,6 +42,10 @@ export interface AutoScalingGroupConfiguration {
31
42
  minSize?: number | undefined;
32
43
  maxSize?: number | undefined;
33
44
  instanceType?: string | undefined;
45
+ allocationStrategy?: AllocationStrategy | undefined;
46
+ estimatedInstanceHourReductionPercentage?: number | undefined;
47
+ type?: AsgType | undefined;
48
+ mixedInstanceTypes?: string[] | undefined;
34
49
  }
35
50
  export declare const Currency: {
36
51
  readonly CNY: "CNY";
@@ -385,10 +400,13 @@ export declare const ExportableAutoScalingGroupField: {
385
400
  readonly ACCOUNT_ID: "AccountId";
386
401
  readonly AUTO_SCALING_GROUP_ARN: "AutoScalingGroupArn";
387
402
  readonly AUTO_SCALING_GROUP_NAME: "AutoScalingGroupName";
403
+ readonly CURRENT_CONFIGURATION_ALLOCATION_STRATEGY: "CurrentConfigurationAllocationStrategy";
388
404
  readonly CURRENT_CONFIGURATION_DESIRED_CAPACITY: "CurrentConfigurationDesiredCapacity";
389
405
  readonly CURRENT_CONFIGURATION_INSTANCE_TYPE: "CurrentConfigurationInstanceType";
390
406
  readonly CURRENT_CONFIGURATION_MAX_SIZE: "CurrentConfigurationMaxSize";
391
407
  readonly CURRENT_CONFIGURATION_MIN_SIZE: "CurrentConfigurationMinSize";
408
+ readonly CURRENT_CONFIGURATION_MIXED_INSTANCE_TYPES: "CurrentConfigurationMixedInstanceTypes";
409
+ readonly CURRENT_CONFIGURATION_TYPE: "CurrentConfigurationType";
392
410
  readonly CURRENT_INSTANCE_GPU_INFO: "CurrentInstanceGpuInfo";
393
411
  readonly CURRENT_MEMORY: "CurrentMemory";
394
412
  readonly CURRENT_NETWORK: "CurrentNetwork";
@@ -408,10 +426,14 @@ export declare const ExportableAutoScalingGroupField: {
408
426
  readonly INFERRED_WORKLOAD_TYPES: "InferredWorkloadTypes";
409
427
  readonly LAST_REFRESH_TIMESTAMP: "LastRefreshTimestamp";
410
428
  readonly LOOKBACK_PERIOD_IN_DAYS: "LookbackPeriodInDays";
429
+ readonly RECOMMENDATION_OPTIONS_CONFIGURATION_ALLOCATION_STRATEGY: "RecommendationOptionsConfigurationAllocationStrategy";
411
430
  readonly RECOMMENDATION_OPTIONS_CONFIGURATION_DESIRED_CAPACITY: "RecommendationOptionsConfigurationDesiredCapacity";
431
+ readonly RECOMMENDATION_OPTIONS_CONFIGURATION_ESTIMATED_INSTANCE_HOUR_REDUCTION_PERCENTAGE: "RecommendationOptionsConfigurationEstimatedInstanceHourReductionPercentage";
412
432
  readonly RECOMMENDATION_OPTIONS_CONFIGURATION_INSTANCE_TYPE: "RecommendationOptionsConfigurationInstanceType";
413
433
  readonly RECOMMENDATION_OPTIONS_CONFIGURATION_MAX_SIZE: "RecommendationOptionsConfigurationMaxSize";
414
434
  readonly RECOMMENDATION_OPTIONS_CONFIGURATION_MIN_SIZE: "RecommendationOptionsConfigurationMinSize";
435
+ readonly RECOMMENDATION_OPTIONS_CONFIGURATION_MIXED_INSTANCE_TYPES: "RecommendationOptionsConfigurationMixedInstanceTypes";
436
+ readonly RECOMMENDATION_OPTIONS_CONFIGURATION_TYPE: "RecommendationOptionsConfigurationType";
415
437
  readonly RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY: "RecommendationOptionsEstimatedMonthlySavingsCurrency";
416
438
  readonly RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY_AFTER_DISCOUNTS: "RecommendationOptionsEstimatedMonthlySavingsCurrencyAfterDiscounts";
417
439
  readonly RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE: "RecommendationOptionsEstimatedMonthlySavingsValue";
@@ -8,9 +8,11 @@ export declare const getRuntimeConfig: (
8
8
  import("@smithy/smithy-client").ResolvedDefaultsMode
9
9
  >;
10
10
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
11
- credentialDefaultProvider: (
12
- input: any
13
- ) => import("@smithy/types").AwsCredentialIdentityProvider;
11
+ credentialDefaultProvider:
12
+ | ((input: any) => import("@smithy/types").AwsCredentialIdentityProvider)
13
+ | ((
14
+ _: unknown
15
+ ) => () => Promise<import("@smithy/types").AwsCredentialIdentity>);
14
16
  defaultUserAgentProvider: (
15
17
  config?:
16
18
  | import("@aws-sdk/util-user-agent-browser").PreviouslyResolved
@@ -8,13 +8,15 @@ export declare const getRuntimeConfig: (
8
8
  import("@smithy/smithy-client").ResolvedDefaultsMode
9
9
  >;
10
10
  bodyLengthChecker: import("@smithy/types").BodyLengthCalculator;
11
- credentialDefaultProvider: (
12
- init?:
13
- | import("@aws-sdk/credential-provider-node").DefaultProviderInit
14
- | undefined
15
- ) => import("@smithy/types").MemoizedProvider<
16
- import("@smithy/types").AwsCredentialIdentity
17
- >;
11
+ credentialDefaultProvider:
12
+ | ((input: any) => import("@smithy/types").AwsCredentialIdentityProvider)
13
+ | ((
14
+ init?:
15
+ | import("@aws-sdk/credential-provider-node").DefaultProviderInit
16
+ | undefined
17
+ ) => import("@smithy/types").MemoizedProvider<
18
+ import("@smithy/types").AwsCredentialIdentity
19
+ >);
18
20
  defaultUserAgentProvider: (
19
21
  config?:
20
22
  | import("@aws-sdk/util-user-agent-node").PreviouslyResolved
@@ -30,9 +30,11 @@ export declare const getRuntimeConfig: (
30
30
  | import("@aws-sdk/util-user-agent-browser").PreviouslyResolved
31
31
  | undefined
32
32
  ) => Promise<import("@smithy/types").UserAgent>;
33
- credentialDefaultProvider: (
34
- input: any
35
- ) => import("@smithy/types").AwsCredentialIdentityProvider;
33
+ credentialDefaultProvider:
34
+ | ((input: any) => import("@smithy/types").AwsCredentialIdentityProvider)
35
+ | ((
36
+ _: unknown
37
+ ) => () => Promise<import("@smithy/types").AwsCredentialIdentity>);
36
38
  maxAttempts: number | import("@smithy/types").Provider<number>;
37
39
  retryMode: string | import("@smithy/types").Provider<string>;
38
40
  logger: import("@smithy/types").Logger;
@@ -52,11 +54,21 @@ export declare const getRuntimeConfig: (
52
54
  | import("@smithy/types").RetryStrategyV2
53
55
  | undefined;
54
56
  endpoint?:
55
- | string
56
- | import("@smithy/types").Endpoint
57
- | import("@smithy/types").Provider<import("@smithy/types").Endpoint>
58
- | import("@smithy/types").EndpointV2
59
- | import("@smithy/types").Provider<import("@smithy/types").EndpointV2>
57
+ | ((
58
+ | string
59
+ | import("@smithy/types").Endpoint
60
+ | import("@smithy/types").Provider<import("@smithy/types").Endpoint>
61
+ | import("@smithy/types").EndpointV2
62
+ | import("@smithy/types").Provider<import("@smithy/types").EndpointV2>
63
+ ) &
64
+ (
65
+ | string
66
+ | import("@smithy/types").Provider<string>
67
+ | import("@smithy/types").Endpoint
68
+ | import("@smithy/types").Provider<import("@smithy/types").Endpoint>
69
+ | import("@smithy/types").EndpointV2
70
+ | import("@smithy/types").Provider<import("@smithy/types").EndpointV2>
71
+ ))
60
72
  | undefined;
61
73
  endpointProvider: (
62
74
  endpointParams: import("./endpoint/EndpointParameters").EndpointParameters,