@@ -78,6 +78,7 @@ export const ActionType = {
78
78
PURCHASE_RESERVED_INSTANCES : "PurchaseReservedInstances" ,
79
79
PURCHASE_SAVINGS_PLANS : "PurchaseSavingsPlans" ,
80
80
RIGHTSIZE : "Rightsize" ,
81
+ SCALE_IN : "ScaleIn" ,
81
82
STOP : "Stop" ,
82
83
UPGRADE : "Upgrade" ,
83
84
} as const ;
@@ -87,6 +88,20 @@ export const ActionType = {
87
88
*/
88
89
export type ActionType = ( typeof ActionType ) [ keyof typeof ActionType ] ;
89
90
91
+ /**
92
+ * @public
93
+ * @enum
94
+ */
95
+ export const AllocationStrategy = {
96
+ LOWEST_PRICE : "LowestPrice" ,
97
+ PRIORITIZED : "Prioritized" ,
98
+ } as const ;
99
+
100
+ /**
101
+ * @public
102
+ */
103
+ export type AllocationStrategy = ( typeof AllocationStrategy ) [ keyof typeof AllocationStrategy ] ;
104
+
90
105
/**
91
106
* <p>Describes the Amazon Elastic Block Store performance configuration of the current and
92
107
* recommended resource configuration for a recommendation.</p>
@@ -421,8 +436,7 @@ export interface StorageConfiguration {
421
436
}
422
437
423
438
/**
424
- * <p>The Amazon Elastic Block Store volume configuration used for
425
- * recommendations.</p>
439
+ * <p>The Amazon Elastic Block Store volume configuration used for recommendations.</p>
426
440
* @public
427
441
*/
428
442
export interface EbsVolumeConfiguration {
@@ -558,14 +572,13 @@ export interface ResourceCostCalculation {
558
572
}
559
573
560
574
/**
561
- * <p>Describes the Amazon Elastic Block Store volume configuration of the current and
562
- * recommended resource configuration for a recommendation.</p>
575
+ * <p>Describes the Amazon Elastic Block Store volume configuration of the current and recommended
576
+ * resource configuration for a recommendation.</p>
563
577
* @public
564
578
*/
565
579
export interface EbsVolume {
566
580
/**
567
- * <p>The Amazon Elastic Block Store volume configuration used for
568
- * recommendations.</p>
581
+ * <p>The Amazon Elastic Block Store volume configuration used for recommendations.</p>
569
582
* @public
570
583
*/
571
584
configuration ?: EbsVolumeConfiguration | undefined ;
@@ -578,27 +591,74 @@ export interface EbsVolume {
578
591
}
579
592
580
593
/**
581
- * <p>The Instance configuration used for recommendations.</p>
594
+ * <p>The instance configuration used for recommendations.</p>
582
595
* @public
583
596
*/
584
597
export interface InstanceConfiguration {
585
598
/**
586
- * <p>Details about the type .</p>
599
+ * <p>The instance type of the configuration .</p>
587
600
* @public
588
601
*/
589
602
type ?: string | undefined ;
590
603
}
591
604
592
605
/**
593
- * <p>The EC2 auto scaling group configuration used for recommendations.</p>
606
+ * <p>The configuration for the EC2 Auto Scaling group with mixed instance types.</p>
607
+ * @public
608
+ */
609
+ export interface MixedInstanceConfiguration {
610
+ /**
611
+ * <p>The instance type of the configuration.</p>
612
+ * @public
613
+ */
614
+ type ?: string | undefined ;
615
+ }
616
+
617
+ /**
618
+ * @public
619
+ * @enum
620
+ */
621
+ export const Ec2AutoScalingGroupType = {
622
+ MIXED_INSTANCE_TYPES : "MixedInstanceTypes" ,
623
+ SINGLE_INSTANCE_TYPE : "SingleInstanceType" ,
624
+ } as const ;
625
+
626
+ /**
627
+ * @public
628
+ */
629
+ export type Ec2AutoScalingGroupType = ( typeof Ec2AutoScalingGroupType ) [ keyof typeof Ec2AutoScalingGroupType ] ;
630
+
631
+ /**
632
+ * <p>The EC2 Auto Scaling group configuration used for recommendations.</p>
594
633
* @public
595
634
*/
596
635
export interface Ec2AutoScalingGroupConfiguration {
597
636
/**
598
- * <p>Details about the instance.</p>
637
+ * <p>Details about the instance for the EC2 Auto Scaling group with a single instance
638
+ * type.</p>
599
639
* @public
600
640
*/
601
641
instance ?: InstanceConfiguration | undefined ;
642
+
643
+ /**
644
+ * <p>A list of instance types for an EC2 Auto Scaling group with mixed instance types.</p>
645
+ * @public
646
+ */
647
+ mixedInstances ?: MixedInstanceConfiguration [ ] | undefined ;
648
+
649
+ /**
650
+ * <p>The type of EC2 Auto Scaling group, showing whether it consists of a single instance type
651
+ * or mixed instance types.</p>
652
+ * @public
653
+ */
654
+ type ?: Ec2AutoScalingGroupType | undefined ;
655
+
656
+ /**
657
+ * <p>The strategy used for allocating instances, based on a predefined priority order or based
658
+ * on the lowest available price.</p>
659
+ * @public
660
+ */
661
+ allocationStrategy ?: AllocationStrategy | undefined ;
602
662
}
603
663
604
664
/**
@@ -1810,7 +1870,8 @@ export namespace ResourceDetails {
1810
1870
}
1811
1871
1812
1872
/**
1813
- * <p>The SageMaker Savings Plans recommendation details.</p>
1873
+ * <p>The SageMaker AI
1874
+ * Savings Plans recommendation details.</p>
1814
1875
* @public
1815
1876
*/
1816
1877
export interface SageMakerSavingsPlansMember {
0 commit comments