@aws-sdk/client-ec2 3.540.0 → 3.541.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 (38) hide show
  1. package/README.md +16 -0
  2. package/dist-cjs/index.js +182 -15
  3. package/dist-es/EC2.js +4 -0
  4. package/dist-es/commands/GetInstanceMetadataDefaultsCommand.js +24 -0
  5. package/dist-es/commands/ModifyInstanceMetadataDefaultsCommand.js +24 -0
  6. package/dist-es/commands/index.js +2 -0
  7. package/dist-es/models/models_5.js +0 -11
  8. package/dist-es/models/models_6.js +26 -0
  9. package/dist-es/protocols/Aws_ec2.js +109 -3
  10. package/dist-types/EC2.d.ts +16 -0
  11. package/dist-types/EC2Client.d.ts +4 -2
  12. package/dist-types/commands/GetInstanceMetadataDefaultsCommand.d.ts +68 -0
  13. package/dist-types/commands/ModifyInstanceMetadataDefaultsCommand.d.ts +71 -0
  14. package/dist-types/commands/PurchaseHostReservationCommand.d.ts +2 -1
  15. package/dist-types/commands/PurchaseReservedInstancesOfferingCommand.d.ts +1 -1
  16. package/dist-types/commands/PurchaseScheduledInstancesCommand.d.ts +1 -1
  17. package/dist-types/commands/RebootInstancesCommand.d.ts +1 -1
  18. package/dist-types/commands/index.d.ts +2 -0
  19. package/dist-types/models/models_3.d.ts +1 -2
  20. package/dist-types/models/models_4.d.ts +5 -13
  21. package/dist-types/models/models_5.d.ts +67 -52
  22. package/dist-types/models/models_6.d.ts +171 -167
  23. package/dist-types/models/models_7.d.ts +189 -17
  24. package/dist-types/protocols/Aws_ec2.d.ts +18 -0
  25. package/dist-types/ts3.4/EC2.d.ts +36 -0
  26. package/dist-types/ts3.4/EC2Client.d.ts +12 -0
  27. package/dist-types/ts3.4/commands/GetInstanceMetadataDefaultsCommand.d.ts +39 -0
  28. package/dist-types/ts3.4/commands/ModifyInstanceMetadataDefaultsCommand.d.ts +39 -0
  29. package/dist-types/ts3.4/commands/PurchaseHostReservationCommand.d.ts +2 -4
  30. package/dist-types/ts3.4/commands/PurchaseReservedInstancesOfferingCommand.d.ts +1 -1
  31. package/dist-types/ts3.4/commands/PurchaseScheduledInstancesCommand.d.ts +1 -1
  32. package/dist-types/ts3.4/commands/RebootInstancesCommand.d.ts +1 -1
  33. package/dist-types/ts3.4/commands/index.d.ts +2 -0
  34. package/dist-types/ts3.4/models/models_5.d.ts +15 -21
  35. package/dist-types/ts3.4/models/models_6.d.ts +52 -42
  36. package/dist-types/ts3.4/models/models_7.d.ts +40 -0
  37. package/dist-types/ts3.4/protocols/Aws_ec2.d.ts +24 -0
  38. package/package.json +1 -1
@@ -2,8 +2,59 @@ import { _InstanceType, AccessScopeAnalysisFinding, AddedPrincipal, AddIpamOpera
2
2
  import { AttributeValue, CapacityReservationPreference, CapacityReservationTarget, ClientConnectOptions, ClientLoginBannerOptions, ConnectionLogOptions, ConnectionTrackingSpecificationRequest, DiskImageFormat, FleetExcessCapacityTerminationPolicy, FleetLaunchTemplateConfigRequest, HostnameType, InstanceEventWindowTimeRangeRequest, InstanceRequirementsRequest, Ipam, IpamPool, IpamResourceDiscovery, IpamResourceTag, IpamScope, IpamTier, LaunchTemplate, LocalGatewayRoute, ManagedPrefixList, NetworkInsightsAccessScopeContent, Placement, PlatformValues, RequestIpamResourceTag, ResponseLaunchTemplateData, SelfServicePortal, ShutdownBehavior, TargetCapacitySpecificationRequest, TargetCapacityUnitType, VolumeType } from "./models_1";
3
3
  import { AutoAcceptSharedAttachmentsValue, DefaultRouteTableAssociationValue, DefaultRouteTablePropagationValue, DnsOptionsSpecification, IKEVersionsRequestListValue, IpAddressType, PayerResponsibility, Phase1DHGroupNumbersRequestListValue, Phase1EncryptionAlgorithmsRequestListValue, Phase1IntegrityAlgorithmsRequestListValue, Phase2DHGroupNumbersRequestListValue, Phase2EncryptionAlgorithmsRequestListValue, Phase2IntegrityAlgorithmsRequestListValue, SubnetCidrReservation, SubnetConfiguration, TrafficDirection, TrafficMirrorFilter, TrafficMirrorFilterRule, TrafficMirrorNetworkService, TrafficMirrorPortRangeRequest, TrafficMirrorRuleAction, TrafficMirrorSession, TransitGateway, TransitGatewayPrefixListReference, VerifiedAccessEndpoint, VerifiedAccessEndpointProtocol, VerifiedAccessGroup, VerifiedAccessSseSpecificationRequest, VpnConnection, VpnEcmpSupportValue, VpnTunnelLogOptionsSpecification } from "./models_2";
4
4
  import { ArchitectureValues, BootModeValues, Byoasn, ConversionTask, Filter, FpgaImageAttribute, FpgaImageAttributeName, ImportImageLicenseConfigurationResponse, IpamPoolCidr, LaunchPermission, PermissionGroup, SnapshotDetail, VirtualizationType } from "./models_3";
5
- import { AnalysisStatus, ArchitectureType, AttributeBooleanValue, CreateVolumePermission, ExcessCapacityTerminationPolicy, HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceStatusEvent, LaunchTemplateConfig, LockState, Monitoring, PublicIpv4PoolRange, ReservedInstancesConfiguration, ScheduledInstance, SnapshotAttributeName, SnapshotTaskDetail } from "./models_4";
6
- import { InstanceFamilyCreditSpecification, IpamComplianceStatus, IpamOverlapStatus, IpamPublicAddressAssociationStatus, IpamPublicAddressAwsService, IpamPublicAddressSecurityGroup, IpamPublicAddressTag, IpamPublicAddressType, Purchase, SnapshotBlockPublicAccessState, TransitGatewayPropagationState, UnlimitedSupportedInstanceFamily, VerifiedAccessInstanceLoggingConfiguration, VolumeModification } from "./models_5";
5
+ import { AnalysisStatus, ArchitectureType, AttributeBooleanValue, CreateVolumePermission, ExcessCapacityTerminationPolicy, HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceStatusEvent, LaunchTemplateConfig, LockState, Monitoring, PublicIpv4PoolRange, ReservedInstancesConfiguration, SnapshotAttributeName, SnapshotTaskDetail } from "./models_4";
6
+ import { InstanceFamilyCreditSpecification, IpamComplianceStatus, IpamOverlapStatus, IpamPublicAddressAssociationStatus, IpamPublicAddressType, SnapshotBlockPublicAccessState, TransitGatewayPropagationState, UnlimitedSupportedInstanceFamily, VerifiedAccessInstanceLoggingConfiguration, VolumeModification } from "./models_5";
7
+ /**
8
+ * <p>The security group that the resource with the public IP address is in.</p>
9
+ * @public
10
+ */
11
+ export interface IpamPublicAddressSecurityGroup {
12
+ /**
13
+ * <p>The security group's name.</p>
14
+ * @public
15
+ */
16
+ GroupName?: string;
17
+ /**
18
+ * <p>The security group's ID.</p>
19
+ * @public
20
+ */
21
+ GroupId?: string;
22
+ }
23
+ /**
24
+ * @public
25
+ * @enum
26
+ */
27
+ export declare const IpamPublicAddressAwsService: {
28
+ readonly AGA: "global-accelerator";
29
+ readonly DMS: "database-migration-service";
30
+ readonly EC2_LB: "load-balancer";
31
+ readonly ECS: "elastic-container-service";
32
+ readonly NAT_GATEWAY: "nat-gateway";
33
+ readonly OTHER: "other";
34
+ readonly RDS: "relational-database-service";
35
+ readonly REDSHIFT: "redshift";
36
+ readonly S2S_VPN: "site-to-site-vpn";
37
+ };
38
+ /**
39
+ * @public
40
+ */
41
+ export type IpamPublicAddressAwsService = (typeof IpamPublicAddressAwsService)[keyof typeof IpamPublicAddressAwsService];
42
+ /**
43
+ * <p>A tag for a public IP address discovered by IPAM.</p>
44
+ * @public
45
+ */
46
+ export interface IpamPublicAddressTag {
47
+ /**
48
+ * <p>The tag's key.</p>
49
+ * @public
50
+ */
51
+ Key?: string;
52
+ /**
53
+ * <p>The tag's value.</p>
54
+ * @public
55
+ */
56
+ Value?: string;
57
+ }
7
58
  /**
8
59
  * <p>Tags for a public IP address discovered by IPAM.</p>
9
60
  * @public
@@ -4632,6 +4683,108 @@ export interface ModifyInstanceMaintenanceOptionsResult {
4632
4683
  */
4633
4684
  AutoRecovery?: InstanceAutoRecoveryState;
4634
4685
  }
4686
+ /**
4687
+ * @public
4688
+ * @enum
4689
+ */
4690
+ export declare const DefaultInstanceMetadataEndpointState: {
4691
+ readonly disabled: "disabled";
4692
+ readonly enabled: "enabled";
4693
+ readonly no_preference: "no-preference";
4694
+ };
4695
+ /**
4696
+ * @public
4697
+ */
4698
+ export type DefaultInstanceMetadataEndpointState = (typeof DefaultInstanceMetadataEndpointState)[keyof typeof DefaultInstanceMetadataEndpointState];
4699
+ /**
4700
+ * @public
4701
+ * @enum
4702
+ */
4703
+ export declare const MetadataDefaultHttpTokensState: {
4704
+ readonly no_preference: "no-preference";
4705
+ readonly optional: "optional";
4706
+ readonly required: "required";
4707
+ };
4708
+ /**
4709
+ * @public
4710
+ */
4711
+ export type MetadataDefaultHttpTokensState = (typeof MetadataDefaultHttpTokensState)[keyof typeof MetadataDefaultHttpTokensState];
4712
+ /**
4713
+ * @public
4714
+ * @enum
4715
+ */
4716
+ export declare const DefaultInstanceMetadataTagsState: {
4717
+ readonly disabled: "disabled";
4718
+ readonly enabled: "enabled";
4719
+ readonly no_preference: "no-preference";
4720
+ };
4721
+ /**
4722
+ * @public
4723
+ */
4724
+ export type DefaultInstanceMetadataTagsState = (typeof DefaultInstanceMetadataTagsState)[keyof typeof DefaultInstanceMetadataTagsState];
4725
+ /**
4726
+ * @public
4727
+ */
4728
+ export interface ModifyInstanceMetadataDefaultsRequest {
4729
+ /**
4730
+ * <p>Indicates whether IMDSv2 is required.</p>
4731
+ * <ul>
4732
+ * <li>
4733
+ * <p>
4734
+ * <code>optional</code> – IMDSv2 is optional, which means that you can
4735
+ * use either IMDSv2 or IMDSv1.</p>
4736
+ * </li>
4737
+ * <li>
4738
+ * <p>
4739
+ * <code>required</code> – IMDSv2 is required, which means that IMDSv1 is
4740
+ * disabled, and you must use IMDSv2.</p>
4741
+ * </li>
4742
+ * </ul>
4743
+ * @public
4744
+ */
4745
+ HttpTokens?: MetadataDefaultHttpTokensState;
4746
+ /**
4747
+ * <p>The maximum number of hops that the metadata token can travel.</p>
4748
+ * <p>Minimum: <code>1</code>
4749
+ * </p>
4750
+ * <p>Maximum: <code>64</code>
4751
+ * </p>
4752
+ * @public
4753
+ */
4754
+ HttpPutResponseHopLimit?: number;
4755
+ /**
4756
+ * <p>Enables or disables the IMDS endpoint on an instance. When disabled, the instance
4757
+ * metadata can't be accessed.</p>
4758
+ * @public
4759
+ */
4760
+ HttpEndpoint?: DefaultInstanceMetadataEndpointState;
4761
+ /**
4762
+ * <p>Enables or disables access to an instance's tags from the instance metadata. For more
4763
+ * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS">Work with
4764
+ * instance tags using the instance metadata</a> in the
4765
+ * <i>Amazon EC2 User Guide</i>.</p>
4766
+ * @public
4767
+ */
4768
+ InstanceMetadataTags?: DefaultInstanceMetadataTagsState;
4769
+ /**
4770
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
4771
+ * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
4772
+ * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
4773
+ * @public
4774
+ */
4775
+ DryRun?: boolean;
4776
+ }
4777
+ /**
4778
+ * @public
4779
+ */
4780
+ export interface ModifyInstanceMetadataDefaultsResult {
4781
+ /**
4782
+ * <p>If the request succeeds, the response returns <code>true</code>. If the request fails,
4783
+ * no response is returned, and instead an error message is returned.</p>
4784
+ * @public
4785
+ */
4786
+ Return?: boolean;
4787
+ }
4635
4788
  /**
4636
4789
  * @public
4637
4790
  */
@@ -4660,8 +4813,22 @@ export interface ModifyInstanceMetadataOptionsRequest {
4660
4813
  * not available.</p>
4661
4814
  * </li>
4662
4815
  * </ul>
4663
- * <p>Default: If the value of <code>ImdsSupport</code> for the Amazon Machine Image (AMI)
4664
- * for your instance is <code>v2.0</code>, the default is <code>required</code>.</p>
4816
+ * <p>Default:</p>
4817
+ * <ul>
4818
+ * <li>
4819
+ * <p>If the value of <code>ImdsSupport</code> for the Amazon Machine Image (AMI)
4820
+ * for your instance is <code>v2.0</code> and the account level default is set to
4821
+ * <code>no-preference</code>, the default is <code>required</code>.</p>
4822
+ * </li>
4823
+ * <li>
4824
+ * <p>If the value of <code>ImdsSupport</code> for the Amazon Machine Image (AMI)
4825
+ * for your instance is <code>v2.0</code>, but the account level default is set to
4826
+ * <code>V1 or V2</code>, the default is <code>optional</code>.</p>
4827
+ * </li>
4828
+ * </ul>
4829
+ * <p>The default value can also be affected by other combinations of parameters. For more
4830
+ * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-options.html#instance-metadata-options-order-of-precedence">Order of precedence for instance metadata options</a> in the
4831
+ * <i>Amazon EC2 User Guide</i>.</p>
4665
4832
  * @public
4666
4833
  */
4667
4834
  HttpTokens?: HttpTokensState;
@@ -8131,169 +8298,6 @@ export interface PurchaseHostReservationRequest {
8131
8298
  */
8132
8299
  TagSpecifications?: TagSpecification[];
8133
8300
  }
8134
- /**
8135
- * @public
8136
- */
8137
- export interface PurchaseHostReservationResult {
8138
- /**
8139
- * <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">Ensuring Idempotency</a>.</p>
8140
- * @public
8141
- */
8142
- ClientToken?: string;
8143
- /**
8144
- * <p>The currency in which the <code>totalUpfrontPrice</code> and
8145
- * <code>totalHourlyPrice</code> amounts are specified. At this time, the only
8146
- * supported currency is <code>USD</code>.</p>
8147
- * @public
8148
- */
8149
- CurrencyCode?: CurrencyCodeValues;
8150
- /**
8151
- * <p>Describes the details of the purchase.</p>
8152
- * @public
8153
- */
8154
- Purchase?: Purchase[];
8155
- /**
8156
- * <p>The total hourly price of the reservation calculated per hour.</p>
8157
- * @public
8158
- */
8159
- TotalHourlyPrice?: string;
8160
- /**
8161
- * <p>The total amount charged to your account when you purchase the reservation.</p>
8162
- * @public
8163
- */
8164
- TotalUpfrontPrice?: string;
8165
- }
8166
- /**
8167
- * <p>Describes the limit price of a Reserved Instance offering.</p>
8168
- * @public
8169
- */
8170
- export interface ReservedInstanceLimitPrice {
8171
- /**
8172
- * <p>Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).</p>
8173
- * @public
8174
- */
8175
- Amount?: number;
8176
- /**
8177
- * <p>The currency in which the <code>limitPrice</code> amount is specified.
8178
- * At this time, the only supported currency is <code>USD</code>.</p>
8179
- * @public
8180
- */
8181
- CurrencyCode?: CurrencyCodeValues;
8182
- }
8183
- /**
8184
- * <p>Contains the parameters for PurchaseReservedInstancesOffering.</p>
8185
- * @public
8186
- */
8187
- export interface PurchaseReservedInstancesOfferingRequest {
8188
- /**
8189
- * <p>The number of Reserved Instances to purchase.</p>
8190
- * @public
8191
- */
8192
- InstanceCount: number | undefined;
8193
- /**
8194
- * <p>The ID of the Reserved Instance offering to purchase.</p>
8195
- * @public
8196
- */
8197
- ReservedInstancesOfferingId: string | undefined;
8198
- /**
8199
- * <p>Checks whether you have the required permissions for the action, without actually making the request,
8200
- * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
8201
- * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
8202
- * @public
8203
- */
8204
- DryRun?: boolean;
8205
- /**
8206
- * <p>Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.</p>
8207
- * @public
8208
- */
8209
- LimitPrice?: ReservedInstanceLimitPrice;
8210
- /**
8211
- * <p>The time at which to purchase the Reserved Instance, in UTC format (for example, <i>YYYY</i>-<i>MM</i>-<i>DD</i>T<i>HH</i>:<i>MM</i>:<i>SS</i>Z).</p>
8212
- * @public
8213
- */
8214
- PurchaseTime?: Date;
8215
- }
8216
- /**
8217
- * <p>Contains the output of PurchaseReservedInstancesOffering.</p>
8218
- * @public
8219
- */
8220
- export interface PurchaseReservedInstancesOfferingResult {
8221
- /**
8222
- * <p>The IDs of the purchased Reserved Instances. If your purchase crosses into a discounted
8223
- * pricing tier, the final Reserved Instances IDs might change. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-reserved-instances-application.html#crossing-pricing-tiers">Crossing
8224
- * pricing tiers</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
8225
- * @public
8226
- */
8227
- ReservedInstancesId?: string;
8228
- }
8229
- /**
8230
- * <p>Describes a request to purchase Scheduled Instances.</p>
8231
- * @public
8232
- */
8233
- export interface PurchaseRequest {
8234
- /**
8235
- * <p>The number of instances.</p>
8236
- * @public
8237
- */
8238
- InstanceCount: number | undefined;
8239
- /**
8240
- * <p>The purchase token.</p>
8241
- * @public
8242
- */
8243
- PurchaseToken: string | undefined;
8244
- }
8245
- /**
8246
- * <p>Contains the parameters for PurchaseScheduledInstances.</p>
8247
- * @public
8248
- */
8249
- export interface PurchaseScheduledInstancesRequest {
8250
- /**
8251
- * <p>Unique, case-sensitive identifier that ensures the idempotency of the request.
8252
- * For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring Idempotency</a>.</p>
8253
- * @public
8254
- */
8255
- ClientToken?: string;
8256
- /**
8257
- * <p>Checks whether you have the required permissions for the action, without actually making the request,
8258
- * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
8259
- * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
8260
- * @public
8261
- */
8262
- DryRun?: boolean;
8263
- /**
8264
- * <p>The purchase requests.</p>
8265
- * @public
8266
- */
8267
- PurchaseRequests: PurchaseRequest[] | undefined;
8268
- }
8269
- /**
8270
- * <p>Contains the output of PurchaseScheduledInstances.</p>
8271
- * @public
8272
- */
8273
- export interface PurchaseScheduledInstancesResult {
8274
- /**
8275
- * <p>Information about the Scheduled Instances.</p>
8276
- * @public
8277
- */
8278
- ScheduledInstanceSet?: ScheduledInstance[];
8279
- }
8280
- /**
8281
- * @public
8282
- */
8283
- export interface RebootInstancesRequest {
8284
- /**
8285
- * <p>The instance IDs.</p>
8286
- * @public
8287
- */
8288
- InstanceIds: string[] | undefined;
8289
- /**
8290
- * <p>Checks whether you have the required permissions for the action, without actually making the request,
8291
- * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
8292
- * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
8293
- * @public
8294
- */
8295
- DryRun?: boolean;
8296
- }
8297
8301
  /**
8298
8302
  * @internal
8299
8303
  */
@@ -1,9 +1,173 @@
1
- import { _InstanceType, AddressAttribute, AddressAttributeName, ByoipCidr, ClientVpnAuthorizationRuleStatus, IamInstanceProfileAssociation, IamInstanceProfileSpecification, IpPermission, NatGatewayAddress, PortRange, RouteTableAssociationState, TagSpecification, TransitGatewayAttachmentResourceType, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, UnsuccessfulItem } from "./models_0";
1
+ import { _InstanceType, AddressAttribute, AddressAttributeName, ByoipCidr, ClientVpnAuthorizationRuleStatus, CurrencyCodeValues, IamInstanceProfileAssociation, IamInstanceProfileSpecification, IpPermission, NatGatewayAddress, PortRange, RouteTableAssociationState, TagSpecification, TransitGatewayAttachmentResourceType, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, UnsuccessfulItem } from "./models_0";
2
2
  import { AmdSevSnpSpecification, BlockDeviceMapping, CreditSpecificationRequest, ElasticGpuSpecification, HostnameType, IcmpTypeCode, InstanceInterruptionBehavior, InstanceIpv6Address, LocalGatewayRoute, ManagedPrefixList, MarketType, Placement, RuleAction, ShutdownBehavior, SpotInstanceType } from "./models_1";
3
3
  import { SnapshotState, SSEType, TransitGatewayRoute } from "./models_2";
4
4
  import { ArchitectureValues, BootModeValues, ClientVpnConnectionStatus, Filter, ImdsSupportValues, InstanceTagNotificationAttribute, TpmSupportValues } from "./models_3";
5
- import { HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, InstanceState, NetworkInsightsAccessScopeAnalysis, NetworkInsightsAnalysis, RunInstancesMonitoringEnabled, SnapshotAttributeName, SpotFleetRequestConfigData, SpotInstanceRequest, SpotPlacement } from "./models_4";
5
+ import { HttpTokensState, InstanceAttributeName, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, InstanceState, NetworkInsightsAccessScopeAnalysis, NetworkInsightsAnalysis, RunInstancesMonitoringEnabled, ScheduledInstance, SnapshotAttributeName, SpotFleetRequestConfigData, SpotInstanceRequest, SpotPlacement } from "./models_4";
6
+ import { Purchase } from "./models_5";
6
7
  import { CapacityReservationSpecification, InstanceMonitoring, Status } from "./models_6";
8
+ /**
9
+ * @public
10
+ */
11
+ export interface PurchaseHostReservationResult {
12
+ /**
13
+ * <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">Ensuring Idempotency</a>.</p>
14
+ * @public
15
+ */
16
+ ClientToken?: string;
17
+ /**
18
+ * <p>The currency in which the <code>totalUpfrontPrice</code> and
19
+ * <code>totalHourlyPrice</code> amounts are specified. At this time, the only
20
+ * supported currency is <code>USD</code>.</p>
21
+ * @public
22
+ */
23
+ CurrencyCode?: CurrencyCodeValues;
24
+ /**
25
+ * <p>Describes the details of the purchase.</p>
26
+ * @public
27
+ */
28
+ Purchase?: Purchase[];
29
+ /**
30
+ * <p>The total hourly price of the reservation calculated per hour.</p>
31
+ * @public
32
+ */
33
+ TotalHourlyPrice?: string;
34
+ /**
35
+ * <p>The total amount charged to your account when you purchase the reservation.</p>
36
+ * @public
37
+ */
38
+ TotalUpfrontPrice?: string;
39
+ }
40
+ /**
41
+ * <p>Describes the limit price of a Reserved Instance offering.</p>
42
+ * @public
43
+ */
44
+ export interface ReservedInstanceLimitPrice {
45
+ /**
46
+ * <p>Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).</p>
47
+ * @public
48
+ */
49
+ Amount?: number;
50
+ /**
51
+ * <p>The currency in which the <code>limitPrice</code> amount is specified.
52
+ * At this time, the only supported currency is <code>USD</code>.</p>
53
+ * @public
54
+ */
55
+ CurrencyCode?: CurrencyCodeValues;
56
+ }
57
+ /**
58
+ * <p>Contains the parameters for PurchaseReservedInstancesOffering.</p>
59
+ * @public
60
+ */
61
+ export interface PurchaseReservedInstancesOfferingRequest {
62
+ /**
63
+ * <p>The number of Reserved Instances to purchase.</p>
64
+ * @public
65
+ */
66
+ InstanceCount: number | undefined;
67
+ /**
68
+ * <p>The ID of the Reserved Instance offering to purchase.</p>
69
+ * @public
70
+ */
71
+ ReservedInstancesOfferingId: string | undefined;
72
+ /**
73
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
74
+ * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
75
+ * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
76
+ * @public
77
+ */
78
+ DryRun?: boolean;
79
+ /**
80
+ * <p>Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.</p>
81
+ * @public
82
+ */
83
+ LimitPrice?: ReservedInstanceLimitPrice;
84
+ /**
85
+ * <p>The time at which to purchase the Reserved Instance, in UTC format (for example, <i>YYYY</i>-<i>MM</i>-<i>DD</i>T<i>HH</i>:<i>MM</i>:<i>SS</i>Z).</p>
86
+ * @public
87
+ */
88
+ PurchaseTime?: Date;
89
+ }
90
+ /**
91
+ * <p>Contains the output of PurchaseReservedInstancesOffering.</p>
92
+ * @public
93
+ */
94
+ export interface PurchaseReservedInstancesOfferingResult {
95
+ /**
96
+ * <p>The IDs of the purchased Reserved Instances. If your purchase crosses into a discounted
97
+ * pricing tier, the final Reserved Instances IDs might change. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/concepts-reserved-instances-application.html#crossing-pricing-tiers">Crossing
98
+ * pricing tiers</a> in the <i>Amazon Elastic Compute Cloud User Guide</i>.</p>
99
+ * @public
100
+ */
101
+ ReservedInstancesId?: string;
102
+ }
103
+ /**
104
+ * <p>Describes a request to purchase Scheduled Instances.</p>
105
+ * @public
106
+ */
107
+ export interface PurchaseRequest {
108
+ /**
109
+ * <p>The number of instances.</p>
110
+ * @public
111
+ */
112
+ InstanceCount: number | undefined;
113
+ /**
114
+ * <p>The purchase token.</p>
115
+ * @public
116
+ */
117
+ PurchaseToken: string | undefined;
118
+ }
119
+ /**
120
+ * <p>Contains the parameters for PurchaseScheduledInstances.</p>
121
+ * @public
122
+ */
123
+ export interface PurchaseScheduledInstancesRequest {
124
+ /**
125
+ * <p>Unique, case-sensitive identifier that ensures the idempotency of the request.
126
+ * For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring Idempotency</a>.</p>
127
+ * @public
128
+ */
129
+ ClientToken?: string;
130
+ /**
131
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
132
+ * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
133
+ * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
134
+ * @public
135
+ */
136
+ DryRun?: boolean;
137
+ /**
138
+ * <p>The purchase requests.</p>
139
+ * @public
140
+ */
141
+ PurchaseRequests: PurchaseRequest[] | undefined;
142
+ }
143
+ /**
144
+ * <p>Contains the output of PurchaseScheduledInstances.</p>
145
+ * @public
146
+ */
147
+ export interface PurchaseScheduledInstancesResult {
148
+ /**
149
+ * <p>Information about the Scheduled Instances.</p>
150
+ * @public
151
+ */
152
+ ScheduledInstanceSet?: ScheduledInstance[];
153
+ }
154
+ /**
155
+ * @public
156
+ */
157
+ export interface RebootInstancesRequest {
158
+ /**
159
+ * <p>The instance IDs.</p>
160
+ * @public
161
+ */
162
+ InstanceIds: string[] | undefined;
163
+ /**
164
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
165
+ * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
166
+ * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
167
+ * @public
168
+ */
169
+ DryRun?: boolean;
170
+ }
7
171
  /**
8
172
  * <p>Contains the parameters for RegisterImage.</p>
9
173
  * @public
@@ -2147,29 +2311,36 @@ export interface InstanceMetadataOptionsRequest {
2147
2311
  * <ul>
2148
2312
  * <li>
2149
2313
  * <p>
2150
- * <code>optional</code> - IMDSv2 is optional. You can choose whether to send a
2151
- * session token in your instance metadata retrieval requests. If you retrieve
2152
- * IAM role credentials without a session token, you receive the IMDSv1 role
2153
- * credentials. If you retrieve IAM role credentials using a valid session token,
2154
- * you receive the IMDSv2 role credentials.</p>
2314
+ * <code>optional</code> - IMDSv2 is optional, which means that you can use
2315
+ * either IMDSv2 or IMDSv1.</p>
2155
2316
  * </li>
2156
2317
  * <li>
2157
2318
  * <p>
2158
- * <code>required</code> - IMDSv2 is required. You must send a session token
2159
- * in your instance metadata retrieval requests. With this option, retrieving the
2160
- * IAM role credentials always returns IMDSv2 credentials; IMDSv1 credentials are
2161
- * not available.</p>
2319
+ * <code>required</code> - IMDSv2 is required, which means that IMDSv1 is
2320
+ * disabled, and you must use IMDSv2.</p>
2162
2321
  * </li>
2163
2322
  * </ul>
2164
- * <p>Default: If the value of <code>ImdsSupport</code> for the Amazon Machine Image (AMI)
2165
- * for your instance is <code>v2.0</code>, the default is <code>required</code>.</p>
2323
+ * <p>Default:</p>
2324
+ * <ul>
2325
+ * <li>
2326
+ * <p>If the value of <code>ImdsSupport</code> for the Amazon Machine Image (AMI)
2327
+ * for your instance is <code>v2.0</code> and the account level default is set to
2328
+ * <code>no-preference</code>, the default is <code>required</code>.</p>
2329
+ * </li>
2330
+ * <li>
2331
+ * <p>If the value of <code>ImdsSupport</code> for the Amazon Machine Image (AMI)
2332
+ * for your instance is <code>v2.0</code>, but the account level default is set to
2333
+ * <code>V1 or V2</code>, the default is <code>optional</code>.</p>
2334
+ * </li>
2335
+ * </ul>
2336
+ * <p>The default value can also be affected by other combinations of parameters. For more
2337
+ * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-options.html#instance-metadata-options-order-of-precedence">Order of precedence for instance metadata options</a> in the
2338
+ * <i>Amazon EC2 User Guide</i>.</p>
2166
2339
  * @public
2167
2340
  */
2168
2341
  HttpTokens?: HttpTokensState;
2169
2342
  /**
2170
- * <p>The desired HTTP PUT response hop limit for instance metadata requests. The larger the
2171
- * number, the further instance metadata requests can travel.</p>
2172
- * <p>Default: 1</p>
2343
+ * <p>The maximum number of hops that the metadata token can travel.</p>
2173
2344
  * <p>Possible values: Integers from 1 to 64</p>
2174
2345
  * @public
2175
2346
  */
@@ -3243,7 +3414,8 @@ export interface SearchTransitGatewayRoutesRequest {
3243
3414
  */
3244
3415
  Filters: Filter[] | undefined;
3245
3416
  /**
3246
- * <p>The maximum number of routes to return.</p>
3417
+ * <p>The maximum number of routes to return. If a value is not provided, the default is
3418
+ * 1000.</p>
3247
3419
  * @public
3248
3420
  */
3249
3421
  MaxResults?: number;
@@ -440,6 +440,7 @@ import { GetFlowLogsIntegrationTemplateCommandInput, GetFlowLogsIntegrationTempl
440
440
  import { GetGroupsForCapacityReservationCommandInput, GetGroupsForCapacityReservationCommandOutput } from "../commands/GetGroupsForCapacityReservationCommand";
441
441
  import { GetHostReservationPurchasePreviewCommandInput, GetHostReservationPurchasePreviewCommandOutput } from "../commands/GetHostReservationPurchasePreviewCommand";
442
442
  import { GetImageBlockPublicAccessStateCommandInput, GetImageBlockPublicAccessStateCommandOutput } from "../commands/GetImageBlockPublicAccessStateCommand";
443
+ import { GetInstanceMetadataDefaultsCommandInput, GetInstanceMetadataDefaultsCommandOutput } from "../commands/GetInstanceMetadataDefaultsCommand";
443
444
  import { GetInstanceTypesFromInstanceRequirementsCommandInput, GetInstanceTypesFromInstanceRequirementsCommandOutput } from "../commands/GetInstanceTypesFromInstanceRequirementsCommand";
444
445
  import { GetInstanceUefiDataCommandInput, GetInstanceUefiDataCommandOutput } from "../commands/GetInstanceUefiDataCommand";
445
446
  import { GetIpamAddressHistoryCommandInput, GetIpamAddressHistoryCommandOutput } from "../commands/GetIpamAddressHistoryCommand";
@@ -501,6 +502,7 @@ import { ModifyInstanceCreditSpecificationCommandInput, ModifyInstanceCreditSpec
501
502
  import { ModifyInstanceEventStartTimeCommandInput, ModifyInstanceEventStartTimeCommandOutput } from "../commands/ModifyInstanceEventStartTimeCommand";
502
503
  import { ModifyInstanceEventWindowCommandInput, ModifyInstanceEventWindowCommandOutput } from "../commands/ModifyInstanceEventWindowCommand";
503
504
  import { ModifyInstanceMaintenanceOptionsCommandInput, ModifyInstanceMaintenanceOptionsCommandOutput } from "../commands/ModifyInstanceMaintenanceOptionsCommand";
505
+ import { ModifyInstanceMetadataDefaultsCommandInput, ModifyInstanceMetadataDefaultsCommandOutput } from "../commands/ModifyInstanceMetadataDefaultsCommand";
504
506
  import { ModifyInstanceMetadataOptionsCommandInput, ModifyInstanceMetadataOptionsCommandOutput } from "../commands/ModifyInstanceMetadataOptionsCommand";
505
507
  import { ModifyInstancePlacementCommandInput, ModifyInstancePlacementCommandOutput } from "../commands/ModifyInstancePlacementCommand";
506
508
  import { ModifyIpamCommandInput, ModifyIpamCommandOutput } from "../commands/ModifyIpamCommand";
@@ -2376,6 +2378,10 @@ export declare const se_GetHostReservationPurchasePreviewCommand: (input: GetHos
2376
2378
  * serializeAws_ec2GetImageBlockPublicAccessStateCommand
2377
2379
  */
2378
2380
  export declare const se_GetImageBlockPublicAccessStateCommand: (input: GetImageBlockPublicAccessStateCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
2381
+ /**
2382
+ * serializeAws_ec2GetInstanceMetadataDefaultsCommand
2383
+ */
2384
+ export declare const se_GetInstanceMetadataDefaultsCommand: (input: GetInstanceMetadataDefaultsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
2379
2385
  /**
2380
2386
  * serializeAws_ec2GetInstanceTypesFromInstanceRequirementsCommand
2381
2387
  */
@@ -2620,6 +2626,10 @@ export declare const se_ModifyInstanceEventWindowCommand: (input: ModifyInstance
2620
2626
  * serializeAws_ec2ModifyInstanceMaintenanceOptionsCommand
2621
2627
  */
2622
2628
  export declare const se_ModifyInstanceMaintenanceOptionsCommand: (input: ModifyInstanceMaintenanceOptionsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
2629
+ /**
2630
+ * serializeAws_ec2ModifyInstanceMetadataDefaultsCommand
2631
+ */
2632
+ export declare const se_ModifyInstanceMetadataDefaultsCommand: (input: ModifyInstanceMetadataDefaultsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
2623
2633
  /**
2624
2634
  * serializeAws_ec2ModifyInstanceMetadataOptionsCommand
2625
2635
  */
@@ -4840,6 +4850,10 @@ export declare const de_GetHostReservationPurchasePreviewCommand: (output: __Htt
4840
4850
  * deserializeAws_ec2GetImageBlockPublicAccessStateCommand
4841
4851
  */
4842
4852
  export declare const de_GetImageBlockPublicAccessStateCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetImageBlockPublicAccessStateCommandOutput>;
4853
+ /**
4854
+ * deserializeAws_ec2GetInstanceMetadataDefaultsCommand
4855
+ */
4856
+ export declare const de_GetInstanceMetadataDefaultsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<GetInstanceMetadataDefaultsCommandOutput>;
4843
4857
  /**
4844
4858
  * deserializeAws_ec2GetInstanceTypesFromInstanceRequirementsCommand
4845
4859
  */
@@ -5084,6 +5098,10 @@ export declare const de_ModifyInstanceEventWindowCommand: (output: __HttpRespons
5084
5098
  * deserializeAws_ec2ModifyInstanceMaintenanceOptionsCommand
5085
5099
  */
5086
5100
  export declare const de_ModifyInstanceMaintenanceOptionsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifyInstanceMaintenanceOptionsCommandOutput>;
5101
+ /**
5102
+ * deserializeAws_ec2ModifyInstanceMetadataDefaultsCommand
5103
+ */
5104
+ export declare const de_ModifyInstanceMetadataDefaultsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifyInstanceMetadataDefaultsCommandOutput>;
5087
5105
  /**
5088
5106
  * deserializeAws_ec2ModifyInstanceMetadataOptionsCommand
5089
5107
  */