@aws-sdk/client-compute-optimizer 3.42.0 → 3.46.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 (55) hide show
  1. package/CHANGELOG.md +47 -0
  2. package/README.md +7 -10
  3. package/dist-cjs/ComputeOptimizer.js +60 -0
  4. package/dist-cjs/commands/DeleteRecommendationPreferencesCommand.js +36 -0
  5. package/dist-cjs/commands/GetEffectiveRecommendationPreferencesCommand.js +36 -0
  6. package/dist-cjs/commands/GetRecommendationPreferencesCommand.js +36 -0
  7. package/dist-cjs/commands/PutRecommendationPreferencesCommand.js +36 -0
  8. package/dist-cjs/commands/index.js +4 -0
  9. package/dist-cjs/endpoints.js +1 -0
  10. package/dist-cjs/models/models_0.js +183 -51
  11. package/dist-cjs/protocols/Aws_json1_0.js +617 -1
  12. package/dist-cjs/runtimeConfig.js +0 -2
  13. package/dist-es/ComputeOptimizer.js +60 -0
  14. package/dist-es/commands/DeleteRecommendationPreferencesCommand.js +39 -0
  15. package/dist-es/commands/GetEffectiveRecommendationPreferencesCommand.js +39 -0
  16. package/dist-es/commands/GetRecommendationPreferencesCommand.js +39 -0
  17. package/dist-es/commands/PutRecommendationPreferencesCommand.js +39 -0
  18. package/dist-es/commands/index.js +4 -0
  19. package/dist-es/endpoints.js +1 -0
  20. package/dist-es/models/models_0.js +143 -40
  21. package/dist-es/protocols/Aws_json1_0.js +646 -8
  22. package/dist-es/runtimeConfig.js +0 -2
  23. package/dist-types/ComputeOptimizer.d.ts +50 -27
  24. package/dist-types/ComputeOptimizerClient.d.ts +6 -2
  25. package/dist-types/commands/DeleteRecommendationPreferencesCommand.d.ts +38 -0
  26. package/dist-types/commands/DescribeRecommendationExportJobsCommand.d.ts +0 -1
  27. package/dist-types/commands/ExportAutoScalingGroupRecommendationsCommand.d.ts +0 -2
  28. package/dist-types/commands/ExportEBSVolumeRecommendationsCommand.d.ts +1 -4
  29. package/dist-types/commands/ExportEC2InstanceRecommendationsCommand.d.ts +1 -4
  30. package/dist-types/commands/ExportLambdaFunctionRecommendationsCommand.d.ts +1 -4
  31. package/dist-types/commands/GetAutoScalingGroupRecommendationsCommand.d.ts +0 -1
  32. package/dist-types/commands/GetEBSVolumeRecommendationsCommand.d.ts +0 -1
  33. package/dist-types/commands/GetEC2InstanceRecommendationsCommand.d.ts +0 -1
  34. package/dist-types/commands/GetEC2RecommendationProjectedMetricsCommand.d.ts +0 -1
  35. package/dist-types/commands/GetEffectiveRecommendationPreferencesCommand.d.ts +40 -0
  36. package/dist-types/commands/GetEnrollmentStatusCommand.d.ts +0 -1
  37. package/dist-types/commands/GetEnrollmentStatusesForOrganizationCommand.d.ts +0 -1
  38. package/dist-types/commands/GetLambdaFunctionRecommendationsCommand.d.ts +0 -1
  39. package/dist-types/commands/GetRecommendationPreferencesCommand.d.ts +42 -0
  40. package/dist-types/commands/GetRecommendationSummariesCommand.d.ts +0 -2
  41. package/dist-types/commands/PutRecommendationPreferencesCommand.d.ts +39 -0
  42. package/dist-types/commands/UpdateEnrollmentStatusCommand.d.ts +0 -3
  43. package/dist-types/commands/index.d.ts +4 -0
  44. package/dist-types/models/models_0.d.ts +646 -282
  45. package/dist-types/protocols/Aws_json1_0.d.ts +12 -0
  46. package/dist-types/ts3.4/ComputeOptimizer.d.ts +20 -0
  47. package/dist-types/ts3.4/ComputeOptimizerClient.d.ts +6 -2
  48. package/dist-types/ts3.4/commands/DeleteRecommendationPreferencesCommand.d.ts +17 -0
  49. package/dist-types/ts3.4/commands/GetEffectiveRecommendationPreferencesCommand.d.ts +17 -0
  50. package/dist-types/ts3.4/commands/GetRecommendationPreferencesCommand.d.ts +17 -0
  51. package/dist-types/ts3.4/commands/PutRecommendationPreferencesCommand.d.ts +17 -0
  52. package/dist-types/ts3.4/commands/index.d.ts +4 -0
  53. package/dist-types/ts3.4/models/models_0.d.ts +291 -77
  54. package/dist-types/ts3.4/protocols/Aws_json1_0.d.ts +12 -0
  55. package/package.json +36 -43
@@ -45,6 +45,31 @@ export declare namespace AutoScalingGroupConfiguration {
45
45
 
46
46
  const filterSensitiveLog: (obj: AutoScalingGroupConfiguration) => any;
47
47
  }
48
+ export declare enum CurrentPerformanceRisk {
49
+ HIGH = "High",
50
+ LOW = "Low",
51
+ MEDIUM = "Medium",
52
+ VERY_LOW = "VeryLow"
53
+ }
54
+ export declare enum CpuVendorArchitecture {
55
+ AWS_ARM64 = "AWS_ARM64",
56
+ CURRENT = "CURRENT"
57
+ }
58
+ export declare enum EnhancedInfrastructureMetrics {
59
+ ACTIVE = "Active",
60
+ INACTIVE = "Inactive"
61
+ }
62
+
63
+ export interface EffectiveRecommendationPreferences {
64
+
65
+ cpuVendorArchitectures?: (CpuVendorArchitecture | string)[];
66
+
67
+ enhancedInfrastructureMetrics?: EnhancedInfrastructureMetrics | string;
68
+ }
69
+ export declare namespace EffectiveRecommendationPreferences {
70
+
71
+ const filterSensitiveLog: (obj: EffectiveRecommendationPreferences) => any;
72
+ }
48
73
  export declare enum Finding {
49
74
  NOT_OPTIMIZED = "NotOptimized",
50
75
  OPTIMIZED = "Optimized",
@@ -84,6 +109,32 @@ export declare namespace UtilizationMetric {
84
109
 
85
110
  const filterSensitiveLog: (obj: UtilizationMetric) => any;
86
111
  }
112
+ export declare enum Currency {
113
+ CNY = "CNY",
114
+ USD = "USD"
115
+ }
116
+
117
+ export interface EstimatedMonthlySavings {
118
+
119
+ currency?: Currency | string;
120
+
121
+ value?: number;
122
+ }
123
+ export declare namespace EstimatedMonthlySavings {
124
+
125
+ const filterSensitiveLog: (obj: EstimatedMonthlySavings) => any;
126
+ }
127
+
128
+ export interface SavingsOpportunity {
129
+
130
+ savingsOpportunityPercentage?: number;
131
+
132
+ estimatedMonthlySavings?: EstimatedMonthlySavings;
133
+ }
134
+ export declare namespace SavingsOpportunity {
135
+
136
+ const filterSensitiveLog: (obj: SavingsOpportunity) => any;
137
+ }
87
138
 
88
139
  export interface AutoScalingGroupRecommendationOption {
89
140
 
@@ -94,6 +145,8 @@ export interface AutoScalingGroupRecommendationOption {
94
145
  performanceRisk?: number;
95
146
 
96
147
  rank?: number;
148
+
149
+ savingsOpportunity?: SavingsOpportunity;
97
150
  }
98
151
  export declare namespace AutoScalingGroupRecommendationOption {
99
152
 
@@ -119,61 +172,17 @@ export interface AutoScalingGroupRecommendation {
119
172
  recommendationOptions?: AutoScalingGroupRecommendationOption[];
120
173
 
121
174
  lastRefreshTimestamp?: Date;
122
- }
123
- export declare namespace AutoScalingGroupRecommendation {
124
-
125
- const filterSensitiveLog: (obj: AutoScalingGroupRecommendation) => any;
126
- }
127
- export declare enum JobFilterName {
128
- JOB_STATUS = "JobStatus",
129
- RESOURCE_TYPE = "ResourceType"
130
- }
131
-
132
- export interface JobFilter {
133
-
134
- name?: JobFilterName | string;
135
-
136
- values?: string[];
137
- }
138
- export declare namespace JobFilter {
139
-
140
- const filterSensitiveLog: (obj: JobFilter) => any;
141
- }
142
- export interface DescribeRecommendationExportJobsRequest {
143
-
144
- jobIds?: string[];
145
-
146
- filters?: JobFilter[];
147
-
148
- nextToken?: string;
149
-
150
- maxResults?: number;
151
- }
152
- export declare namespace DescribeRecommendationExportJobsRequest {
153
-
154
- const filterSensitiveLog: (obj: DescribeRecommendationExportJobsRequest) => any;
155
- }
156
-
157
- export interface S3Destination {
158
-
159
- bucket?: string;
160
-
161
- key?: string;
162
175
 
163
- metadataKey?: string;
164
- }
165
- export declare namespace S3Destination {
176
+ currentPerformanceRisk?: CurrentPerformanceRisk | string;
166
177
 
167
- const filterSensitiveLog: (obj: S3Destination) => any;
178
+ effectiveRecommendationPreferences?: EffectiveRecommendationPreferences;
168
179
  }
169
-
170
- export interface ExportDestination {
180
+ export declare namespace AutoScalingGroupRecommendation {
171
181
 
172
- s3?: S3Destination;
182
+ const filterSensitiveLog: (obj: AutoScalingGroupRecommendation) => any;
173
183
  }
174
- export declare namespace ExportDestination {
175
-
176
- const filterSensitiveLog: (obj: ExportDestination) => any;
184
+ export declare enum RecommendationPreferenceName {
185
+ ENHANCED_INFRASTRUCTURE_METRICS = "EnhancedInfrastructureMetrics"
177
186
  }
178
187
  export declare enum ResourceType {
179
188
  AUTO_SCALING_GROUP = "AutoScalingGroup",
@@ -181,42 +190,39 @@ export declare enum ResourceType {
181
190
  EC2_INSTANCE = "Ec2Instance",
182
191
  LAMBDA_FUNCTION = "LambdaFunction"
183
192
  }
184
- export declare enum JobStatus {
185
- COMPLETE = "Complete",
186
- FAILED = "Failed",
187
- IN_PROGRESS = "InProgress",
188
- QUEUED = "Queued"
193
+ export declare enum ScopeName {
194
+ ACCOUNT_ID = "AccountId",
195
+ ORGANIZATION = "Organization",
196
+ RESOURCE_ARN = "ResourceArn"
189
197
  }
190
198
 
191
- export interface RecommendationExportJob {
199
+ export interface Scope {
192
200
 
193
- jobId?: string;
194
-
195
- destination?: ExportDestination;
201
+ name?: ScopeName | string;
196
202
 
197
- resourceType?: ResourceType | string;
203
+ value?: string;
204
+ }
205
+ export declare namespace Scope {
198
206
 
199
- status?: JobStatus | string;
207
+ const filterSensitiveLog: (obj: Scope) => any;
208
+ }
209
+ export interface DeleteRecommendationPreferencesRequest {
200
210
 
201
- creationTimestamp?: Date;
211
+ resourceType: ResourceType | string | undefined;
202
212
 
203
- lastUpdatedTimestamp?: Date;
213
+ scope?: Scope;
204
214
 
205
- failureReason?: string;
215
+ recommendationPreferenceNames: (RecommendationPreferenceName | string)[] | undefined;
206
216
  }
207
- export declare namespace RecommendationExportJob {
217
+ export declare namespace DeleteRecommendationPreferencesRequest {
208
218
 
209
- const filterSensitiveLog: (obj: RecommendationExportJob) => any;
219
+ const filterSensitiveLog: (obj: DeleteRecommendationPreferencesRequest) => any;
210
220
  }
211
- export interface DescribeRecommendationExportJobsResponse {
212
-
213
- recommendationExportJobs?: RecommendationExportJob[];
214
-
215
- nextToken?: string;
221
+ export interface DeleteRecommendationPreferencesResponse {
216
222
  }
217
- export declare namespace DescribeRecommendationExportJobsResponse {
223
+ export declare namespace DeleteRecommendationPreferencesResponse {
218
224
 
219
- const filterSensitiveLog: (obj: DescribeRecommendationExportJobsResponse) => any;
225
+ const filterSensitiveLog: (obj: DeleteRecommendationPreferencesResponse) => any;
220
226
  }
221
227
 
222
228
  export interface InternalServerException extends __SmithyException, $MetadataBearer {
@@ -288,6 +294,94 @@ export declare namespace ThrottlingException {
288
294
 
289
295
  const filterSensitiveLog: (obj: ThrottlingException) => any;
290
296
  }
297
+ export declare enum JobFilterName {
298
+ JOB_STATUS = "JobStatus",
299
+ RESOURCE_TYPE = "ResourceType"
300
+ }
301
+
302
+ export interface JobFilter {
303
+
304
+ name?: JobFilterName | string;
305
+
306
+ values?: string[];
307
+ }
308
+ export declare namespace JobFilter {
309
+
310
+ const filterSensitiveLog: (obj: JobFilter) => any;
311
+ }
312
+ export interface DescribeRecommendationExportJobsRequest {
313
+
314
+ jobIds?: string[];
315
+
316
+ filters?: JobFilter[];
317
+
318
+ nextToken?: string;
319
+
320
+ maxResults?: number;
321
+ }
322
+ export declare namespace DescribeRecommendationExportJobsRequest {
323
+
324
+ const filterSensitiveLog: (obj: DescribeRecommendationExportJobsRequest) => any;
325
+ }
326
+
327
+ export interface S3Destination {
328
+
329
+ bucket?: string;
330
+
331
+ key?: string;
332
+
333
+ metadataKey?: string;
334
+ }
335
+ export declare namespace S3Destination {
336
+
337
+ const filterSensitiveLog: (obj: S3Destination) => any;
338
+ }
339
+
340
+ export interface ExportDestination {
341
+
342
+ s3?: S3Destination;
343
+ }
344
+ export declare namespace ExportDestination {
345
+
346
+ const filterSensitiveLog: (obj: ExportDestination) => any;
347
+ }
348
+ export declare enum JobStatus {
349
+ COMPLETE = "Complete",
350
+ FAILED = "Failed",
351
+ IN_PROGRESS = "InProgress",
352
+ QUEUED = "Queued"
353
+ }
354
+
355
+ export interface RecommendationExportJob {
356
+
357
+ jobId?: string;
358
+
359
+ destination?: ExportDestination;
360
+
361
+ resourceType?: ResourceType | string;
362
+
363
+ status?: JobStatus | string;
364
+
365
+ creationTimestamp?: Date;
366
+
367
+ lastUpdatedTimestamp?: Date;
368
+
369
+ failureReason?: string;
370
+ }
371
+ export declare namespace RecommendationExportJob {
372
+
373
+ const filterSensitiveLog: (obj: RecommendationExportJob) => any;
374
+ }
375
+ export interface DescribeRecommendationExportJobsResponse {
376
+
377
+ recommendationExportJobs?: RecommendationExportJob[];
378
+
379
+ nextToken?: string;
380
+ }
381
+ export declare namespace DescribeRecommendationExportJobsResponse {
382
+
383
+ const filterSensitiveLog: (obj: DescribeRecommendationExportJobsResponse) => any;
384
+ }
291
385
  export declare enum ExportableAutoScalingGroupField {
292
386
  ACCOUNT_ID = "AccountId",
293
387
  AUTO_SCALING_GROUP_ARN = "AutoScalingGroupArn",
@@ -299,10 +393,13 @@ export declare enum ExportableAutoScalingGroupField {
299
393
  CURRENT_MEMORY = "CurrentMemory",
300
394
  CURRENT_NETWORK = "CurrentNetwork",
301
395
  CURRENT_ON_DEMAND_PRICE = "CurrentOnDemandPrice",
396
+ CURRENT_PERFORMANCE_RISK = "CurrentPerformanceRisk",
302
397
  CURRENT_STANDARD_ONE_YEAR_NO_UPFRONT_RESERVED_PRICE = "CurrentStandardOneYearNoUpfrontReservedPrice",
303
398
  CURRENT_STANDARD_THREE_YEAR_NO_UPFRONT_RESERVED_PRICE = "CurrentStandardThreeYearNoUpfrontReservedPrice",
304
399
  CURRENT_STORAGE = "CurrentStorage",
305
400
  CURRENT_VCPUS = "CurrentVCpus",
401
+ EFFECTIVE_RECOMMENDATION_PREFERENCES_CPU_VENDOR_ARCHITECTURES = "EffectiveRecommendationPreferencesCpuVendorArchitectures",
402
+ EFFECTIVE_RECOMMENDATION_PREFERENCES_ENHANCED_INFRASTRUCTURE_METRICS = "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics",
306
403
  FINDING = "Finding",
307
404
  LAST_REFRESH_TIMESTAMP = "LastRefreshTimestamp",
308
405
  LOOKBACK_PERIOD_IN_DAYS = "LookbackPeriodInDays",
@@ -310,12 +407,15 @@ export declare enum ExportableAutoScalingGroupField {
310
407
  RECOMMENDATION_OPTIONS_CONFIGURATION_INSTANCE_TYPE = "RecommendationOptionsConfigurationInstanceType",
311
408
  RECOMMENDATION_OPTIONS_CONFIGURATION_MAX_SIZE = "RecommendationOptionsConfigurationMaxSize",
312
409
  RECOMMENDATION_OPTIONS_CONFIGURATION_MIN_SIZE = "RecommendationOptionsConfigurationMinSize",
410
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY = "RecommendationOptionsEstimatedMonthlySavingsCurrency",
411
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE = "RecommendationOptionsEstimatedMonthlySavingsValue",
313
412
  RECOMMENDATION_OPTIONS_MEMORY = "RecommendationOptionsMemory",
314
413
  RECOMMENDATION_OPTIONS_NETWORK = "RecommendationOptionsNetwork",
315
414
  RECOMMENDATION_OPTIONS_ON_DEMAND_PRICE = "RecommendationOptionsOnDemandPrice",
316
415
  RECOMMENDATION_OPTIONS_PERFORMANCE_RISK = "RecommendationOptionsPerformanceRisk",
317
416
  RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_CPU_MAXIMUM = "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum",
318
417
  RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_MEMORY_MAXIMUM = "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum",
418
+ RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_PERCENTAGE = "RecommendationOptionsSavingsOpportunityPercentage",
319
419
  RECOMMENDATION_OPTIONS_STANDARD_ONE_YEAR_NO_UPFRONT_RESERVED_PRICE = "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice",
320
420
  RECOMMENDATION_OPTIONS_STANDARD_THREE_YEAR_NO_UPFRONT_RESERVED_PRICE = "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice",
321
421
  RECOMMENDATION_OPTIONS_STORAGE = "RecommendationOptionsStorage",
@@ -354,10 +454,6 @@ export declare namespace Filter {
354
454
 
355
455
  const filterSensitiveLog: (obj: Filter) => any;
356
456
  }
357
- export declare enum CpuVendorArchitecture {
358
- AWS_ARM64 = "AWS_ARM64",
359
- CURRENT = "CURRENT"
360
- }
361
457
 
362
458
  export interface RecommendationPreferences {
363
459
 
@@ -427,6 +523,7 @@ export declare enum ExportableVolumeField {
427
523
  CURRENT_CONFIGURATION_VOLUME_SIZE = "CurrentConfigurationVolumeSize",
428
524
  CURRENT_CONFIGURATION_VOLUME_TYPE = "CurrentConfigurationVolumeType",
429
525
  CURRENT_MONTHLY_PRICE = "CurrentMonthlyPrice",
526
+ CURRENT_PERFORMANCE_RISK = "CurrentPerformanceRisk",
430
527
  FINDING = "Finding",
431
528
  LAST_REFRESH_TIMESTAMP = "LastRefreshTimestamp",
432
529
  LOOKBACK_PERIOD_IN_DAYS = "LookbackPeriodInDays",
@@ -436,8 +533,11 @@ export declare enum ExportableVolumeField {
436
533
  RECOMMENDATION_OPTIONS_CONFIGURATION_VOLUME_BURST_THROUGHPUT = "RecommendationOptionsConfigurationVolumeBurstThroughput",
437
534
  RECOMMENDATION_OPTIONS_CONFIGURATION_VOLUME_SIZE = "RecommendationOptionsConfigurationVolumeSize",
438
535
  RECOMMENDATION_OPTIONS_CONFIGURATION_VOLUME_TYPE = "RecommendationOptionsConfigurationVolumeType",
536
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY = "RecommendationOptionsEstimatedMonthlySavingsCurrency",
537
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE = "RecommendationOptionsEstimatedMonthlySavingsValue",
439
538
  RECOMMENDATION_OPTIONS_MONTHLY_PRICE = "RecommendationOptionsMonthlyPrice",
440
539
  RECOMMENDATION_OPTIONS_PERFORMANCE_RISK = "RecommendationOptionsPerformanceRisk",
540
+ RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_PERCENTAGE = "RecommendationOptionsSavingsOpportunityPercentage",
441
541
  UTILIZATION_METRICS_VOLUME_READ_BYTES_PER_SECOND_MAXIMUM = "UtilizationMetricsVolumeReadBytesPerSecondMaximum",
442
542
  UTILIZATION_METRICS_VOLUME_READ_OPS_PER_SECOND_MAXIMUM = "UtilizationMetricsVolumeReadOpsPerSecondMaximum",
443
543
  UTILIZATION_METRICS_VOLUME_WRITE_BYTES_PER_SECOND_MAXIMUM = "UtilizationMetricsVolumeWriteBytesPerSecondMaximum",
@@ -492,10 +592,13 @@ export declare enum ExportableInstanceField {
492
592
  CURRENT_MEMORY = "CurrentMemory",
493
593
  CURRENT_NETWORK = "CurrentNetwork",
494
594
  CURRENT_ON_DEMAND_PRICE = "CurrentOnDemandPrice",
595
+ CURRENT_PERFORMANCE_RISK = "CurrentPerformanceRisk",
495
596
  CURRENT_STANDARD_ONE_YEAR_NO_UPFRONT_RESERVED_PRICE = "CurrentStandardOneYearNoUpfrontReservedPrice",
496
597
  CURRENT_STANDARD_THREE_YEAR_NO_UPFRONT_RESERVED_PRICE = "CurrentStandardThreeYearNoUpfrontReservedPrice",
497
598
  CURRENT_STORAGE = "CurrentStorage",
498
599
  CURRENT_VCPUS = "CurrentVCpus",
600
+ EFFECTIVE_RECOMMENDATION_PREFERENCES_CPU_VENDOR_ARCHITECTURES = "EffectiveRecommendationPreferencesCpuVendorArchitectures",
601
+ EFFECTIVE_RECOMMENDATION_PREFERENCES_ENHANCED_INFRASTRUCTURE_METRICS = "EffectiveRecommendationPreferencesEnhancedInfrastructureMetrics",
499
602
  FINDING = "Finding",
500
603
  Finding_Reason_Codes = "FindingReasonCodes",
501
604
  INSTANCE_ARN = "InstanceArn",
@@ -504,6 +607,8 @@ export declare enum ExportableInstanceField {
504
607
  LOOKBACK_PERIOD_IN_DAYS = "LookbackPeriodInDays",
505
608
  RECOMMENDATIONS_SOURCES_RECOMMENDATION_SOURCE_ARN = "RecommendationsSourcesRecommendationSourceArn",
506
609
  RECOMMENDATIONS_SOURCES_RECOMMENDATION_SOURCE_TYPE = "RecommendationsSourcesRecommendationSourceType",
610
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY = "RecommendationOptionsEstimatedMonthlySavingsCurrency",
611
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE = "RecommendationOptionsEstimatedMonthlySavingsValue",
507
612
  RECOMMENDATION_OPTIONS_INSTANCE_TYPE = "RecommendationOptionsInstanceType",
508
613
  RECOMMENDATION_OPTIONS_MEMORY = "RecommendationOptionsMemory",
509
614
  RECOMMENDATION_OPTIONS_NETWORK = "RecommendationOptionsNetwork",
@@ -512,6 +617,7 @@ export declare enum ExportableInstanceField {
512
617
  RECOMMENDATION_OPTIONS_PLATFORM_DIFFERENCES = "RecommendationOptionsPlatformDifferences",
513
618
  RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_CPU_MAXIMUM = "RecommendationOptionsProjectedUtilizationMetricsCpuMaximum",
514
619
  RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_MEMORY_MAXIMUM = "RecommendationOptionsProjectedUtilizationMetricsMemoryMaximum",
620
+ RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_PERCENTAGE = "RecommendationOptionsSavingsOpportunityPercentage",
515
621
  RECOMMENDATION_OPTIONS_STANDARD_ONE_YEAR_NO_UPFRONT_RESERVED_PRICE = "RecommendationOptionsStandardOneYearNoUpfrontReservedPrice",
516
622
  RECOMMENDATION_OPTIONS_STANDARD_THREE_YEAR_NO_UPFRONT_RESERVED_PRICE = "RecommendationOptionsStandardThreeYearNoUpfrontReservedPrice",
517
623
  RECOMMENDATION_OPTIONS_STORAGE = "RecommendationOptionsStorage",
@@ -567,6 +673,7 @@ export declare enum ExportableLambdaFunctionField {
567
673
  CURRENT_CONFIGURATION_TIMEOUT = "CurrentConfigurationTimeout",
568
674
  CURRENT_COST_AVERAGE = "CurrentCostAverage",
569
675
  CURRENT_COST_TOTAL = "CurrentCostTotal",
676
+ CURRENT_PERFORMANCE_RISK = "CurrentPerformanceRisk",
570
677
  FINDING = "Finding",
571
678
  FINDING_REASON_CODES = "FindingReasonCodes",
572
679
  FUNCTION_ARN = "FunctionArn",
@@ -577,9 +684,12 @@ export declare enum ExportableLambdaFunctionField {
577
684
  RECOMMENDATION_OPTIONS_CONFIGURATION_MEMORY_SIZE = "RecommendationOptionsConfigurationMemorySize",
578
685
  RECOMMENDATION_OPTIONS_COST_HIGH = "RecommendationOptionsCostHigh",
579
686
  RECOMMENDATION_OPTIONS_COST_LOW = "RecommendationOptionsCostLow",
687
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_CURRENCY = "RecommendationOptionsEstimatedMonthlySavingsCurrency",
688
+ RECOMMENDATION_OPTIONS_ESTIMATED_MONTHLY_SAVINGS_VALUE = "RecommendationOptionsEstimatedMonthlySavingsValue",
580
689
  RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_DURATION_EXPECTED = "RecommendationOptionsProjectedUtilizationMetricsDurationExpected",
581
690
  RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_DURATION_LOWER_BOUND = "RecommendationOptionsProjectedUtilizationMetricsDurationLowerBound",
582
691
  RECOMMENDATION_OPTIONS_PROJECTED_UTILIZATION_METRICS_DURATION_UPPER_BOUND = "RecommendationOptionsProjectedUtilizationMetricsDurationUpperBound",
692
+ RECOMMENDATION_OPTIONS_SAVINGS_OPPORTUNITY_PERCENTAGE = "RecommendationOptionsSavingsOpportunityPercentage",
583
693
  UTILIZATION_METRICS_DURATION_AVERAGE = "UtilizationMetricsDurationAverage",
584
694
  UTILIZATION_METRICS_DURATION_MAXIMUM = "UtilizationMetricsDurationMaximum",
585
695
  UTILIZATION_METRICS_MEMORY_AVERAGE = "UtilizationMetricsMemoryAverage",
@@ -737,6 +847,8 @@ export interface VolumeRecommendationOption {
737
847
  performanceRisk?: number;
738
848
 
739
849
  rank?: number;
850
+
851
+ savingsOpportunity?: SavingsOpportunity;
740
852
  }
741
853
  export declare namespace VolumeRecommendationOption {
742
854
 
@@ -760,6 +872,8 @@ export interface VolumeRecommendation {
760
872
  volumeRecommendationOptions?: VolumeRecommendationOption[];
761
873
 
762
874
  lastRefreshTimestamp?: Date;
875
+
876
+ currentPerformanceRisk?: CurrentPerformanceRisk | string;
763
877
  }
764
878
  export declare namespace VolumeRecommendation {
765
879
 
@@ -833,6 +947,8 @@ export interface InstanceRecommendationOption {
833
947
  performanceRisk?: number;
834
948
 
835
949
  rank?: number;
950
+
951
+ savingsOpportunity?: SavingsOpportunity;
836
952
  }
837
953
  export declare namespace InstanceRecommendationOption {
838
954
 
@@ -879,6 +995,10 @@ export interface InstanceRecommendation {
879
995
  recommendationSources?: RecommendationSource[];
880
996
 
881
997
  lastRefreshTimestamp?: Date;
998
+
999
+ currentPerformanceRisk?: CurrentPerformanceRisk | string;
1000
+
1001
+ effectiveRecommendationPreferences?: EffectiveRecommendationPreferences;
882
1002
  }
883
1003
  export declare namespace InstanceRecommendation {
884
1004
 
@@ -948,6 +1068,22 @@ export declare namespace GetEC2RecommendationProjectedMetricsResponse {
948
1068
 
949
1069
  const filterSensitiveLog: (obj: GetEC2RecommendationProjectedMetricsResponse) => any;
950
1070
  }
1071
+ export interface GetEffectiveRecommendationPreferencesRequest {
1072
+
1073
+ resourceArn: string | undefined;
1074
+ }
1075
+ export declare namespace GetEffectiveRecommendationPreferencesRequest {
1076
+
1077
+ const filterSensitiveLog: (obj: GetEffectiveRecommendationPreferencesRequest) => any;
1078
+ }
1079
+ export interface GetEffectiveRecommendationPreferencesResponse {
1080
+
1081
+ enhancedInfrastructureMetrics?: EnhancedInfrastructureMetrics | string;
1082
+ }
1083
+ export declare namespace GetEffectiveRecommendationPreferencesResponse {
1084
+
1085
+ const filterSensitiveLog: (obj: GetEffectiveRecommendationPreferencesResponse) => any;
1086
+ }
951
1087
  export interface GetEnrollmentStatusRequest {
952
1088
  }
953
1089
  export declare namespace GetEnrollmentStatusRequest {
@@ -1062,6 +1198,8 @@ export interface LambdaFunctionMemoryRecommendationOption {
1062
1198
  memorySize?: number;
1063
1199
 
1064
1200
  projectedUtilizationMetrics?: LambdaFunctionMemoryProjectedMetric[];
1201
+
1202
+ savingsOpportunity?: SavingsOpportunity;
1065
1203
  }
1066
1204
  export declare namespace LambdaFunctionMemoryRecommendationOption {
1067
1205
 
@@ -1112,6 +1250,8 @@ export interface LambdaFunctionRecommendation {
1112
1250
  findingReasonCodes?: (LambdaFunctionRecommendationFindingReasonCode | string)[];
1113
1251
 
1114
1252
  memorySizeRecommendationOptions?: LambdaFunctionMemoryRecommendationOption[];
1253
+
1254
+ currentPerformanceRisk?: CurrentPerformanceRisk | string;
1115
1255
  }
1116
1256
  export declare namespace LambdaFunctionRecommendation {
1117
1257
 
@@ -1127,6 +1267,43 @@ export declare namespace GetLambdaFunctionRecommendationsResponse {
1127
1267
 
1128
1268
  const filterSensitiveLog: (obj: GetLambdaFunctionRecommendationsResponse) => any;
1129
1269
  }
1270
+ export interface GetRecommendationPreferencesRequest {
1271
+
1272
+ resourceType: ResourceType | string | undefined;
1273
+
1274
+ scope?: Scope;
1275
+
1276
+ nextToken?: string;
1277
+
1278
+ maxResults?: number;
1279
+ }
1280
+ export declare namespace GetRecommendationPreferencesRequest {
1281
+
1282
+ const filterSensitiveLog: (obj: GetRecommendationPreferencesRequest) => any;
1283
+ }
1284
+
1285
+ export interface RecommendationPreferencesDetail {
1286
+
1287
+ scope?: Scope;
1288
+
1289
+ resourceType?: ResourceType | string;
1290
+
1291
+ enhancedInfrastructureMetrics?: EnhancedInfrastructureMetrics | string;
1292
+ }
1293
+ export declare namespace RecommendationPreferencesDetail {
1294
+
1295
+ const filterSensitiveLog: (obj: RecommendationPreferencesDetail) => any;
1296
+ }
1297
+ export interface GetRecommendationPreferencesResponse {
1298
+
1299
+ nextToken?: string;
1300
+
1301
+ recommendationPreferencesDetails?: RecommendationPreferencesDetail[];
1302
+ }
1303
+ export declare namespace GetRecommendationPreferencesResponse {
1304
+
1305
+ const filterSensitiveLog: (obj: GetRecommendationPreferencesResponse) => any;
1306
+ }
1130
1307
  export interface GetRecommendationSummariesRequest {
1131
1308
 
1132
1309
  accountIds?: string[];
@@ -1139,6 +1316,21 @@ export declare namespace GetRecommendationSummariesRequest {
1139
1316
 
1140
1317
  const filterSensitiveLog: (obj: GetRecommendationSummariesRequest) => any;
1141
1318
  }
1319
+
1320
+ export interface CurrentPerformanceRiskRatings {
1321
+
1322
+ high?: number;
1323
+
1324
+ medium?: number;
1325
+
1326
+ low?: number;
1327
+
1328
+ veryLow?: number;
1329
+ }
1330
+ export declare namespace CurrentPerformanceRiskRatings {
1331
+
1332
+ const filterSensitiveLog: (obj: CurrentPerformanceRiskRatings) => any;
1333
+ }
1142
1334
  export declare enum FindingReasonCode {
1143
1335
  MEMORY_OVER_PROVISIONED = "MemoryOverprovisioned",
1144
1336
  MEMORY_UNDER_PROVISIONED = "MemoryUnderprovisioned"
@@ -1175,6 +1367,10 @@ export interface RecommendationSummary {
1175
1367
  recommendationResourceType?: RecommendationSourceType | string;
1176
1368
 
1177
1369
  accountId?: string;
1370
+
1371
+ savingsOpportunity?: SavingsOpportunity;
1372
+
1373
+ currentPerformanceRiskRatings?: CurrentPerformanceRiskRatings;
1178
1374
  }
1179
1375
  export declare namespace RecommendationSummary {
1180
1376
 
@@ -1190,6 +1386,24 @@ export declare namespace GetRecommendationSummariesResponse {
1190
1386
 
1191
1387
  const filterSensitiveLog: (obj: GetRecommendationSummariesResponse) => any;
1192
1388
  }
1389
+ export interface PutRecommendationPreferencesRequest {
1390
+
1391
+ resourceType: ResourceType | string | undefined;
1392
+
1393
+ scope?: Scope;
1394
+
1395
+ enhancedInfrastructureMetrics?: EnhancedInfrastructureMetrics | string;
1396
+ }
1397
+ export declare namespace PutRecommendationPreferencesRequest {
1398
+
1399
+ const filterSensitiveLog: (obj: PutRecommendationPreferencesRequest) => any;
1400
+ }
1401
+ export interface PutRecommendationPreferencesResponse {
1402
+ }
1403
+ export declare namespace PutRecommendationPreferencesResponse {
1404
+
1405
+ const filterSensitiveLog: (obj: PutRecommendationPreferencesResponse) => any;
1406
+ }
1193
1407
  export interface UpdateEnrollmentStatusRequest {
1194
1408
 
1195
1409
  status: Status | string | undefined;
@@ -1,5 +1,6 @@
1
1
  import { HttpRequest as __HttpRequest, HttpResponse as __HttpResponse } from "@aws-sdk/protocol-http";
2
2
  import { SerdeContext as __SerdeContext } from "@aws-sdk/types";
3
+ import { DeleteRecommendationPreferencesCommandInput, DeleteRecommendationPreferencesCommandOutput } from "../commands/DeleteRecommendationPreferencesCommand";
3
4
  import { DescribeRecommendationExportJobsCommandInput, DescribeRecommendationExportJobsCommandOutput } from "../commands/DescribeRecommendationExportJobsCommand";
4
5
  import { ExportAutoScalingGroupRecommendationsCommandInput, ExportAutoScalingGroupRecommendationsCommandOutput } from "../commands/ExportAutoScalingGroupRecommendationsCommand";
5
6
  import { ExportEBSVolumeRecommendationsCommandInput, ExportEBSVolumeRecommendationsCommandOutput } from "../commands/ExportEBSVolumeRecommendationsCommand";
@@ -9,11 +10,15 @@ import { GetAutoScalingGroupRecommendationsCommandInput, GetAutoScalingGroupReco
9
10
  import { GetEBSVolumeRecommendationsCommandInput, GetEBSVolumeRecommendationsCommandOutput } from "../commands/GetEBSVolumeRecommendationsCommand";
10
11
  import { GetEC2InstanceRecommendationsCommandInput, GetEC2InstanceRecommendationsCommandOutput } from "../commands/GetEC2InstanceRecommendationsCommand";
11
12
  import { GetEC2RecommendationProjectedMetricsCommandInput, GetEC2RecommendationProjectedMetricsCommandOutput } from "../commands/GetEC2RecommendationProjectedMetricsCommand";
13
+ import { GetEffectiveRecommendationPreferencesCommandInput, GetEffectiveRecommendationPreferencesCommandOutput } from "../commands/GetEffectiveRecommendationPreferencesCommand";
12
14
  import { GetEnrollmentStatusCommandInput, GetEnrollmentStatusCommandOutput } from "../commands/GetEnrollmentStatusCommand";
13
15
  import { GetEnrollmentStatusesForOrganizationCommandInput, GetEnrollmentStatusesForOrganizationCommandOutput } from "../commands/GetEnrollmentStatusesForOrganizationCommand";
14
16
  import { GetLambdaFunctionRecommendationsCommandInput, GetLambdaFunctionRecommendationsCommandOutput } from "../commands/GetLambdaFunctionRecommendationsCommand";
17
+ import { GetRecommendationPreferencesCommandInput, GetRecommendationPreferencesCommandOutput } from "../commands/GetRecommendationPreferencesCommand";
15
18
  import { GetRecommendationSummariesCommandInput, GetRecommendationSummariesCommandOutput } from "../commands/GetRecommendationSummariesCommand";
19
+ import { PutRecommendationPreferencesCommandInput, PutRecommendationPreferencesCommandOutput } from "../commands/PutRecommendationPreferencesCommand";
16
20
  import { UpdateEnrollmentStatusCommandInput, UpdateEnrollmentStatusCommandOutput } from "../commands/UpdateEnrollmentStatusCommand";
21
+ export declare const serializeAws_json1_0DeleteRecommendationPreferencesCommand: (input: DeleteRecommendationPreferencesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
17
22
  export declare const serializeAws_json1_0DescribeRecommendationExportJobsCommand: (input: DescribeRecommendationExportJobsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
18
23
  export declare const serializeAws_json1_0ExportAutoScalingGroupRecommendationsCommand: (input: ExportAutoScalingGroupRecommendationsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
19
24
  export declare const serializeAws_json1_0ExportEBSVolumeRecommendationsCommand: (input: ExportEBSVolumeRecommendationsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
@@ -23,11 +28,15 @@ export declare const serializeAws_json1_0GetAutoScalingGroupRecommendationsComma
23
28
  export declare const serializeAws_json1_0GetEBSVolumeRecommendationsCommand: (input: GetEBSVolumeRecommendationsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
24
29
  export declare const serializeAws_json1_0GetEC2InstanceRecommendationsCommand: (input: GetEC2InstanceRecommendationsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
25
30
  export declare const serializeAws_json1_0GetEC2RecommendationProjectedMetricsCommand: (input: GetEC2RecommendationProjectedMetricsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
31
+ export declare const serializeAws_json1_0GetEffectiveRecommendationPreferencesCommand: (input: GetEffectiveRecommendationPreferencesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
26
32
  export declare const serializeAws_json1_0GetEnrollmentStatusCommand: (input: GetEnrollmentStatusCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
27
33
  export declare const serializeAws_json1_0GetEnrollmentStatusesForOrganizationCommand: (input: GetEnrollmentStatusesForOrganizationCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
28
34
  export declare const serializeAws_json1_0GetLambdaFunctionRecommendationsCommand: (input: GetLambdaFunctionRecommendationsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
35
+ export declare const serializeAws_json1_0GetRecommendationPreferencesCommand: (input: GetRecommendationPreferencesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
29
36
  export declare const serializeAws_json1_0GetRecommendationSummariesCommand: (input: GetRecommendationSummariesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
37
+ export declare const serializeAws_json1_0PutRecommendationPreferencesCommand: (input: PutRecommendationPreferencesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
30
38
  export declare const serializeAws_json1_0UpdateEnrollmentStatusCommand: (input: UpdateEnrollmentStatusCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
39
+ export declare const deserializeAws_json1_0DeleteRecommendationPreferencesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<DeleteRecommendationPreferencesCommandOutput>;
31
40
  export declare const deserializeAws_json1_0DescribeRecommendationExportJobsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<DescribeRecommendationExportJobsCommandOutput>;
32
41
  export declare const deserializeAws_json1_0ExportAutoScalingGroupRecommendationsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ExportAutoScalingGroupRecommendationsCommandOutput>;
33
42
  export declare const deserializeAws_json1_0ExportEBSVolumeRecommendationsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ExportEBSVolumeRecommendationsCommandOutput>;
@@ -37,8 +46,11 @@ export declare const deserializeAws_json1_0GetAutoScalingGroupRecommendationsCom
37
46
  export declare const deserializeAws_json1_0GetEBSVolumeRecommendationsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetEBSVolumeRecommendationsCommandOutput>;
38
47
  export declare const deserializeAws_json1_0GetEC2InstanceRecommendationsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetEC2InstanceRecommendationsCommandOutput>;
39
48
  export declare const deserializeAws_json1_0GetEC2RecommendationProjectedMetricsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetEC2RecommendationProjectedMetricsCommandOutput>;
49
+ export declare const deserializeAws_json1_0GetEffectiveRecommendationPreferencesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetEffectiveRecommendationPreferencesCommandOutput>;
40
50
  export declare const deserializeAws_json1_0GetEnrollmentStatusCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetEnrollmentStatusCommandOutput>;
41
51
  export declare const deserializeAws_json1_0GetEnrollmentStatusesForOrganizationCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetEnrollmentStatusesForOrganizationCommandOutput>;
42
52
  export declare const deserializeAws_json1_0GetLambdaFunctionRecommendationsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetLambdaFunctionRecommendationsCommandOutput>;
53
+ export declare const deserializeAws_json1_0GetRecommendationPreferencesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetRecommendationPreferencesCommandOutput>;
43
54
  export declare const deserializeAws_json1_0GetRecommendationSummariesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetRecommendationSummariesCommandOutput>;
55
+ export declare const deserializeAws_json1_0PutRecommendationPreferencesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<PutRecommendationPreferencesCommandOutput>;
44
56
  export declare const deserializeAws_json1_0UpdateEnrollmentStatusCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<UpdateEnrollmentStatusCommandOutput>;