@aws-sdk/client-ec2 3.627.0 → 3.629.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 (59) hide show
  1. package/README.md +16 -0
  2. package/dist-cjs/index.js +238 -69
  3. package/dist-es/EC2.js +4 -0
  4. package/dist-es/commands/CreateCapacityReservationBySplittingCommand.js +24 -0
  5. package/dist-es/commands/ModifyVpnTunnelCertificateCommand.js +1 -1
  6. package/dist-es/commands/MoveCapacityReservationInstancesCommand.js +24 -0
  7. package/dist-es/commands/index.js +2 -0
  8. package/dist-es/models/models_0.js +0 -3
  9. package/dist-es/models/models_1.js +3 -5
  10. package/dist-es/models/models_2.js +5 -0
  11. package/dist-es/models/models_3.js +0 -13
  12. package/dist-es/models/models_4.js +13 -4
  13. package/dist-es/models/models_5.js +4 -4
  14. package/dist-es/models/models_6.js +4 -8
  15. package/dist-es/models/models_7.js +8 -0
  16. package/dist-es/protocols/Aws_ec2.js +139 -8
  17. package/dist-types/EC2.d.ts +14 -0
  18. package/dist-types/EC2Client.d.ts +4 -2
  19. package/dist-types/commands/CreateCapacityReservationBySplittingCommand.d.ts +148 -0
  20. package/dist-types/commands/CreateCapacityReservationFleetCommand.d.ts +1 -2
  21. package/dist-types/commands/CreateNetworkInterfaceCommand.d.ts +1 -2
  22. package/dist-types/commands/DeleteLaunchTemplateVersionsCommand.d.ts +2 -1
  23. package/dist-types/commands/DeleteLocalGatewayRouteCommand.d.ts +1 -2
  24. package/dist-types/commands/DescribeAddressTransfersCommand.d.ts +1 -1
  25. package/dist-types/commands/GetInstanceMetadataDefaultsCommand.d.ts +2 -1
  26. package/dist-types/commands/ModifyCapacityReservationCommand.d.ts +5 -5
  27. package/dist-types/commands/ModifyVpnTunnelCertificateCommand.d.ts +2 -1
  28. package/dist-types/commands/MoveCapacityReservationInstancesCommand.d.ts +157 -0
  29. package/dist-types/commands/index.d.ts +2 -0
  30. package/dist-types/models/models_0.d.ts +63 -99
  31. package/dist-types/models/models_1.d.ts +99 -150
  32. package/dist-types/models/models_2.d.ts +153 -49
  33. package/dist-types/models/models_3.d.ts +48 -32
  34. package/dist-types/models/models_4.d.ts +34 -52
  35. package/dist-types/models/models_5.d.ts +48 -23
  36. package/dist-types/models/models_6.d.ts +35 -237
  37. package/dist-types/models/models_7.d.ts +299 -4
  38. package/dist-types/protocols/Aws_ec2.d.ts +18 -0
  39. package/dist-types/ts3.4/EC2.d.ts +40 -0
  40. package/dist-types/ts3.4/EC2Client.d.ts +12 -0
  41. package/dist-types/ts3.4/commands/CreateCapacityReservationBySplittingCommand.d.ts +40 -0
  42. package/dist-types/ts3.4/commands/CreateCapacityReservationFleetCommand.d.ts +4 -2
  43. package/dist-types/ts3.4/commands/CreateNetworkInterfaceCommand.d.ts +4 -2
  44. package/dist-types/ts3.4/commands/DeleteLaunchTemplateVersionsCommand.d.ts +2 -4
  45. package/dist-types/ts3.4/commands/DeleteLocalGatewayRouteCommand.d.ts +4 -2
  46. package/dist-types/ts3.4/commands/GetInstanceMetadataDefaultsCommand.d.ts +2 -4
  47. package/dist-types/ts3.4/commands/ModifyVpnTunnelCertificateCommand.d.ts +2 -4
  48. package/dist-types/ts3.4/commands/MoveCapacityReservationInstancesCommand.d.ts +40 -0
  49. package/dist-types/ts3.4/commands/index.d.ts +2 -0
  50. package/dist-types/ts3.4/models/models_0.d.ts +12 -18
  51. package/dist-types/ts3.4/models/models_1.d.ts +19 -28
  52. package/dist-types/ts3.4/models/models_2.d.ts +32 -10
  53. package/dist-types/ts3.4/models/models_3.d.ts +13 -17
  54. package/dist-types/ts3.4/models/models_4.d.ts +16 -12
  55. package/dist-types/ts3.4/models/models_5.d.ts +10 -10
  56. package/dist-types/ts3.4/models/models_6.d.ts +12 -40
  57. package/dist-types/ts3.4/models/models_7.d.ts +53 -5
  58. package/dist-types/ts3.4/protocols/Aws_ec2.d.ts +24 -0
  59. package/package.json +5 -5
@@ -0,0 +1,157 @@
1
+ import { Command as $Command } from "@smithy/smithy-client";
2
+ import { MetadataBearer as __MetadataBearer } from "@smithy/types";
3
+ import { EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../EC2Client";
4
+ import { MoveCapacityReservationInstancesRequest, MoveCapacityReservationInstancesResult } from "../models/models_7";
5
+ /**
6
+ * @public
7
+ */
8
+ export type { __MetadataBearer };
9
+ export { $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link MoveCapacityReservationInstancesCommand}.
14
+ */
15
+ export interface MoveCapacityReservationInstancesCommandInput extends MoveCapacityReservationInstancesRequest {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link MoveCapacityReservationInstancesCommand}.
21
+ */
22
+ export interface MoveCapacityReservationInstancesCommandOutput extends MoveCapacityReservationInstancesResult, __MetadataBearer {
23
+ }
24
+ declare const MoveCapacityReservationInstancesCommand_base: {
25
+ new (input: MoveCapacityReservationInstancesCommandInput): import("@smithy/smithy-client").CommandImpl<MoveCapacityReservationInstancesCommandInput, MoveCapacityReservationInstancesCommandOutput, EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
26
+ new (__0_0: MoveCapacityReservationInstancesCommandInput): import("@smithy/smithy-client").CommandImpl<MoveCapacityReservationInstancesCommandInput, MoveCapacityReservationInstancesCommandOutput, EC2ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
27
+ getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
+ };
29
+ /**
30
+ * <p>Move available capacity from a source Capacity Reservation to a destination Capacity Reservation. The source Capacity Reservation and the destination Capacity Reservation must be <code>active</code>, owned by your Amazon Web Services account, and share the following:
31
+ * </p>
32
+ * <ul>
33
+ * <li>
34
+ * <p>Instance type</p>
35
+ * </li>
36
+ * <li>
37
+ * <p>Platform</p>
38
+ * </li>
39
+ * <li>
40
+ * <p>Availability Zone</p>
41
+ * </li>
42
+ * <li>
43
+ * <p>Tenancy</p>
44
+ * </li>
45
+ * <li>
46
+ * <p>Placement group</p>
47
+ * </li>
48
+ * <li>
49
+ * <p>Capacity Reservation end time - <code>At specific time</code> or <code>Manually</code>.</p>
50
+ * </li>
51
+ * </ul>
52
+ * @example
53
+ * Use a bare-bones client and the command you need to make an API call.
54
+ * ```javascript
55
+ * import { EC2Client, MoveCapacityReservationInstancesCommand } from "@aws-sdk/client-ec2"; // ES Modules import
56
+ * // const { EC2Client, MoveCapacityReservationInstancesCommand } = require("@aws-sdk/client-ec2"); // CommonJS import
57
+ * const client = new EC2Client(config);
58
+ * const input = { // MoveCapacityReservationInstancesRequest
59
+ * DryRun: true || false,
60
+ * ClientToken: "STRING_VALUE",
61
+ * SourceCapacityReservationId: "STRING_VALUE", // required
62
+ * DestinationCapacityReservationId: "STRING_VALUE", // required
63
+ * InstanceCount: Number("int"), // required
64
+ * };
65
+ * const command = new MoveCapacityReservationInstancesCommand(input);
66
+ * const response = await client.send(command);
67
+ * // { // MoveCapacityReservationInstancesResult
68
+ * // SourceCapacityReservation: { // CapacityReservation
69
+ * // CapacityReservationId: "STRING_VALUE",
70
+ * // OwnerId: "STRING_VALUE",
71
+ * // CapacityReservationArn: "STRING_VALUE",
72
+ * // AvailabilityZoneId: "STRING_VALUE",
73
+ * // InstanceType: "STRING_VALUE",
74
+ * // InstancePlatform: "Linux/UNIX" || "Red Hat Enterprise Linux" || "SUSE Linux" || "Windows" || "Windows with SQL Server" || "Windows with SQL Server Enterprise" || "Windows with SQL Server Standard" || "Windows with SQL Server Web" || "Linux with SQL Server Standard" || "Linux with SQL Server Web" || "Linux with SQL Server Enterprise" || "RHEL with SQL Server Standard" || "RHEL with SQL Server Enterprise" || "RHEL with SQL Server Web" || "RHEL with HA" || "RHEL with HA and SQL Server Standard" || "RHEL with HA and SQL Server Enterprise" || "Ubuntu Pro",
75
+ * // AvailabilityZone: "STRING_VALUE",
76
+ * // Tenancy: "default" || "dedicated",
77
+ * // TotalInstanceCount: Number("int"),
78
+ * // AvailableInstanceCount: Number("int"),
79
+ * // EbsOptimized: true || false,
80
+ * // EphemeralStorage: true || false,
81
+ * // State: "active" || "expired" || "cancelled" || "pending" || "failed" || "scheduled" || "payment-pending" || "payment-failed",
82
+ * // StartDate: new Date("TIMESTAMP"),
83
+ * // EndDate: new Date("TIMESTAMP"),
84
+ * // EndDateType: "unlimited" || "limited",
85
+ * // InstanceMatchCriteria: "open" || "targeted",
86
+ * // CreateDate: new Date("TIMESTAMP"),
87
+ * // Tags: [ // TagList
88
+ * // { // Tag
89
+ * // Key: "STRING_VALUE",
90
+ * // Value: "STRING_VALUE",
91
+ * // },
92
+ * // ],
93
+ * // OutpostArn: "STRING_VALUE",
94
+ * // CapacityReservationFleetId: "STRING_VALUE",
95
+ * // PlacementGroupArn: "STRING_VALUE",
96
+ * // CapacityAllocations: [ // CapacityAllocations
97
+ * // { // CapacityAllocation
98
+ * // AllocationType: "used",
99
+ * // Count: Number("int"),
100
+ * // },
101
+ * // ],
102
+ * // ReservationType: "default" || "capacity-block",
103
+ * // },
104
+ * // DestinationCapacityReservation: {
105
+ * // CapacityReservationId: "STRING_VALUE",
106
+ * // OwnerId: "STRING_VALUE",
107
+ * // CapacityReservationArn: "STRING_VALUE",
108
+ * // AvailabilityZoneId: "STRING_VALUE",
109
+ * // InstanceType: "STRING_VALUE",
110
+ * // InstancePlatform: "Linux/UNIX" || "Red Hat Enterprise Linux" || "SUSE Linux" || "Windows" || "Windows with SQL Server" || "Windows with SQL Server Enterprise" || "Windows with SQL Server Standard" || "Windows with SQL Server Web" || "Linux with SQL Server Standard" || "Linux with SQL Server Web" || "Linux with SQL Server Enterprise" || "RHEL with SQL Server Standard" || "RHEL with SQL Server Enterprise" || "RHEL with SQL Server Web" || "RHEL with HA" || "RHEL with HA and SQL Server Standard" || "RHEL with HA and SQL Server Enterprise" || "Ubuntu Pro",
111
+ * // AvailabilityZone: "STRING_VALUE",
112
+ * // Tenancy: "default" || "dedicated",
113
+ * // TotalInstanceCount: Number("int"),
114
+ * // AvailableInstanceCount: Number("int"),
115
+ * // EbsOptimized: true || false,
116
+ * // EphemeralStorage: true || false,
117
+ * // State: "active" || "expired" || "cancelled" || "pending" || "failed" || "scheduled" || "payment-pending" || "payment-failed",
118
+ * // StartDate: new Date("TIMESTAMP"),
119
+ * // EndDate: new Date("TIMESTAMP"),
120
+ * // EndDateType: "unlimited" || "limited",
121
+ * // InstanceMatchCriteria: "open" || "targeted",
122
+ * // CreateDate: new Date("TIMESTAMP"),
123
+ * // Tags: [
124
+ * // {
125
+ * // Key: "STRING_VALUE",
126
+ * // Value: "STRING_VALUE",
127
+ * // },
128
+ * // ],
129
+ * // OutpostArn: "STRING_VALUE",
130
+ * // CapacityReservationFleetId: "STRING_VALUE",
131
+ * // PlacementGroupArn: "STRING_VALUE",
132
+ * // CapacityAllocations: [
133
+ * // {
134
+ * // AllocationType: "used",
135
+ * // Count: Number("int"),
136
+ * // },
137
+ * // ],
138
+ * // ReservationType: "default" || "capacity-block",
139
+ * // },
140
+ * // InstanceCount: Number("int"),
141
+ * // };
142
+ *
143
+ * ```
144
+ *
145
+ * @param MoveCapacityReservationInstancesCommandInput - {@link MoveCapacityReservationInstancesCommandInput}
146
+ * @returns {@link MoveCapacityReservationInstancesCommandOutput}
147
+ * @see {@link MoveCapacityReservationInstancesCommandInput} for command's `input` shape.
148
+ * @see {@link MoveCapacityReservationInstancesCommandOutput} for command's `response` shape.
149
+ * @see {@link EC2ClientResolvedConfig | config} for EC2Client's `config` shape.
150
+ *
151
+ * @throws {@link EC2ServiceException}
152
+ * <p>Base exception class for all service exceptions from EC2 service.</p>
153
+ *
154
+ * @public
155
+ */
156
+ export declare class MoveCapacityReservationInstancesCommand extends MoveCapacityReservationInstancesCommand_base {
157
+ }
@@ -53,6 +53,7 @@ export * from "./ConfirmProductInstanceCommand";
53
53
  export * from "./CopyFpgaImageCommand";
54
54
  export * from "./CopyImageCommand";
55
55
  export * from "./CopySnapshotCommand";
56
+ export * from "./CreateCapacityReservationBySplittingCommand";
56
57
  export * from "./CreateCapacityReservationCommand";
57
58
  export * from "./CreateCapacityReservationFleetCommand";
58
59
  export * from "./CreateCarrierGatewayCommand";
@@ -556,6 +557,7 @@ export * from "./ModifyVpnTunnelOptionsCommand";
556
557
  export * from "./MonitorInstancesCommand";
557
558
  export * from "./MoveAddressToVpcCommand";
558
559
  export * from "./MoveByoipCidrToIpamCommand";
560
+ export * from "./MoveCapacityReservationInstancesCommand";
559
561
  export * from "./ProvisionByoipCidrCommand";
560
562
  export * from "./ProvisionIpamByoasnCommand";
561
563
  export * from "./ProvisionIpamPoolCidrCommand";
@@ -1407,7 +1407,7 @@ export interface AnalysisRouteTableRoute {
1407
1407
  */
1408
1408
  DestinationCidr?: string;
1409
1409
  /**
1410
- * <p>The prefix of the Amazon Web Service.</p>
1410
+ * <p>The prefix of the Amazon Web Services service.</p>
1411
1411
  * @public
1412
1412
  */
1413
1413
  DestinationPrefixListId?: string;
@@ -7641,6 +7641,68 @@ export interface CreateCapacityReservationResult {
7641
7641
  */
7642
7642
  CapacityReservation?: CapacityReservation;
7643
7643
  }
7644
+ /**
7645
+ * @public
7646
+ */
7647
+ export interface CreateCapacityReservationBySplittingRequest {
7648
+ /**
7649
+ * <p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
7650
+ * @public
7651
+ */
7652
+ DryRun?: boolean;
7653
+ /**
7654
+ * <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensure Idempotency</a>.</p>
7655
+ * @public
7656
+ */
7657
+ ClientToken?: string;
7658
+ /**
7659
+ * <p>
7660
+ * The ID of the Capacity Reservation from which you want to split the available capacity.
7661
+ * </p>
7662
+ * @public
7663
+ */
7664
+ SourceCapacityReservationId: string | undefined;
7665
+ /**
7666
+ * <p>
7667
+ * The number of instances to split from the source Capacity Reservation.
7668
+ * </p>
7669
+ * @public
7670
+ */
7671
+ InstanceCount: number | undefined;
7672
+ /**
7673
+ * <p>
7674
+ * The tags to apply to the new Capacity Reservation.
7675
+ * </p>
7676
+ * @public
7677
+ */
7678
+ TagSpecifications?: TagSpecification[];
7679
+ }
7680
+ /**
7681
+ * @public
7682
+ */
7683
+ export interface CreateCapacityReservationBySplittingResult {
7684
+ /**
7685
+ * <p>
7686
+ * Information about the source Capacity Reservation.
7687
+ * </p>
7688
+ * @public
7689
+ */
7690
+ SourceCapacityReservation?: CapacityReservation;
7691
+ /**
7692
+ * <p>
7693
+ * Information about the destination Capacity Reservation.
7694
+ * </p>
7695
+ * @public
7696
+ */
7697
+ DestinationCapacityReservation?: CapacityReservation;
7698
+ /**
7699
+ * <p>
7700
+ * The number of instances in the new Capacity Reservation. The number of instances in the source Capacity Reservation was reduced by this amount.
7701
+ * </p>
7702
+ * @public
7703
+ */
7704
+ InstanceCount?: number;
7705
+ }
7644
7706
  /**
7645
7707
  * @public
7646
7708
  * @enum
@@ -8537,104 +8599,6 @@ export interface ReservationFleetInstanceSpecification {
8537
8599
  */
8538
8600
  Priority?: number;
8539
8601
  }
8540
- /**
8541
- * @public
8542
- * @enum
8543
- */
8544
- export declare const FleetCapacityReservationTenancy: {
8545
- readonly default: "default";
8546
- };
8547
- /**
8548
- * @public
8549
- */
8550
- export type FleetCapacityReservationTenancy = (typeof FleetCapacityReservationTenancy)[keyof typeof FleetCapacityReservationTenancy];
8551
- /**
8552
- * @public
8553
- */
8554
- export interface CreateCapacityReservationFleetRequest {
8555
- /**
8556
- * <p>The strategy used by the Capacity Reservation Fleet to determine which of the specified
8557
- * instance types to use. Currently, only the <code>prioritized</code> allocation strategy
8558
- * is supported. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#allocation-strategy"> Allocation
8559
- * strategy</a> in the <i>Amazon EC2 User Guide</i>.</p>
8560
- * <p>Valid values: <code>prioritized</code>
8561
- * </p>
8562
- * @public
8563
- */
8564
- AllocationStrategy?: string;
8565
- /**
8566
- * <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensure Idempotency</a>.</p>
8567
- * @public
8568
- */
8569
- ClientToken?: string;
8570
- /**
8571
- * <p>Information about the instance types for which to reserve the capacity.</p>
8572
- * @public
8573
- */
8574
- InstanceTypeSpecifications: ReservationFleetInstanceSpecification[] | undefined;
8575
- /**
8576
- * <p>Indicates the tenancy of the Capacity Reservation Fleet. All Capacity Reservations
8577
- * in the Fleet inherit this tenancy. The Capacity Reservation Fleet can have one of
8578
- * the following tenancy settings:</p>
8579
- * <ul>
8580
- * <li>
8581
- * <p>
8582
- * <code>default</code> - The Capacity Reservation Fleet is created on hardware
8583
- * that is shared with other Amazon Web Services accounts.</p>
8584
- * </li>
8585
- * <li>
8586
- * <p>
8587
- * <code>dedicated</code> - The Capacity Reservations are created on single-tenant
8588
- * hardware that is dedicated to a single Amazon Web Services account.</p>
8589
- * </li>
8590
- * </ul>
8591
- * @public
8592
- */
8593
- Tenancy?: FleetCapacityReservationTenancy;
8594
- /**
8595
- * <p>The total number of capacity units to be reserved by the Capacity Reservation Fleet. This
8596
- * value, together with the instance type weights that you assign to each instance type
8597
- * used by the Fleet determine the number of instances for which the Fleet reserves
8598
- * capacity. Both values are based on units that make sense for your workload. For more
8599
- * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity">Total target
8600
- * capacity</a> in the <i>Amazon EC2 User Guide</i>.</p>
8601
- * @public
8602
- */
8603
- TotalTargetCapacity: number | undefined;
8604
- /**
8605
- * <p>The date and time at which the Capacity Reservation Fleet expires. When the Capacity
8606
- * Reservation Fleet expires, its state changes to <code>expired</code> and all of the Capacity
8607
- * Reservations in the Fleet expire.</p>
8608
- * <p>The Capacity Reservation Fleet expires within an hour after the specified time. For example,
8609
- * if you specify <code>5/31/2019</code>, <code>13:30:55</code>, the Capacity Reservation Fleet
8610
- * is guaranteed to expire between <code>13:30:55</code> and <code>14:30:55</code> on
8611
- * <code>5/31/2019</code>.
8612
- * </p>
8613
- * @public
8614
- */
8615
- EndDate?: Date;
8616
- /**
8617
- * <p>Indicates the type of instance launches that the Capacity Reservation Fleet accepts. All
8618
- * Capacity Reservations in the Fleet inherit this instance matching criteria.</p>
8619
- * <p>Currently, Capacity Reservation Fleets support <code>open</code> instance matching criteria
8620
- * only. This means that instances that have matching attributes (instance type, platform, and
8621
- * Availability Zone) run in the Capacity Reservations automatically. Instances do not need to
8622
- * explicitly target a Capacity Reservation Fleet to use its reserved capacity.</p>
8623
- * @public
8624
- */
8625
- InstanceMatchCriteria?: FleetInstanceMatchCriteria;
8626
- /**
8627
- * <p>The tags to assign to the Capacity Reservation Fleet. The tags are automatically assigned
8628
- * to the Capacity Reservations in the Fleet.</p>
8629
- * @public
8630
- */
8631
- TagSpecifications?: TagSpecification[];
8632
- /**
8633
- * <p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
8634
- * @public
8635
- */
8636
- DryRun?: boolean;
8637
- }
8638
8602
  /**
8639
8603
  * @internal
8640
8604
  */
@@ -1,4 +1,102 @@
1
- import { _InstanceType, AcceleratorCount, AcceleratorCountRequest, AcceleratorManufacturer, AcceleratorName, AcceleratorTotalMemoryMiB, AcceleratorTotalMemoryMiBRequest, AcceleratorType, AccessScopePath, AccessScopePathRequest, AddIpamOperatingRegion, AddPrefixListEntry, AddressFamily, AttachmentStatus, CapacityReservationFleetState, CapacityReservationInstancePlatform, FleetCapacityReservationTenancy, FleetInstanceMatchCriteria, InstanceEventWindow, NatGatewayAddress, PortRange, Protocol, ResourceType, SubnetIpv6CidrBlockAssociation, Tag, TagSpecification, UnsuccessfulItem, VpcCidrBlockAssociation, VpcIpv6CidrBlockAssociation, WeekDay } from "./models_0";
1
+ import { _InstanceType, AcceleratorCount, AcceleratorCountRequest, AcceleratorManufacturer, AcceleratorName, AcceleratorTotalMemoryMiB, AcceleratorTotalMemoryMiBRequest, AcceleratorType, AccessScopePath, AccessScopePathRequest, AddIpamOperatingRegion, AddPrefixListEntry, AddressFamily, AttachmentStatus, CapacityReservationFleetState, CapacityReservationInstancePlatform, FleetInstanceMatchCriteria, InstanceEventWindow, NatGatewayAddress, PortRange, Protocol, ReservationFleetInstanceSpecification, ResourceType, SubnetIpv6CidrBlockAssociation, Tag, TagSpecification, UnsuccessfulItem, VpcCidrBlockAssociation, VpcIpv6CidrBlockAssociation, WeekDay } from "./models_0";
2
+ /**
3
+ * @public
4
+ * @enum
5
+ */
6
+ export declare const FleetCapacityReservationTenancy: {
7
+ readonly default: "default";
8
+ };
9
+ /**
10
+ * @public
11
+ */
12
+ export type FleetCapacityReservationTenancy = (typeof FleetCapacityReservationTenancy)[keyof typeof FleetCapacityReservationTenancy];
13
+ /**
14
+ * @public
15
+ */
16
+ export interface CreateCapacityReservationFleetRequest {
17
+ /**
18
+ * <p>The strategy used by the Capacity Reservation Fleet to determine which of the specified
19
+ * instance types to use. Currently, only the <code>prioritized</code> allocation strategy
20
+ * is supported. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#allocation-strategy"> Allocation
21
+ * strategy</a> in the <i>Amazon EC2 User Guide</i>.</p>
22
+ * <p>Valid values: <code>prioritized</code>
23
+ * </p>
24
+ * @public
25
+ */
26
+ AllocationStrategy?: string;
27
+ /**
28
+ * <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensure Idempotency</a>.</p>
29
+ * @public
30
+ */
31
+ ClientToken?: string;
32
+ /**
33
+ * <p>Information about the instance types for which to reserve the capacity.</p>
34
+ * @public
35
+ */
36
+ InstanceTypeSpecifications: ReservationFleetInstanceSpecification[] | undefined;
37
+ /**
38
+ * <p>Indicates the tenancy of the Capacity Reservation Fleet. All Capacity Reservations
39
+ * in the Fleet inherit this tenancy. The Capacity Reservation Fleet can have one of
40
+ * the following tenancy settings:</p>
41
+ * <ul>
42
+ * <li>
43
+ * <p>
44
+ * <code>default</code> - The Capacity Reservation Fleet is created on hardware
45
+ * that is shared with other Amazon Web Services accounts.</p>
46
+ * </li>
47
+ * <li>
48
+ * <p>
49
+ * <code>dedicated</code> - The Capacity Reservations are created on single-tenant
50
+ * hardware that is dedicated to a single Amazon Web Services account.</p>
51
+ * </li>
52
+ * </ul>
53
+ * @public
54
+ */
55
+ Tenancy?: FleetCapacityReservationTenancy;
56
+ /**
57
+ * <p>The total number of capacity units to be reserved by the Capacity Reservation Fleet. This
58
+ * value, together with the instance type weights that you assign to each instance type
59
+ * used by the Fleet determine the number of instances for which the Fleet reserves
60
+ * capacity. Both values are based on units that make sense for your workload. For more
61
+ * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/crfleet-concepts.html#target-capacity">Total target
62
+ * capacity</a> in the <i>Amazon EC2 User Guide</i>.</p>
63
+ * @public
64
+ */
65
+ TotalTargetCapacity: number | undefined;
66
+ /**
67
+ * <p>The date and time at which the Capacity Reservation Fleet expires. When the Capacity
68
+ * Reservation Fleet expires, its state changes to <code>expired</code> and all of the Capacity
69
+ * Reservations in the Fleet expire.</p>
70
+ * <p>The Capacity Reservation Fleet expires within an hour after the specified time. For example,
71
+ * if you specify <code>5/31/2019</code>, <code>13:30:55</code>, the Capacity Reservation Fleet
72
+ * is guaranteed to expire between <code>13:30:55</code> and <code>14:30:55</code> on
73
+ * <code>5/31/2019</code>.
74
+ * </p>
75
+ * @public
76
+ */
77
+ EndDate?: Date;
78
+ /**
79
+ * <p>Indicates the type of instance launches that the Capacity Reservation Fleet accepts. All
80
+ * Capacity Reservations in the Fleet inherit this instance matching criteria.</p>
81
+ * <p>Currently, Capacity Reservation Fleets support <code>open</code> instance matching criteria
82
+ * only. This means that instances that have matching attributes (instance type, platform, and
83
+ * Availability Zone) run in the Capacity Reservations automatically. Instances do not need to
84
+ * explicitly target a Capacity Reservation Fleet to use its reserved capacity.</p>
85
+ * @public
86
+ */
87
+ InstanceMatchCriteria?: FleetInstanceMatchCriteria;
88
+ /**
89
+ * <p>The tags to assign to the Capacity Reservation Fleet. The tags are automatically assigned
90
+ * to the Capacity Reservations in the Fleet.</p>
91
+ * @public
92
+ */
93
+ TagSpecifications?: TagSpecification[];
94
+ /**
95
+ * <p>Checks whether you have the required permissions for the action, without actually making the request, and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
96
+ * @public
97
+ */
98
+ DryRun?: boolean;
99
+ }
2
100
  /**
3
101
  * <p>Information about a Capacity Reservation in a Capacity Reservation Fleet.</p>
4
102
  * @public
@@ -9977,155 +10075,6 @@ export interface CreateNetworkInsightsPathResult {
9977
10075
  */
9978
10076
  NetworkInsightsPath?: NetworkInsightsPath;
9979
10077
  }
9980
- /**
9981
- * @public
9982
- * @enum
9983
- */
9984
- export declare const NetworkInterfaceCreationType: {
9985
- readonly branch: "branch";
9986
- readonly efa: "efa";
9987
- readonly trunk: "trunk";
9988
- };
9989
- /**
9990
- * @public
9991
- */
9992
- export type NetworkInterfaceCreationType = (typeof NetworkInterfaceCreationType)[keyof typeof NetworkInterfaceCreationType];
9993
- /**
9994
- * @public
9995
- */
9996
- export interface CreateNetworkInterfaceRequest {
9997
- /**
9998
- * <p>A description for the network interface.</p>
9999
- * @public
10000
- */
10001
- Description?: string;
10002
- /**
10003
- * <p>Checks whether you have the required permissions for the action, without actually making the request,
10004
- * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
10005
- * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
10006
- * @public
10007
- */
10008
- DryRun?: boolean;
10009
- /**
10010
- * <p>The IDs of one or more security groups.</p>
10011
- * @public
10012
- */
10013
- Groups?: string[];
10014
- /**
10015
- * <p>The number of IPv6 addresses to assign to a network interface. Amazon EC2
10016
- * automatically selects the IPv6 addresses from the subnet range.</p>
10017
- * <p>You can't specify a count of IPv6 addresses using this parameter if you've specified
10018
- * one of the following: specific IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes.</p>
10019
- * <p>If your subnet has the <code>AssignIpv6AddressOnCreation</code> attribute set, you can
10020
- * override that setting by specifying 0 as the IPv6 address count.</p>
10021
- * @public
10022
- */
10023
- Ipv6AddressCount?: number;
10024
- /**
10025
- * <p>The IPv6 addresses from the IPv6 CIDR block range of your subnet.</p>
10026
- * <p>You can't specify IPv6 addresses using this parameter if you've specified one of the
10027
- * following: a count of IPv6 addresses, specific IPv6 prefixes, or a count of IPv6 prefixes.</p>
10028
- * @public
10029
- */
10030
- Ipv6Addresses?: InstanceIpv6Address[];
10031
- /**
10032
- * <p>The primary private IPv4 address of the network interface. If you don't specify an
10033
- * IPv4 address, Amazon EC2 selects one for you from the subnet's IPv4 CIDR range. If you
10034
- * specify an IP address, you cannot indicate any IP addresses specified in
10035
- * <code>privateIpAddresses</code> as primary (only one IP address can be designated as
10036
- * primary).</p>
10037
- * @public
10038
- */
10039
- PrivateIpAddress?: string;
10040
- /**
10041
- * <p>The private IPv4 addresses.</p>
10042
- * <p>You can't specify private IPv4 addresses if you've specified one of the following:
10043
- * a count of private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes.</p>
10044
- * @public
10045
- */
10046
- PrivateIpAddresses?: PrivateIpAddressSpecification[];
10047
- /**
10048
- * <p>The number of secondary private IPv4 addresses to assign to a network interface. When
10049
- * you specify a number of secondary IPv4 addresses, Amazon EC2 selects these IP addresses
10050
- * within the subnet's IPv4 CIDR range. You can't specify this option and specify more than
10051
- * one private IP address using <code>privateIpAddresses</code>.</p>
10052
- * <p>You can't specify a count of private IPv4 addresses if you've specified one of the following:
10053
- * specific private IPv4 addresses, specific IPv4 prefixes, or a count of IPv4 prefixes.</p>
10054
- * @public
10055
- */
10056
- SecondaryPrivateIpAddressCount?: number;
10057
- /**
10058
- * <p>The IPv4 prefixes assigned to the network interface.</p>
10059
- * <p>You can't specify IPv4 prefixes if you've specified one of the following:
10060
- * a count of IPv4 prefixes, specific private IPv4 addresses, or a count of private IPv4 addresses.</p>
10061
- * @public
10062
- */
10063
- Ipv4Prefixes?: Ipv4PrefixSpecificationRequest[];
10064
- /**
10065
- * <p>The number of IPv4 prefixes that Amazon Web Services automatically assigns to the network interface.</p>
10066
- * <p>You can't specify a count of IPv4 prefixes if you've specified one of the following:
10067
- * specific IPv4 prefixes, specific private IPv4 addresses, or a count of private IPv4
10068
- * addresses.</p>
10069
- * @public
10070
- */
10071
- Ipv4PrefixCount?: number;
10072
- /**
10073
- * <p>The IPv6 prefixes assigned to the network interface.</p>
10074
- * <p>You can't specify IPv6 prefixes if you've specified one of the following:
10075
- * a count of IPv6 prefixes, specific IPv6 addresses, or a count of IPv6 addresses.</p>
10076
- * @public
10077
- */
10078
- Ipv6Prefixes?: Ipv6PrefixSpecificationRequest[];
10079
- /**
10080
- * <p>The number of IPv6 prefixes that Amazon Web Services automatically assigns to the network interface.</p>
10081
- * <p>You can't specify a count of IPv6 prefixes if you've specified one of the following:
10082
- * specific IPv6 prefixes, specific IPv6 addresses, or a count of IPv6 addresses.</p>
10083
- * @public
10084
- */
10085
- Ipv6PrefixCount?: number;
10086
- /**
10087
- * <p>The type of network interface. The default is <code>interface</code>.</p>
10088
- * <p>The only supported values are <code>interface</code>, <code>efa</code>, and <code>trunk</code>.</p>
10089
- * @public
10090
- */
10091
- InterfaceType?: NetworkInterfaceCreationType;
10092
- /**
10093
- * <p>The ID of the subnet to associate with the network interface.</p>
10094
- * @public
10095
- */
10096
- SubnetId: string | undefined;
10097
- /**
10098
- * <p>The tags to apply to the new network interface.</p>
10099
- * @public
10100
- */
10101
- TagSpecifications?: TagSpecification[];
10102
- /**
10103
- * <p>Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see <a href="https://docs.aws.amazon.com/ec2/latest/devguide/ec2-api-idempotency.html">Ensuring idempotency</a>.</p>
10104
- * @public
10105
- */
10106
- ClientToken?: string;
10107
- /**
10108
- * <p>If you’re creating a network interface in a dual-stack or IPv6-only subnet, you have
10109
- * the option to assign a primary IPv6 IP address. A primary IPv6 address is an IPv6 GUA
10110
- * address associated with an ENI that you have enabled to use a primary IPv6 address. Use this option if the instance that
10111
- * this ENI will be attached to relies on its IPv6 address not changing. Amazon Web Services
10112
- * will automatically assign an IPv6 address associated with the ENI attached to your
10113
- * instance to be the primary IPv6 address. Once you enable an IPv6 GUA address to be a
10114
- * primary IPv6, you cannot disable it. When you enable an IPv6 GUA address to be a primary
10115
- * IPv6, the first IPv6 GUA will be made the primary IPv6 address until the instance is
10116
- * terminated or the network interface is detached. If you have multiple IPv6 addresses
10117
- * associated with an ENI attached to your instance and you enable a primary IPv6 address,
10118
- * the first IPv6 GUA address associated with the ENI becomes the primary IPv6
10119
- * address.</p>
10120
- * @public
10121
- */
10122
- EnablePrimaryIpv6?: boolean;
10123
- /**
10124
- * <p>A connection tracking specification for the network interface.</p>
10125
- * @public
10126
- */
10127
- ConnectionTrackingSpecification?: ConnectionTrackingSpecificationRequest;
10128
- }
10129
10078
  /**
10130
10079
  * @internal
10131
10080
  */