@aws-sdk/client-ec2 3.42.0 → 3.43.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 (83) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist-cjs/EC2.js +15 -0
  3. package/dist-cjs/commands/CreateVpcEndpointConnectionNotificationCommand.js +2 -1
  4. package/dist-cjs/commands/DescribeHostReservationsCommand.js +2 -1
  5. package/dist-cjs/commands/DescribeHostsCommand.js +1 -2
  6. package/dist-cjs/commands/DescribeStaleSecurityGroupsCommand.js +2 -1
  7. package/dist-cjs/commands/DescribeStoreImageTasksCommand.js +3 -3
  8. package/dist-cjs/commands/DescribeSubnetsCommand.js +1 -2
  9. package/dist-cjs/commands/ModifyInstanceAttributeCommand.js +2 -2
  10. package/dist-cjs/commands/ModifyInstanceCapacityReservationAttributesCommand.js +3 -3
  11. package/dist-cjs/commands/ModifyPrivateDnsNameOptionsCommand.js +36 -0
  12. package/dist-cjs/commands/index.js +1 -0
  13. package/dist-cjs/models/models_0.js +13 -14
  14. package/dist-cjs/models/models_1.js +29 -26
  15. package/dist-cjs/models/models_2.js +27 -31
  16. package/dist-cjs/models/models_3.js +37 -36
  17. package/dist-cjs/models/models_4.js +36 -36
  18. package/dist-cjs/models/models_5.js +53 -5
  19. package/dist-cjs/protocols/Aws_ec2.js +235 -12
  20. package/dist-es/EC2.js +15 -0
  21. package/dist-es/commands/CreateVpcEndpointConnectionNotificationCommand.js +2 -1
  22. package/dist-es/commands/DescribeHostReservationsCommand.js +2 -1
  23. package/dist-es/commands/DescribeHostsCommand.js +1 -2
  24. package/dist-es/commands/DescribeStaleSecurityGroupsCommand.js +2 -1
  25. package/dist-es/commands/DescribeStoreImageTasksCommand.js +1 -1
  26. package/dist-es/commands/DescribeSubnetsCommand.js +1 -2
  27. package/dist-es/commands/ModifyInstanceAttributeCommand.js +1 -1
  28. package/dist-es/commands/ModifyInstanceCapacityReservationAttributesCommand.js +1 -1
  29. package/dist-es/commands/ModifyPrivateDnsNameOptionsCommand.js +39 -0
  30. package/dist-es/commands/index.js +1 -0
  31. package/dist-es/models/models_0.js +9 -8
  32. package/dist-es/models/models_1.js +16 -17
  33. package/dist-es/models/models_2.js +17 -19
  34. package/dist-es/models/models_3.js +23 -20
  35. package/dist-es/models/models_4.js +20 -20
  36. package/dist-es/models/models_5.js +32 -0
  37. package/dist-es/protocols/Aws_ec2.js +229 -0
  38. package/dist-types/EC2.d.ts +20 -12
  39. package/dist-types/EC2Client.d.ts +3 -2
  40. package/dist-types/commands/AuthorizeSecurityGroupEgressCommand.d.ts +1 -1
  41. package/dist-types/commands/CreateVpcEndpointConnectionNotificationCommand.d.ts +2 -1
  42. package/dist-types/commands/DescribeHostReservationsCommand.d.ts +2 -1
  43. package/dist-types/commands/DescribeHostsCommand.d.ts +1 -2
  44. package/dist-types/commands/DescribeInstanceStatusCommand.d.ts +3 -2
  45. package/dist-types/commands/DescribeStaleSecurityGroupsCommand.d.ts +2 -1
  46. package/dist-types/commands/DescribeStoreImageTasksCommand.d.ts +1 -1
  47. package/dist-types/commands/DescribeSubnetsCommand.d.ts +1 -2
  48. package/dist-types/commands/ModifyInstanceAttributeCommand.d.ts +2 -2
  49. package/dist-types/commands/ModifyInstanceCapacityReservationAttributesCommand.d.ts +1 -1
  50. package/dist-types/commands/ModifyPrivateDnsNameOptionsCommand.d.ts +35 -0
  51. package/dist-types/commands/MonitorInstancesCommand.d.ts +2 -2
  52. package/dist-types/commands/RebootInstancesCommand.d.ts +2 -2
  53. package/dist-types/commands/SendDiagnosticInterruptCommand.d.ts +1 -1
  54. package/dist-types/commands/StartInstancesCommand.d.ts +2 -2
  55. package/dist-types/commands/StopInstancesCommand.d.ts +1 -1
  56. package/dist-types/commands/index.d.ts +1 -0
  57. package/dist-types/models/models_0.d.ts +99 -75
  58. package/dist-types/models/models_1.d.ts +127 -68
  59. package/dist-types/models/models_2.d.ts +120 -189
  60. package/dist-types/models/models_3.d.ts +195 -230
  61. package/dist-types/models/models_4.d.ts +236 -204
  62. package/dist-types/models/models_5.d.ts +310 -14
  63. package/dist-types/protocols/Aws_ec2.d.ts +3 -0
  64. package/dist-types/ts3.4/EC2.d.ts +5 -0
  65. package/dist-types/ts3.4/EC2Client.d.ts +3 -2
  66. package/dist-types/ts3.4/commands/CreateVpcEndpointConnectionNotificationCommand.d.ts +2 -1
  67. package/dist-types/ts3.4/commands/DescribeHostReservationsCommand.d.ts +2 -1
  68. package/dist-types/ts3.4/commands/DescribeHostsCommand.d.ts +1 -2
  69. package/dist-types/ts3.4/commands/DescribeStaleSecurityGroupsCommand.d.ts +2 -1
  70. package/dist-types/ts3.4/commands/DescribeStoreImageTasksCommand.d.ts +1 -1
  71. package/dist-types/ts3.4/commands/DescribeSubnetsCommand.d.ts +1 -2
  72. package/dist-types/ts3.4/commands/ModifyInstanceAttributeCommand.d.ts +1 -1
  73. package/dist-types/ts3.4/commands/ModifyInstanceCapacityReservationAttributesCommand.d.ts +1 -1
  74. package/dist-types/ts3.4/commands/ModifyPrivateDnsNameOptionsCommand.d.ts +17 -0
  75. package/dist-types/ts3.4/commands/index.d.ts +1 -0
  76. package/dist-types/ts3.4/models/models_0.d.ts +23 -22
  77. package/dist-types/ts3.4/models/models_1.d.ts +62 -40
  78. package/dist-types/ts3.4/models/models_2.d.ts +38 -65
  79. package/dist-types/ts3.4/models/models_3.d.ts +84 -75
  80. package/dist-types/ts3.4/models/models_4.d.ts +76 -83
  81. package/dist-types/ts3.4/models/models_5.d.ts +129 -3
  82. package/dist-types/ts3.4/protocols/Aws_ec2.d.ts +3 -0
  83. package/package.json +2 -2
@@ -1,8 +1,209 @@
1
- import { _InstanceType, AddPrefixListEntry, AddressAttribute, AddressAttributeName, Affinity, ApplianceModeSupportValue, AttributeValue, ByoipCidr, ClientVpnAuthorizationRuleStatus, CurrencyCodeValues, DnsSupportValue, IamInstanceProfileAssociation, IamInstanceProfileSpecification, InstanceEventWindow, IpPermission, Ipv6SupportValue, Placement, RouteTableAssociationState, TagSpecification, TransitGatewayAttachmentResourceType, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, UnsuccessfulItem } from "./models_0";
2
- import { AutoAcceptSharedAttachmentsValue, BlockDeviceMapping, CreditSpecificationRequest, DefaultRouteTableAssociationValue, DefaultRouteTablePropagationValue, ElasticGpuSpecification, IcmpTypeCode, InstanceEventWindowTimeRangeRequest, InstanceInterruptionBehavior, InstanceIpv6Address, LaunchTemplate, LocalGatewayRoute, ManagedPrefixList, MarketType, PortRange, RuleAction, ShutdownBehavior, SpotInstanceType, TrafficDirection, TrafficMirrorFilter, TrafficMirrorFilterRule, TrafficMirrorNetworkService, TrafficMirrorPortRangeRequest, TrafficMirrorRuleAction, TrafficMirrorSession, TransitGateway, TransitGatewayPrefixListReference, TransitGatewayRoute, VolumeType, VpnEcmpSupportValue } from "./models_1";
1
+ import { _InstanceType, AddPrefixListEntry, AddressAttribute, AddressAttributeName, Affinity, ApplianceModeSupportValue, AttributeValue, ByoipCidr, ClientVpnAuthorizationRuleStatus, CurrencyCodeValues, DnsSupportValue, HostnameType, IamInstanceProfileAssociation, IamInstanceProfileSpecification, InstanceEventWindow, IpPermission, Ipv6SupportValue, Placement, RouteTableAssociationState, TagSpecification, TransitGatewayAttachmentResourceType, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, UnsuccessfulItem } from "./models_0";
2
+ import { AutoAcceptSharedAttachmentsValue, BlockDeviceMapping, CapacityReservationPreference, CapacityReservationTarget, CreditSpecificationRequest, DefaultRouteTableAssociationValue, DefaultRouteTablePropagationValue, ElasticGpuSpecification, IcmpTypeCode, InstanceEventWindowTimeRangeRequest, InstanceInterruptionBehavior, InstanceIpv6Address, LaunchTemplate, LocalGatewayRoute, ManagedPrefixList, MarketType, PortRange, RuleAction, ShutdownBehavior, SpotInstanceType, TrafficDirection, TrafficMirrorFilter, TrafficMirrorFilterRule, TrafficMirrorNetworkService, TrafficMirrorPortRangeRequest, TrafficMirrorRuleAction, TrafficMirrorSession, TransitGateway, TransitGatewayPrefixListReference, TransitGatewayRoute, VolumeType, VpnEcmpSupportValue } from "./models_1";
3
3
  import { ClientVpnConnectionStatus, Filter, IKEVersionsRequestListValue, InstanceTagNotificationAttribute, Phase1DHGroupNumbersRequestListValue, Phase1EncryptionAlgorithmsRequestListValue, Phase1IntegrityAlgorithmsRequestListValue, Phase2DHGroupNumbersRequestListValue, Phase2EncryptionAlgorithmsRequestListValue, Phase2IntegrityAlgorithmsRequestListValue, VpnConnection } from "./models_2";
4
4
  import { ArchitectureValues, AttributeBooleanValue, BootModeValues, CreateVolumePermission, ExcessCapacityTerminationPolicy, HttpTokensState, InstanceAttributeName, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, InstanceNetworkInterfaceSpecification, InstanceState, InstanceStatusEvent, LaunchTemplateConfig, Monitoring, NetworkInsightsAnalysis, ReservedInstancesConfiguration, RunInstancesMonitoringEnabled, ScheduledInstance, SnapshotAttributeName, SpotFleetRequestConfigData, SpotInstanceRequest, SpotPlacement } from "./models_3";
5
- import { CapacityReservationSpecification, InstanceCreditSpecificationRequest, OperationType, Purchase, VolumeModification } from "./models_4";
5
+ import { BlobAttributeValue, InstanceBlockDeviceMappingSpecification, OperationType, Purchase, VolumeModification } from "./models_4";
6
+ export interface ModifyInstanceAttributeRequest {
7
+ /**
8
+ * <p>Enable or disable source/destination checks, which ensure that the instance
9
+ * is either the source or the destination of any traffic that it receives.
10
+ * If the value is <code>true</code>, source/destination checks are enabled;
11
+ * otherwise, they are disabled. The default value is <code>true</code>.
12
+ * You must disable source/destination checks if the instance runs services
13
+ * such as network address translation, routing, or firewalls.</p>
14
+ */
15
+ SourceDestCheck?: AttributeBooleanValue;
16
+ /**
17
+ * <p>The name of the attribute.</p>
18
+ */
19
+ Attribute?: InstanceAttributeName | string;
20
+ /**
21
+ * <p>Modifies the <code>DeleteOnTermination</code> attribute for volumes that are currently
22
+ * attached. The volume must be owned by the caller. If no value is specified for
23
+ * <code>DeleteOnTermination</code>, the default is <code>true</code> and the volume is
24
+ * deleted when the instance is terminated.</p>
25
+ * <p>To add instance store volumes to an Amazon EBS-backed instance, you must add them when
26
+ * you launch the instance. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html#Using_OverridingAMIBDM">Update the block device mapping when launching an instance</a> in the
27
+ * <i>Amazon EC2 User Guide</i>.</p>
28
+ */
29
+ BlockDeviceMappings?: InstanceBlockDeviceMappingSpecification[];
30
+ /**
31
+ * <p>If the value is <code>true</code>, you can't terminate the instance using the Amazon
32
+ * EC2 console, CLI, or API; otherwise, you can. You cannot use this parameter for Spot
33
+ * Instances.</p>
34
+ */
35
+ DisableApiTermination?: AttributeBooleanValue;
36
+ /**
37
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
38
+ * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
39
+ * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
40
+ */
41
+ DryRun?: boolean;
42
+ /**
43
+ * <p>Specifies whether the instance is optimized for Amazon EBS I/O. This optimization
44
+ * provides dedicated throughput to Amazon EBS and an optimized configuration stack to
45
+ * provide optimal EBS I/O performance. This optimization isn't available with all instance
46
+ * types. Additional usage charges apply when using an EBS Optimized instance.</p>
47
+ */
48
+ EbsOptimized?: AttributeBooleanValue;
49
+ /**
50
+ * <p>Set to <code>true</code> to enable enhanced networking with ENA for the
51
+ * instance.</p>
52
+ * <p>This option is supported only for HVM instances. Specifying this option with a PV
53
+ * instance can make it unreachable.</p>
54
+ */
55
+ EnaSupport?: AttributeBooleanValue;
56
+ /**
57
+ * <p>[EC2-VPC] Replaces the security groups of the instance with the specified security groups.
58
+ * You must specify at least one security group, even if it's just the default security group for the VPC. You must
59
+ * specify the security group ID, not the security group name.</p>
60
+ */
61
+ Groups?: string[];
62
+ /**
63
+ * <p>The ID of the instance.</p>
64
+ */
65
+ InstanceId: string | undefined;
66
+ /**
67
+ * <p>Specifies whether an instance stops or terminates when you initiate shutdown from the
68
+ * instance (using the operating system command for system shutdown).</p>
69
+ */
70
+ InstanceInitiatedShutdownBehavior?: AttributeValue;
71
+ /**
72
+ * <p>Changes the instance type to the specified value. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html">Instance
73
+ * types</a> in the <i>Amazon EC2 User Guide</i>. If the instance type is not valid,
74
+ * the error returned is <code>InvalidInstanceAttributeValue</code>.</p>
75
+ */
76
+ InstanceType?: AttributeValue;
77
+ /**
78
+ * <p>Changes the instance's kernel to the specified value. We recommend that you use
79
+ * PV-GRUB instead of kernels and RAM disks. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedKernels.html">PV-GRUB</a>.</p>
80
+ */
81
+ Kernel?: AttributeValue;
82
+ /**
83
+ * <p>Changes the instance's RAM disk to the specified value. We recommend that you use
84
+ * PV-GRUB instead of kernels and RAM disks. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedKernels.html">PV-GRUB</a>.</p>
85
+ */
86
+ Ramdisk?: AttributeValue;
87
+ /**
88
+ * <p>Set to <code>simple</code> to enable enhanced networking with the Intel 82599 Virtual
89
+ * Function interface for the instance.</p>
90
+ * <p>There is no way to disable enhanced networking with the Intel 82599 Virtual Function
91
+ * interface at this time.</p>
92
+ * <p>This option is supported only for HVM instances. Specifying this option with a PV
93
+ * instance can make it unreachable.</p>
94
+ */
95
+ SriovNetSupport?: AttributeValue;
96
+ /**
97
+ * <p>Changes the instance's user data to the specified value. If you are using an Amazon Web Services SDK
98
+ * or command line tool, base64-encoding is performed for you, and you can load the text
99
+ * from a file. Otherwise, you must provide base64-encoded text.</p>
100
+ */
101
+ UserData?: BlobAttributeValue;
102
+ /**
103
+ * <p>A new value for the attribute. Use only with the <code>kernel</code>,
104
+ * <code>ramdisk</code>, <code>userData</code>, <code>disableApiTermination</code>, or
105
+ * <code>instanceInitiatedShutdownBehavior</code> attribute.</p>
106
+ */
107
+ Value?: string;
108
+ }
109
+ export declare namespace ModifyInstanceAttributeRequest {
110
+ /**
111
+ * @internal
112
+ */
113
+ const filterSensitiveLog: (obj: ModifyInstanceAttributeRequest) => any;
114
+ }
115
+ /**
116
+ * <p>Describes an instance's Capacity Reservation targeting option. You can specify only one parameter
117
+ * at a time. If you specify <code>CapacityReservationPreference</code> and
118
+ * <code>CapacityReservationTarget</code>, the request fails.</p>
119
+ * <p>Use the <code>CapacityReservationPreference</code> parameter to configure the instance
120
+ * to run as an On-Demand Instance or to run in any <code>open</code> Capacity Reservation that has
121
+ * matching attributes (instance type, platform, Availability Zone). Use the
122
+ * <code>CapacityReservationTarget</code> parameter to explicitly target a specific
123
+ * Capacity Reservation or a Capacity Reservation group.</p>
124
+ */
125
+ export interface CapacityReservationSpecification {
126
+ /**
127
+ * <p>Indicates the instance's Capacity Reservation preferences. Possible preferences include:</p>
128
+ * <ul>
129
+ * <li>
130
+ * <p>
131
+ * <code>open</code> - The instance can run in any <code>open</code> Capacity Reservation that has matching attributes
132
+ * (instance type, platform, Availability Zone).</p>
133
+ * </li>
134
+ * <li>
135
+ * <p>
136
+ * <code>none</code> - The instance avoids running in a Capacity Reservation even if one is available. The
137
+ * instance runs as an On-Demand Instance.</p>
138
+ * </li>
139
+ * </ul>
140
+ */
141
+ CapacityReservationPreference?: CapacityReservationPreference | string;
142
+ /**
143
+ * <p>Information about the target Capacity Reservation or Capacity Reservation group.</p>
144
+ */
145
+ CapacityReservationTarget?: CapacityReservationTarget;
146
+ }
147
+ export declare namespace CapacityReservationSpecification {
148
+ /**
149
+ * @internal
150
+ */
151
+ const filterSensitiveLog: (obj: CapacityReservationSpecification) => any;
152
+ }
153
+ export interface ModifyInstanceCapacityReservationAttributesRequest {
154
+ /**
155
+ * <p>The ID of the instance to be modified.</p>
156
+ */
157
+ InstanceId: string | undefined;
158
+ /**
159
+ * <p>Information about the Capacity Reservation targeting option.</p>
160
+ */
161
+ CapacityReservationSpecification: CapacityReservationSpecification | undefined;
162
+ /**
163
+ * <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>
164
+ */
165
+ DryRun?: boolean;
166
+ }
167
+ export declare namespace ModifyInstanceCapacityReservationAttributesRequest {
168
+ /**
169
+ * @internal
170
+ */
171
+ const filterSensitiveLog: (obj: ModifyInstanceCapacityReservationAttributesRequest) => any;
172
+ }
173
+ export interface ModifyInstanceCapacityReservationAttributesResult {
174
+ /**
175
+ * <p>Returns <code>true</code> if the request succeeds; otherwise, it returns an error.</p>
176
+ */
177
+ Return?: boolean;
178
+ }
179
+ export declare namespace ModifyInstanceCapacityReservationAttributesResult {
180
+ /**
181
+ * @internal
182
+ */
183
+ const filterSensitiveLog: (obj: ModifyInstanceCapacityReservationAttributesResult) => any;
184
+ }
185
+ /**
186
+ * <p>Describes the credit option for CPU usage of a burstable performance instance.</p>
187
+ */
188
+ export interface InstanceCreditSpecificationRequest {
189
+ /**
190
+ * <p>The ID of the instance.</p>
191
+ */
192
+ InstanceId?: string;
193
+ /**
194
+ * <p>The credit option for CPU usage of the instance. Valid values are
195
+ * <code>standard</code> and <code>unlimited</code>.</p>
196
+ * <p>T3 instances with <code>host</code> tenancy do not support the <code>unlimited</code>
197
+ * CPU credit option.</p>
198
+ */
199
+ CpuCredits?: string;
200
+ }
201
+ export declare namespace InstanceCreditSpecificationRequest {
202
+ /**
203
+ * @internal
204
+ */
205
+ const filterSensitiveLog: (obj: InstanceCreditSpecificationRequest) => any;
206
+ }
6
207
  export interface ModifyInstanceCreditSpecificationRequest {
7
208
  /**
8
209
  * <p>Checks whether you have the required permissions for the action, without actually making the request,
@@ -242,20 +443,21 @@ export interface ModifyInstanceMetadataOptionsRequest {
242
443
  */
243
444
  HttpPutResponseHopLimit?: number;
244
445
  /**
245
- * <p>This parameter enables or disables the HTTP metadata endpoint on your instances. If
446
+ * <p>Enables or disables the HTTP metadata endpoint on your instances. If
246
447
  * the parameter is not specified, the existing state is maintained.</p>
247
- * <note>
248
- * <p>If you specify a value of <code>disabled</code>, you will not be able to access your
249
- * instance metadata.</p>
250
- * </note>
448
+ * <p>If you specify a value of <code>disabled</code>, you cannot access your
449
+ * instance metadata.</p>
251
450
  */
252
451
  HttpEndpoint?: InstanceMetadataEndpointState | string;
253
452
  /**
254
- * <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>
453
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
454
+ * and provides an error response. If you have the required permissions, the error response is
455
+ * <code>DryRunOperation</code>. Otherwise, it is <code>UnauthorizedOperation</code>.</p>
255
456
  */
256
457
  DryRun?: boolean;
257
458
  /**
258
- * <p>Enables or disables the IPv6 endpoint for the instance metadata service.</p>
459
+ * <p>Enables or disables the IPv6 endpoint for the instance metadata service. This setting
460
+ * applies only if you have enabled the HTTP metadata endpoint.</p>
259
461
  */
260
462
  HttpProtocolIpv6?: InstanceMetadataProtocolState | string;
261
463
  }
@@ -316,7 +518,8 @@ export interface ModifyInstancePlacementRequest {
316
518
  */
317
519
  Tenancy?: HostTenancy | string;
318
520
  /**
319
- * <p>Reserved for future use.</p>
521
+ * <p>The number of the partition in which to place the instance. Valid only if the
522
+ * placement group strategy is set to <code>partition</code>.</p>
320
523
  */
321
524
  PartitionNumber?: number;
322
525
  /**
@@ -520,6 +723,51 @@ export declare namespace ModifyNetworkInterfaceAttributeRequest {
520
723
  */
521
724
  const filterSensitiveLog: (obj: ModifyNetworkInterfaceAttributeRequest) => any;
522
725
  }
726
+ export interface ModifyPrivateDnsNameOptionsRequest {
727
+ /**
728
+ * <p>Checks whether you have the required permissions for the action, without actually making the request,
729
+ * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
730
+ * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
731
+ */
732
+ DryRun?: boolean;
733
+ /**
734
+ * <p>The ID of the instance.</p>
735
+ */
736
+ InstanceId?: string;
737
+ /**
738
+ * <p>The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be
739
+ * based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based
740
+ * on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance
741
+ * IPv4 address or the instance ID.</p>
742
+ */
743
+ PrivateDnsHostnameType?: HostnameType | string;
744
+ /**
745
+ * <p>Indicates whether to respond to DNS queries for instance hostnames with DNS A records.</p>
746
+ */
747
+ EnableResourceNameDnsARecord?: boolean;
748
+ /**
749
+ * <p>Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.</p>
750
+ */
751
+ EnableResourceNameDnsAAAARecord?: boolean;
752
+ }
753
+ export declare namespace ModifyPrivateDnsNameOptionsRequest {
754
+ /**
755
+ * @internal
756
+ */
757
+ const filterSensitiveLog: (obj: ModifyPrivateDnsNameOptionsRequest) => any;
758
+ }
759
+ export interface ModifyPrivateDnsNameOptionsResult {
760
+ /**
761
+ * <p>Returns <code>true</code> if the request succeeds; otherwise, it returns an error.</p>
762
+ */
763
+ Return?: boolean;
764
+ }
765
+ export declare namespace ModifyPrivateDnsNameOptionsResult {
766
+ /**
767
+ * @internal
768
+ */
769
+ const filterSensitiveLog: (obj: ModifyPrivateDnsNameOptionsResult) => any;
770
+ }
523
771
  /**
524
772
  * <p>Contains the parameters for ModifyReservedInstances.</p>
525
773
  */
@@ -822,6 +1070,21 @@ export interface ModifySubnetAttributeRequest {
822
1070
  * should return synthetic IPv6 addresses for IPv4-only destinations.</p>
823
1071
  */
824
1072
  EnableDns64?: AttributeBooleanValue;
1073
+ /**
1074
+ * <p>The type of hostnames to assign to instances in the subnet at launch. For IPv4 only subnets, an
1075
+ * instance DNS name must be based on the instance IPv4 address. For IPv6 only subnets, an instance
1076
+ * DNS name must be based on the instance ID. For dual-stack subnets, you can specify whether DNS
1077
+ * names use the instance IPv4 address or the instance ID.</p>
1078
+ */
1079
+ PrivateDnsHostnameTypeOnLaunch?: HostnameType | string;
1080
+ /**
1081
+ * <p>Indicates whether to respond to DNS queries for instance hostnames with DNS A records.</p>
1082
+ */
1083
+ EnableResourceNameDnsARecordOnLaunch?: AttributeBooleanValue;
1084
+ /**
1085
+ * <p>Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.</p>
1086
+ */
1087
+ EnableResourceNameDnsAAAARecordOnLaunch?: AttributeBooleanValue;
825
1088
  }
826
1089
  export declare namespace ModifySubnetAttributeRequest {
827
1090
  /**
@@ -3113,6 +3376,9 @@ export interface ReplaceRouteRequest {
3113
3376
  * <p>The ID of a VPC peering connection.</p>
3114
3377
  */
3115
3378
  VpcPeeringConnectionId?: string;
3379
+ /**
3380
+ * <p>The Amazon Resource Name (ARN) of the core network.</p>
3381
+ */
3116
3382
  CoreNetworkArn?: string;
3117
3383
  }
3118
3384
  export declare namespace ReplaceRouteRequest {
@@ -4223,6 +4489,32 @@ export declare namespace InstanceMetadataOptionsRequest {
4223
4489
  */
4224
4490
  const filterSensitiveLog: (obj: InstanceMetadataOptionsRequest) => any;
4225
4491
  }
4492
+ /**
4493
+ * <p>Describes the options for instance hostnames.</p>
4494
+ */
4495
+ export interface PrivateDnsNameOptionsRequest {
4496
+ /**
4497
+ * <p>The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name must be
4498
+ * based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name must be based
4499
+ * on the instance ID. For dual-stack subnets, you can specify whether DNS names use the instance
4500
+ * IPv4 address or the instance ID.</p>
4501
+ */
4502
+ HostnameType?: HostnameType | string;
4503
+ /**
4504
+ * <p>Indicates whether to respond to DNS queries for instance hostnames with DNS A records.</p>
4505
+ */
4506
+ EnableResourceNameDnsARecord?: boolean;
4507
+ /**
4508
+ * <p>Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA records.</p>
4509
+ */
4510
+ EnableResourceNameDnsAAAARecord?: boolean;
4511
+ }
4512
+ export declare namespace PrivateDnsNameOptionsRequest {
4513
+ /**
4514
+ * @internal
4515
+ */
4516
+ const filterSensitiveLog: (obj: PrivateDnsNameOptionsRequest) => any;
4517
+ }
4226
4518
  export interface RunInstancesRequest {
4227
4519
  /**
4228
4520
  * <p>The block device mapping, which defines the EBS volumes and instance store
@@ -4339,8 +4631,8 @@ export interface RunInstancesRequest {
4339
4631
  */
4340
4632
  SubnetId?: string;
4341
4633
  /**
4342
- * <p>The user data to make available to the instance. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html">Running commands
4343
- * on your Linux instance at launch</a> (Linux) and <a href="https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-instance-metadata.html#instancedata-add-user-data">Adding User Data</a> (Windows). If you are using a command line tool,
4634
+ * <p>The user data to make available to the instance. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html">Run commands
4635
+ * on your Linux instance at launch</a> and <a href="https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/ec2-windows-user-data.html">Run commands on your Windows instance at launch</a>. If you are using a command line tool,
4344
4636
  * base64-encoding is performed for you, and you can load the text from a file. Otherwise,
4345
4637
  * you must provide base64-encoded text. User data is limited to 16 KB.</p>
4346
4638
  */
@@ -4460,7 +4752,7 @@ export interface RunInstancesRequest {
4460
4752
  */
4461
4753
  CreditSpecification?: CreditSpecificationRequest;
4462
4754
  /**
4463
- * <p>The CPU options for the instance. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html">Optimizing CPU options</a> in the <i>Amazon EC2 User Guide</i>.</p>
4755
+ * <p>The CPU options for the instance. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-optimize-cpu.html">Optimize CPU options</a> in the <i>Amazon EC2 User Guide</i>.</p>
4464
4756
  */
4465
4757
  CpuOptions?: CpuOptionsRequest;
4466
4758
  /**
@@ -4492,6 +4784,10 @@ export interface RunInstancesRequest {
4492
4784
  * <p>You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same instance.</p>
4493
4785
  */
4494
4786
  EnclaveOptions?: EnclaveOptionsRequest;
4787
+ /**
4788
+ * <p>The options for the instance hostname. The default values are inherited from the subnet.</p>
4789
+ */
4790
+ PrivateDnsNameOptions?: PrivateDnsNameOptionsRequest;
4495
4791
  }
4496
4792
  export declare namespace RunInstancesRequest {
4497
4793
  /**
@@ -392,6 +392,7 @@ import { ModifyInstancePlacementCommandInput, ModifyInstancePlacementCommandOutp
392
392
  import { ModifyLaunchTemplateCommandInput, ModifyLaunchTemplateCommandOutput } from "../commands/ModifyLaunchTemplateCommand";
393
393
  import { ModifyManagedPrefixListCommandInput, ModifyManagedPrefixListCommandOutput } from "../commands/ModifyManagedPrefixListCommand";
394
394
  import { ModifyNetworkInterfaceAttributeCommandInput, ModifyNetworkInterfaceAttributeCommandOutput } from "../commands/ModifyNetworkInterfaceAttributeCommand";
395
+ import { ModifyPrivateDnsNameOptionsCommandInput, ModifyPrivateDnsNameOptionsCommandOutput } from "../commands/ModifyPrivateDnsNameOptionsCommand";
395
396
  import { ModifyReservedInstancesCommandInput, ModifyReservedInstancesCommandOutput } from "../commands/ModifyReservedInstancesCommand";
396
397
  import { ModifySecurityGroupRulesCommandInput, ModifySecurityGroupRulesCommandOutput } from "../commands/ModifySecurityGroupRulesCommand";
397
398
  import { ModifySnapshotAttributeCommandInput, ModifySnapshotAttributeCommandOutput } from "../commands/ModifySnapshotAttributeCommand";
@@ -865,6 +866,7 @@ export declare const serializeAws_ec2ModifyInstancePlacementCommand: (input: Mod
865
866
  export declare const serializeAws_ec2ModifyLaunchTemplateCommand: (input: ModifyLaunchTemplateCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
866
867
  export declare const serializeAws_ec2ModifyManagedPrefixListCommand: (input: ModifyManagedPrefixListCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
867
868
  export declare const serializeAws_ec2ModifyNetworkInterfaceAttributeCommand: (input: ModifyNetworkInterfaceAttributeCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
869
+ export declare const serializeAws_ec2ModifyPrivateDnsNameOptionsCommand: (input: ModifyPrivateDnsNameOptionsCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
868
870
  export declare const serializeAws_ec2ModifyReservedInstancesCommand: (input: ModifyReservedInstancesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
869
871
  export declare const serializeAws_ec2ModifySecurityGroupRulesCommand: (input: ModifySecurityGroupRulesCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
870
872
  export declare const serializeAws_ec2ModifySnapshotAttributeCommand: (input: ModifySnapshotAttributeCommandInput, context: __SerdeContext) => Promise<__HttpRequest>;
@@ -1338,6 +1340,7 @@ export declare const deserializeAws_ec2ModifyInstancePlacementCommand: (output:
1338
1340
  export declare const deserializeAws_ec2ModifyLaunchTemplateCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifyLaunchTemplateCommandOutput>;
1339
1341
  export declare const deserializeAws_ec2ModifyManagedPrefixListCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifyManagedPrefixListCommandOutput>;
1340
1342
  export declare const deserializeAws_ec2ModifyNetworkInterfaceAttributeCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifyNetworkInterfaceAttributeCommandOutput>;
1343
+ export declare const deserializeAws_ec2ModifyPrivateDnsNameOptionsCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifyPrivateDnsNameOptionsCommandOutput>;
1341
1344
  export declare const deserializeAws_ec2ModifyReservedInstancesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifyReservedInstancesCommandOutput>;
1342
1345
  export declare const deserializeAws_ec2ModifySecurityGroupRulesCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifySecurityGroupRulesCommandOutput>;
1343
1346
  export declare const deserializeAws_ec2ModifySnapshotAttributeCommand: (output: __HttpResponse, context: __SerdeContext) => Promise<ModifySnapshotAttributeCommandOutput>;
@@ -391,6 +391,7 @@ import { ModifyInstancePlacementCommandInput, ModifyInstancePlacementCommandOutp
391
391
  import { ModifyLaunchTemplateCommandInput, ModifyLaunchTemplateCommandOutput } from "./commands/ModifyLaunchTemplateCommand";
392
392
  import { ModifyManagedPrefixListCommandInput, ModifyManagedPrefixListCommandOutput } from "./commands/ModifyManagedPrefixListCommand";
393
393
  import { ModifyNetworkInterfaceAttributeCommandInput, ModifyNetworkInterfaceAttributeCommandOutput } from "./commands/ModifyNetworkInterfaceAttributeCommand";
394
+ import { ModifyPrivateDnsNameOptionsCommandInput, ModifyPrivateDnsNameOptionsCommandOutput } from "./commands/ModifyPrivateDnsNameOptionsCommand";
394
395
  import { ModifyReservedInstancesCommandInput, ModifyReservedInstancesCommandOutput } from "./commands/ModifyReservedInstancesCommand";
395
396
  import { ModifySecurityGroupRulesCommandInput, ModifySecurityGroupRulesCommandOutput } from "./commands/ModifySecurityGroupRulesCommand";
396
397
  import { ModifySnapshotAttributeCommandInput, ModifySnapshotAttributeCommandOutput } from "./commands/ModifySnapshotAttributeCommand";
@@ -2044,6 +2045,10 @@ export declare class EC2 extends EC2Client {
2044
2045
  modifyNetworkInterfaceAttribute(args: ModifyNetworkInterfaceAttributeCommandInput, cb: (err: any, data?: ModifyNetworkInterfaceAttributeCommandOutput) => void): void;
2045
2046
  modifyNetworkInterfaceAttribute(args: ModifyNetworkInterfaceAttributeCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ModifyNetworkInterfaceAttributeCommandOutput) => void): void;
2046
2047
 
2048
+ modifyPrivateDnsNameOptions(args: ModifyPrivateDnsNameOptionsCommandInput, options?: __HttpHandlerOptions): Promise<ModifyPrivateDnsNameOptionsCommandOutput>;
2049
+ modifyPrivateDnsNameOptions(args: ModifyPrivateDnsNameOptionsCommandInput, cb: (err: any, data?: ModifyPrivateDnsNameOptionsCommandOutput) => void): void;
2050
+ modifyPrivateDnsNameOptions(args: ModifyPrivateDnsNameOptionsCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ModifyPrivateDnsNameOptionsCommandOutput) => void): void;
2051
+
2047
2052
  modifyReservedInstances(args: ModifyReservedInstancesCommandInput, options?: __HttpHandlerOptions): Promise<ModifyReservedInstancesCommandOutput>;
2048
2053
  modifyReservedInstances(args: ModifyReservedInstancesCommandInput, cb: (err: any, data?: ModifyReservedInstancesCommandOutput) => void): void;
2049
2054
  modifyReservedInstances(args: ModifyReservedInstancesCommandInput, options: __HttpHandlerOptions, cb: (err: any, data?: ModifyReservedInstancesCommandOutput) => void): void;