@aws-sdk/client-ec2 3.410.0 → 3.411.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 (52) hide show
  1. package/README.md +24 -0
  2. package/dist-cjs/EC2.js +6 -0
  3. package/dist-cjs/commands/DisableImageBlockPublicAccessCommand.js +46 -0
  4. package/dist-cjs/commands/EnableImageBlockPublicAccessCommand.js +46 -0
  5. package/dist-cjs/commands/GetImageBlockPublicAccessStateCommand.js +46 -0
  6. package/dist-cjs/commands/GetVpnConnectionDeviceSampleConfigurationCommand.js +2 -2
  7. package/dist-cjs/commands/RunInstancesCommand.js +2 -2
  8. package/dist-cjs/commands/index.js +3 -0
  9. package/dist-cjs/models/models_5.js +7 -6
  10. package/dist-cjs/models/models_6.js +6 -6
  11. package/dist-cjs/models/models_7.js +6 -1
  12. package/dist-cjs/protocols/Aws_ec2.js +176 -17
  13. package/dist-es/EC2.js +6 -0
  14. package/dist-es/commands/DisableImageBlockPublicAccessCommand.js +42 -0
  15. package/dist-es/commands/EnableImageBlockPublicAccessCommand.js +42 -0
  16. package/dist-es/commands/GetImageBlockPublicAccessStateCommand.js +42 -0
  17. package/dist-es/commands/GetVpnConnectionDeviceSampleConfigurationCommand.js +1 -1
  18. package/dist-es/commands/RunInstancesCommand.js +1 -1
  19. package/dist-es/commands/index.js +3 -0
  20. package/dist-es/models/models_5.js +6 -4
  21. package/dist-es/models/models_6.js +4 -4
  22. package/dist-es/models/models_7.js +4 -0
  23. package/dist-es/protocols/Aws_ec2.js +153 -0
  24. package/dist-types/EC2.d.ts +21 -0
  25. package/dist-types/EC2Client.d.ts +5 -2
  26. package/dist-types/commands/DisableImageBlockPublicAccessCommand.d.ts +82 -0
  27. package/dist-types/commands/EnableImageBlockPublicAccessCommand.d.ts +82 -0
  28. package/dist-types/commands/GetImageBlockPublicAccessStateCommand.d.ts +76 -0
  29. package/dist-types/commands/GetVpnConnectionDeviceSampleConfigurationCommand.d.ts +1 -1
  30. package/dist-types/commands/GetVpnConnectionDeviceTypesCommand.d.ts +1 -1
  31. package/dist-types/commands/GetVpnTunnelReplacementStatusCommand.d.ts +1 -1
  32. package/dist-types/commands/RunInstancesCommand.d.ts +1 -1
  33. package/dist-types/commands/index.d.ts +3 -0
  34. package/dist-types/models/models_5.d.ts +111 -204
  35. package/dist-types/models/models_6.d.ts +203 -585
  36. package/dist-types/models/models_7.d.ts +590 -4
  37. package/dist-types/protocols/Aws_ec2.d.ts +27 -0
  38. package/dist-types/ts3.4/EC2.d.ts +51 -0
  39. package/dist-types/ts3.4/EC2Client.d.ts +18 -0
  40. package/dist-types/ts3.4/commands/DisableImageBlockPublicAccessCommand.d.ts +42 -0
  41. package/dist-types/ts3.4/commands/EnableImageBlockPublicAccessCommand.d.ts +42 -0
  42. package/dist-types/ts3.4/commands/GetImageBlockPublicAccessStateCommand.d.ts +42 -0
  43. package/dist-types/ts3.4/commands/GetVpnConnectionDeviceSampleConfigurationCommand.d.ts +1 -1
  44. package/dist-types/ts3.4/commands/GetVpnConnectionDeviceTypesCommand.d.ts +1 -1
  45. package/dist-types/ts3.4/commands/GetVpnTunnelReplacementStatusCommand.d.ts +1 -1
  46. package/dist-types/ts3.4/commands/RunInstancesCommand.d.ts +1 -1
  47. package/dist-types/ts3.4/commands/index.d.ts +3 -0
  48. package/dist-types/ts3.4/models/models_5.d.ts +32 -45
  49. package/dist-types/ts3.4/models/models_6.d.ts +45 -85
  50. package/dist-types/ts3.4/models/models_7.d.ts +109 -4
  51. package/dist-types/ts3.4/protocols/Aws_ec2.d.ts +36 -0
  52. package/package.json +1 -1
@@ -1,9 +1,209 @@
1
1
  import { _InstanceType, AddedPrincipal, AddIpamOperatingRegion, AddPrefixListEntry, AddressAttribute, AddressAttributeName, Affinity, ApplianceModeSupportValue, AutoPlacement, ByoipCidr, ClientVpnAuthorizationRuleStatus, CurrencyCodeValues, DnsSupportValue, EnaSrdSpecification, EndDateType, HostMaintenance, HostRecovery, IamInstanceProfileAssociation, IamInstanceProfileSpecification, InstanceEventWindow, IpPermission, Ipv6SupportValue, PortRange, RouteTableAssociationState, Tag, TagSpecification, TransitGatewayMulticastDomainAssociations, TransitGatewayPeeringAttachment, TransitGatewayVpcAttachment, UnsuccessfulItem, VerifiedAccessInstance, VerifiedAccessTrustProvider } from "./models_0";
2
- import { AmdSevSnpSpecification, AttributeValue, BlockDeviceMapping, CapacityReservationPreference, CapacityReservationTarget, ClientConnectOptions, ClientLoginBannerOptions, ConnectionLogOptions, CreditSpecificationRequest, DiskImageFormat, ElasticGpuSpecification, FleetExcessCapacityTerminationPolicy, FleetLaunchTemplateConfigRequest, HostnameType, IcmpTypeCode, InstanceEventWindowTimeRangeRequest, InstanceInterruptionBehavior, InstanceIpv6Address, Ipam, IpamPool, IpamResourceDiscovery, IpamScope, LaunchTemplate, LocalGatewayRoute, ManagedPrefixList, MarketType, Placement, PlatformValues, RequestIpamResourceTag, RuleAction, SelfServicePortal, ShutdownBehavior, SpotInstanceType, TargetCapacitySpecificationRequest, VolumeType } from "./models_1";
2
+ import { AmdSevSnpSpecification, AttributeValue, BlockDeviceMapping, CapacityReservationPreference, CapacityReservationTarget, ClientConnectOptions, ClientLoginBannerOptions, ConnectionLogOptions, DiskImageFormat, FleetExcessCapacityTerminationPolicy, FleetLaunchTemplateConfigRequest, HostnameType, IcmpTypeCode, InstanceEventWindowTimeRangeRequest, InstanceInterruptionBehavior, Ipam, IpamPool, IpamResourceDiscovery, IpamScope, LaunchTemplate, LocalGatewayRoute, ManagedPrefixList, MarketType, Placement, PlatformValues, RequestIpamResourceTag, RuleAction, SelfServicePortal, ShutdownBehavior, SpotInstanceType, TargetCapacitySpecificationRequest, VolumeType } from "./models_1";
3
3
  import { AutoAcceptSharedAttachmentsValue, DefaultRouteTableAssociationValue, DefaultRouteTablePropagationValue, DnsOptionsSpecification, IKEVersionsRequestListValue, IpAddressType, PayerResponsibility, Phase1DHGroupNumbersRequestListValue, Phase1EncryptionAlgorithmsRequestListValue, Phase1IntegrityAlgorithmsRequestListValue, Phase2DHGroupNumbersRequestListValue, Phase2EncryptionAlgorithmsRequestListValue, Phase2IntegrityAlgorithmsRequestListValue, SnapshotState, SSEType, SubnetConfiguration, TrafficDirection, TrafficMirrorFilter, TrafficMirrorFilterRule, TrafficMirrorNetworkService, TrafficMirrorPortRangeRequest, TrafficMirrorRuleAction, TrafficMirrorSession, TransitGateway, TransitGatewayPrefixListReference, TransitGatewayRoute, VerifiedAccessEndpoint, VerifiedAccessEndpointProtocol, VerifiedAccessGroup, VpnConnection, VpnEcmpSupportValue, VpnTunnelLogOptionsSpecification } from "./models_2";
4
4
  import { ArchitectureValues, AttributeBooleanValue, BootModeValues, ConversionTask, FpgaImageAttribute, FpgaImageAttributeName, ImdsSupportValues, ImportImageLicenseConfigurationResponse, InstanceAttributeName, InstanceTagNotificationAttribute, IpamPoolCidr, LaunchPermission, PermissionGroup, SnapshotDetail, SnapshotTaskDetail, TpmSupportValues } from "./models_3";
5
5
  import { CreateVolumePermission, ExcessCapacityTerminationPolicy, HttpTokensState, InstanceAutoRecoveryState, InstanceMetadataEndpointState, InstanceMetadataOptionsResponse, InstanceMetadataProtocolState, InstanceMetadataTagsState, InstanceNetworkInterfaceSpecification, InstanceStatusEvent, LaunchTemplateConfig, Monitoring, PublicIpv4PoolRange, ReservedInstancesConfiguration, RunInstancesMonitoringEnabled, ScheduledInstance, SnapshotAttributeName, SpotFleetRequestConfigData, SpotInstanceRequest, SpotPlacement } from "./models_4";
6
6
  import { InstanceFamilyCreditSpecification, IpamResourceCidr, Purchase, UnlimitedSupportedInstanceFamily, VerifiedAccessInstanceLoggingConfiguration, VolumeModification } from "./models_5";
7
+ /**
8
+ * @public
9
+ */
10
+ export interface GetVpnConnectionDeviceSampleConfigurationRequest {
11
+ /**
12
+ * @public
13
+ * <p>The <code>VpnConnectionId</code> specifies the Site-to-Site VPN connection used for the sample
14
+ * configuration.</p>
15
+ */
16
+ VpnConnectionId: string | undefined;
17
+ /**
18
+ * @public
19
+ * <p>Device identifier provided by the <code>GetVpnConnectionDeviceTypes</code> API.</p>
20
+ */
21
+ VpnConnectionDeviceTypeId: string | undefined;
22
+ /**
23
+ * @public
24
+ * <p>The IKE version to be used in the sample configuration file for your customer gateway
25
+ * device. You can specify one of the following versions: <code>ikev1</code> or
26
+ * <code>ikev2</code>.</p>
27
+ */
28
+ InternetKeyExchangeVersion?: string;
29
+ /**
30
+ * @public
31
+ * <p>Checks whether you have the required permissions for the action, without actually
32
+ * making the request, and provides an error response. If you have the required
33
+ * permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is
34
+ * <code>UnauthorizedOperation</code>.</p>
35
+ */
36
+ DryRun?: boolean;
37
+ }
38
+ /**
39
+ * @public
40
+ */
41
+ export interface GetVpnConnectionDeviceSampleConfigurationResult {
42
+ /**
43
+ * @public
44
+ * <p>Sample configuration file for the specified customer gateway device.</p>
45
+ */
46
+ VpnConnectionDeviceSampleConfiguration?: string;
47
+ }
48
+ /**
49
+ * @public
50
+ */
51
+ export interface GetVpnConnectionDeviceTypesRequest {
52
+ /**
53
+ * @public
54
+ * <p>The maximum number of results returned by <code>GetVpnConnectionDeviceTypes</code> in
55
+ * paginated output. When this parameter is used, <code>GetVpnConnectionDeviceTypes</code>
56
+ * only returns <code>MaxResults</code> results in a single page along with a
57
+ * <code>NextToken</code> response element. The remaining results of the initial
58
+ * request can be seen by sending another <code>GetVpnConnectionDeviceTypes</code> request
59
+ * with the returned <code>NextToken</code> value. This value can be between 200 and 1000.
60
+ * If this parameter is not used, then <code>GetVpnConnectionDeviceTypes</code> returns all
61
+ * results.</p>
62
+ */
63
+ MaxResults?: number;
64
+ /**
65
+ * @public
66
+ * <p>The <code>NextToken</code> value returned from a previous paginated
67
+ * <code>GetVpnConnectionDeviceTypes</code> request where <code>MaxResults</code> was
68
+ * used and the results exceeded the value of that parameter. Pagination continues from the
69
+ * end of the previous results that returned the <code>NextToken</code> value. This value
70
+ * is null when there are no more results to return. </p>
71
+ */
72
+ NextToken?: string;
73
+ /**
74
+ * @public
75
+ * <p>Checks whether you have the required permissions for the action, without actually
76
+ * making the request, and provides an error response. If you have the required
77
+ * permissions, the error response is <code>DryRunOperation</code>. Otherwise, it is
78
+ * <code>UnauthorizedOperation</code>.</p>
79
+ */
80
+ DryRun?: boolean;
81
+ }
82
+ /**
83
+ * @public
84
+ * <p>List of customer gateway devices that have a sample configuration file available for
85
+ * use. You can also see the list of device types with sample configuration files available
86
+ * under <a href="https://docs.aws.amazon.com/vpn/latest/s2svpn/your-cgw.html">Your customer
87
+ * gateway device</a> in the <i>Amazon Web Services Site-to-Site VPN User Guide</i>.</p>
88
+ */
89
+ export interface VpnConnectionDeviceType {
90
+ /**
91
+ * @public
92
+ * <p>Customer gateway device identifier.</p>
93
+ */
94
+ VpnConnectionDeviceTypeId?: string;
95
+ /**
96
+ * @public
97
+ * <p>Customer gateway device vendor.</p>
98
+ */
99
+ Vendor?: string;
100
+ /**
101
+ * @public
102
+ * <p>Customer gateway device platform.</p>
103
+ */
104
+ Platform?: string;
105
+ /**
106
+ * @public
107
+ * <p>Customer gateway device software version.</p>
108
+ */
109
+ Software?: string;
110
+ }
111
+ /**
112
+ * @public
113
+ */
114
+ export interface GetVpnConnectionDeviceTypesResult {
115
+ /**
116
+ * @public
117
+ * <p>List of customer gateway devices that have a sample configuration file available for
118
+ * use.</p>
119
+ */
120
+ VpnConnectionDeviceTypes?: VpnConnectionDeviceType[];
121
+ /**
122
+ * @public
123
+ * <p>The <code>NextToken</code> value to include in a future
124
+ * <code>GetVpnConnectionDeviceTypes</code> request. When the results of a
125
+ * <code>GetVpnConnectionDeviceTypes</code> request exceed <code>MaxResults</code>,
126
+ * this value can be used to retrieve the next page of results. This value is null when
127
+ * there are no more results to return.</p>
128
+ */
129
+ NextToken?: string;
130
+ }
131
+ /**
132
+ * @public
133
+ */
134
+ export interface GetVpnTunnelReplacementStatusRequest {
135
+ /**
136
+ * @public
137
+ * <p>The ID of the Site-to-Site VPN connection. </p>
138
+ */
139
+ VpnConnectionId: string | undefined;
140
+ /**
141
+ * @public
142
+ * <p>The external IP address of the VPN tunnel.</p>
143
+ */
144
+ VpnTunnelOutsideIpAddress: string | undefined;
145
+ /**
146
+ * @public
147
+ * <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>
148
+ */
149
+ DryRun?: boolean;
150
+ }
151
+ /**
152
+ * @public
153
+ * <p>Details for Site-to-Site VPN tunnel endpoint maintenance events.</p>
154
+ */
155
+ export interface MaintenanceDetails {
156
+ /**
157
+ * @public
158
+ * <p>Verify existence of a pending maintenance.</p>
159
+ */
160
+ PendingMaintenance?: string;
161
+ /**
162
+ * @public
163
+ * <p>The timestamp after which Amazon Web Services will automatically apply maintenance.</p>
164
+ */
165
+ MaintenanceAutoAppliedAfter?: Date;
166
+ /**
167
+ * @public
168
+ * <p>Timestamp of last applied maintenance.</p>
169
+ */
170
+ LastMaintenanceApplied?: Date;
171
+ }
172
+ /**
173
+ * @public
174
+ */
175
+ export interface GetVpnTunnelReplacementStatusResult {
176
+ /**
177
+ * @public
178
+ * <p>The ID of the Site-to-Site VPN connection. </p>
179
+ */
180
+ VpnConnectionId?: string;
181
+ /**
182
+ * @public
183
+ * <p>The ID of the transit gateway associated with the VPN connection.</p>
184
+ */
185
+ TransitGatewayId?: string;
186
+ /**
187
+ * @public
188
+ * <p>The ID of the customer gateway.</p>
189
+ */
190
+ CustomerGatewayId?: string;
191
+ /**
192
+ * @public
193
+ * <p>The ID of the virtual private gateway.</p>
194
+ */
195
+ VpnGatewayId?: string;
196
+ /**
197
+ * @public
198
+ * <p>The external IP address of the VPN tunnel.</p>
199
+ */
200
+ VpnTunnelOutsideIpAddress?: string;
201
+ /**
202
+ * @public
203
+ * <p>Get details of pending tunnel endpoint maintenance.</p>
204
+ */
205
+ MaintenanceDetails?: MaintenanceDetails;
206
+ }
7
207
  /**
8
208
  * @public
9
209
  */
@@ -7803,587 +8003,9 @@ export interface LicenseConfigurationRequest {
7803
8003
  LicenseConfigurationArn?: string;
7804
8004
  }
7805
8005
  /**
7806
- * @public
7807
- * <p>The maintenance options for the instance.</p>
7808
- */
7809
- export interface InstanceMaintenanceOptionsRequest {
7810
- /**
7811
- * @public
7812
- * <p>Disables the automatic recovery behavior of your instance or sets it to default. For
7813
- * more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-recover.html#instance-configuration-recovery">Simplified automatic recovery</a>.</p>
7814
- */
7815
- AutoRecovery?: InstanceAutoRecoveryState | string;
7816
- }
7817
- /**
7818
- * @public
7819
- * <p>The metadata options for the instance.</p>
7820
- */
7821
- export interface InstanceMetadataOptionsRequest {
7822
- /**
7823
- * @public
7824
- * <p>IMDSv2 uses token-backed sessions. Set the use of HTTP tokens to <code>optional</code>
7825
- * (in other words, set the use of IMDSv2 to <code>optional</code>) or
7826
- * <code>required</code> (in other words, set the use of IMDSv2 to
7827
- * <code>required</code>).</p>
7828
- * <ul>
7829
- * <li>
7830
- * <p>
7831
- * <code>optional</code> - When IMDSv2 is optional, you can choose to retrieve instance metadata with or without
7832
- * a session token in your request. If you retrieve the IAM role credentials
7833
- * without a token, the IMDSv1 role credentials are returned. If you retrieve the IAM role credentials
7834
- * using a valid session token, the IMDSv2 role credentials are returned.</p>
7835
- * </li>
7836
- * <li>
7837
- * <p>
7838
- * <code>required</code> - When IMDSv2 is required, you must send a session token
7839
- * with any instance metadata retrieval requests. In this state, retrieving the IAM role
7840
- * credentials always returns IMDSv2 credentials; IMDSv1 credentials are not available.</p>
7841
- * </li>
7842
- * </ul>
7843
- * <p>Default: <code>optional</code>
7844
- * </p>
7845
- */
7846
- HttpTokens?: HttpTokensState | string;
7847
- /**
7848
- * @public
7849
- * <p>The desired HTTP PUT response hop limit for instance metadata requests. The larger the
7850
- * number, the further instance metadata requests can travel.</p>
7851
- * <p>Default: 1</p>
7852
- * <p>Possible values: Integers from 1 to 64</p>
7853
- */
7854
- HttpPutResponseHopLimit?: number;
7855
- /**
7856
- * @public
7857
- * <p>Enables or disables the HTTP metadata endpoint on your instances.</p>
7858
- * <p>If you specify a value of <code>disabled</code>, you cannot access your instance
7859
- * metadata.</p>
7860
- * <p>Default: <code>enabled</code>
7861
- * </p>
7862
- */
7863
- HttpEndpoint?: InstanceMetadataEndpointState | string;
7864
- /**
7865
- * @public
7866
- * <p>Enables or disables the IPv6 endpoint for the instance metadata service.</p>
7867
- */
7868
- HttpProtocolIpv6?: InstanceMetadataProtocolState | string;
7869
- /**
7870
- * @public
7871
- * <p>Set to <code>enabled</code> to allow access to instance tags from the instance
7872
- * metadata. Set to <code>disabled</code> to turn off access to instance tags from the
7873
- * instance metadata. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Using_Tags.html#work-with-tags-in-IMDS">Work with
7874
- * instance tags using the instance metadata</a>.</p>
7875
- * <p>Default: <code>disabled</code>
7876
- * </p>
7877
- */
7878
- InstanceMetadataTags?: InstanceMetadataTagsState | string;
7879
- }
7880
- /**
7881
- * @public
7882
- * <p>Describes the options for instance hostnames.</p>
7883
- */
7884
- export interface PrivateDnsNameOptionsRequest {
7885
- /**
7886
- * @public
7887
- * <p>The type of hostname for EC2 instances. For IPv4 only subnets, an instance DNS name
7888
- * must be based on the instance IPv4 address. For IPv6 only subnets, an instance DNS name
7889
- * must be based on the instance ID. For dual-stack subnets, you can specify whether DNS
7890
- * names use the instance IPv4 address or the instance ID.</p>
7891
- */
7892
- HostnameType?: HostnameType | string;
7893
- /**
7894
- * @public
7895
- * <p>Indicates whether to respond to DNS queries for instance hostnames with DNS A
7896
- * records.</p>
7897
- */
7898
- EnableResourceNameDnsARecord?: boolean;
7899
- /**
7900
- * @public
7901
- * <p>Indicates whether to respond to DNS queries for instance hostnames with DNS AAAA
7902
- * records.</p>
7903
- */
7904
- EnableResourceNameDnsAAAARecord?: boolean;
7905
- }
7906
- /**
7907
- * @public
7908
- */
7909
- export interface RunInstancesRequest {
7910
- /**
7911
- * @public
7912
- * <p>The block device mapping, which defines the EBS volumes and instance store volumes to
7913
- * attach to the instance at launch. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/block-device-mapping-concepts.html">Block device
7914
- * mappings</a> in the <i>Amazon EC2 User Guide</i>.</p>
7915
- */
7916
- BlockDeviceMappings?: BlockDeviceMapping[];
7917
- /**
7918
- * @public
7919
- * <p>The ID of the AMI. An AMI ID is required to launch an instance and must be specified
7920
- * here or in a launch template.</p>
7921
- */
7922
- ImageId?: string;
7923
- /**
7924
- * @public
7925
- * <p>The instance type. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html">Instance types</a> in the
7926
- * <i>Amazon EC2 User Guide</i>.</p>
7927
- */
7928
- InstanceType?: _InstanceType | string;
7929
- /**
7930
- * @public
7931
- * <p>The number of IPv6 addresses to associate with the primary network
7932
- * interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet. You
7933
- * cannot specify this option and the option to assign specific IPv6 addresses in the same
7934
- * request. You can specify this option if you've specified a minimum number of instances
7935
- * to launch.</p>
7936
- * <p>You cannot specify this option and the network interfaces option in the same
7937
- * request.</p>
7938
- */
7939
- Ipv6AddressCount?: number;
7940
- /**
7941
- * @public
7942
- * <p>The IPv6 addresses from the range of the subnet to associate with the
7943
- * primary network interface. You cannot specify this option and the option to assign a
7944
- * number of IPv6 addresses in the same request. You cannot specify this option if you've
7945
- * specified a minimum number of instances to launch.</p>
7946
- * <p>You cannot specify this option and the network interfaces option in the same
7947
- * request.</p>
7948
- */
7949
- Ipv6Addresses?: InstanceIpv6Address[];
7950
- /**
7951
- * @public
7952
- * <p>The ID of the kernel.</p>
7953
- * <important>
7954
- * <p>We recommend that you use PV-GRUB instead of kernels and RAM disks. For more
7955
- * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html">PV-GRUB</a> in the
7956
- * <i>Amazon EC2 User Guide</i>.</p>
7957
- * </important>
7958
- */
7959
- KernelId?: string;
7960
- /**
7961
- * @public
7962
- * <p>The name of the key pair. You can create a key pair using <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateKeyPair.html">CreateKeyPair</a> or
7963
- * <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ImportKeyPair.html">ImportKeyPair</a>.</p>
7964
- * <important>
7965
- * <p>If you do not specify a key pair, you can't connect to the instance unless you
7966
- * choose an AMI that is configured to allow users another way to log in.</p>
7967
- * </important>
7968
- */
7969
- KeyName?: string;
7970
- /**
7971
- * @public
7972
- * <p>The maximum number of instances to launch. If you specify more instances than Amazon
7973
- * EC2 can launch in the target Availability Zone, Amazon EC2 launches the largest possible
7974
- * number of instances above <code>MinCount</code>.</p>
7975
- * <p>Constraints: Between 1 and the maximum number you're allowed for the specified
7976
- * instance type. For more information about the default limits, and how to request an
7977
- * increase, see <a href="http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2">How many instances can I
7978
- * run in Amazon EC2</a> in the Amazon EC2 FAQ.</p>
7979
- */
7980
- MaxCount: number | undefined;
7981
- /**
7982
- * @public
7983
- * <p>The minimum number of instances to launch. If you specify a minimum that is more
7984
- * instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2
7985
- * launches no instances.</p>
7986
- * <p>Constraints: Between 1 and the maximum number you're allowed for the specified
7987
- * instance type. For more information about the default limits, and how to request an
7988
- * increase, see <a href="http://aws.amazon.com/ec2/faqs/#How_many_instances_can_I_run_in_Amazon_EC2">How many instances can I
7989
- * run in Amazon EC2</a> in the Amazon EC2 General FAQ.</p>
7990
- */
7991
- MinCount: number | undefined;
7992
- /**
7993
- * @public
7994
- * <p>Specifies whether detailed monitoring is enabled for the instance.</p>
7995
- */
7996
- Monitoring?: RunInstancesMonitoringEnabled;
7997
- /**
7998
- * @public
7999
- * <p>The placement for the instance.</p>
8000
- */
8001
- Placement?: Placement;
8002
- /**
8003
- * @public
8004
- * <p>The ID of the RAM disk to select. Some kernels require additional drivers at launch.
8005
- * Check the kernel requirements for information about whether you need to specify a RAM
8006
- * disk. To find kernel requirements, go to the Amazon Web Services Resource Center and
8007
- * search for the kernel ID.</p>
8008
- * <important>
8009
- * <p>We recommend that you use PV-GRUB instead of kernels and RAM disks. For more
8010
- * information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/UserProvidedkernels.html">PV-GRUB</a> in the
8011
- * <i>Amazon EC2 User Guide</i>.</p>
8012
- * </important>
8013
- */
8014
- RamdiskId?: string;
8015
- /**
8016
- * @public
8017
- * <p>The IDs of the security groups. You can create a security group using <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateSecurityGroup.html">CreateSecurityGroup</a>.</p>
8018
- * <p>If you specify a network interface, you must specify any security groups as part of
8019
- * the network interface.</p>
8020
- */
8021
- SecurityGroupIds?: string[];
8022
- /**
8023
- * @public
8024
- * <p>[Default VPC] The names of the security groups.</p>
8025
- * <p>If you specify a network interface, you must specify any security groups as part of
8026
- * the network interface.</p>
8027
- * <p>Default: Amazon EC2 uses the default security group.</p>
8028
- */
8029
- SecurityGroups?: string[];
8030
- /**
8031
- * @public
8032
- * <p>The ID of the subnet to launch the instance into.</p>
8033
- * <p>If you specify a network interface, you must specify any subnets as part of the
8034
- * network interface.</p>
8035
- */
8036
- SubnetId?: string;
8037
- /**
8038
- * @public
8039
- * <p>The user data script to make available to the instance. For more information, see
8040
- * <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/user-data.html">Run
8041
- * commands 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
8042
- * Windows instance at launch</a>. If you are using a command line tool,
8043
- * base64-encoding is performed for you, and you can load the text from a file. Otherwise,
8044
- * you must provide base64-encoded text. User data is limited to 16 KB.</p>
8045
- */
8046
- UserData?: string;
8047
- /**
8048
- * @public
8049
- * <p>Reserved.</p>
8050
- */
8051
- AdditionalInfo?: string;
8052
- /**
8053
- * @public
8054
- * <p>Unique, case-sensitive identifier you provide to ensure the idempotency of the
8055
- * request. If you do not specify a client token, a randomly generated token is used for
8056
- * the request to ensure idempotency.</p>
8057
- * <p>For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html">Ensuring
8058
- * Idempotency</a>.</p>
8059
- * <p>Constraints: Maximum 64 ASCII characters</p>
8060
- */
8061
- ClientToken?: string;
8062
- /**
8063
- * @public
8064
- * <p>If you set this parameter to <code>true</code>, you can't terminate the instance using
8065
- * the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute after
8066
- * launch, use <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceAttribute.html">ModifyInstanceAttribute</a>. Alternatively, if you set
8067
- * <code>InstanceInitiatedShutdownBehavior</code> to <code>terminate</code>, you can
8068
- * terminate the instance by running the shutdown command from the instance.</p>
8069
- * <p>Default: <code>false</code>
8070
- * </p>
8071
- */
8072
- DisableApiTermination?: boolean;
8073
- /**
8074
- * @public
8075
- * <p>Checks whether you have the required permissions for the action, without actually making the request,
8076
- * and provides an error response. If you have the required permissions, the error response is <code>DryRunOperation</code>.
8077
- * Otherwise, it is <code>UnauthorizedOperation</code>.</p>
8078
- */
8079
- DryRun?: boolean;
8080
- /**
8081
- * @public
8082
- * <p>Indicates whether the instance is optimized for Amazon EBS I/O. This optimization
8083
- * provides dedicated throughput to Amazon EBS and an optimized configuration stack to
8084
- * provide optimal Amazon EBS I/O performance. This optimization isn't available with all
8085
- * instance types. Additional usage charges apply when using an EBS-optimized
8086
- * instance.</p>
8087
- * <p>Default: <code>false</code>
8088
- * </p>
8089
- */
8090
- EbsOptimized?: boolean;
8091
- /**
8092
- * @public
8093
- * <p>The name or Amazon Resource Name (ARN) of an IAM instance
8094
- * profile.</p>
8095
- */
8096
- IamInstanceProfile?: IamInstanceProfileSpecification;
8097
- /**
8098
- * @public
8099
- * <p>Indicates whether an instance stops or terminates when you initiate shutdown from the
8100
- * instance (using the operating system command for system shutdown).</p>
8101
- * <p>Default: <code>stop</code>
8102
- * </p>
8103
- */
8104
- InstanceInitiatedShutdownBehavior?: ShutdownBehavior | string;
8105
- /**
8106
- * @public
8107
- * <p>The network interfaces to associate with the instance. If you specify a network
8108
- * interface, you must specify any security groups and subnets as part of the network
8109
- * interface.</p>
8110
- */
8111
- NetworkInterfaces?: InstanceNetworkInterfaceSpecification[];
8112
- /**
8113
- * @public
8114
- * <p>The primary IPv4 address. You must specify a value from the IPv4 address
8115
- * range of the subnet.</p>
8116
- * <p>Only one private IP address can be designated as primary. You can't specify this
8117
- * option if you've specified the option to designate a private IP address as the primary
8118
- * IP address in a network interface specification. You cannot specify this option if
8119
- * you're launching more than one instance in the request.</p>
8120
- * <p>You cannot specify this option and the network interfaces option in the same
8121
- * request.</p>
8122
- */
8123
- PrivateIpAddress?: string;
8124
- /**
8125
- * @public
8126
- * <p>An elastic GPU to associate with the instance. An Elastic GPU is a GPU resource that
8127
- * you can attach to your Windows instance to accelerate the graphics performance of your
8128
- * applications. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/elastic-graphics.html">Amazon EC2 Elastic GPUs</a> in
8129
- * the <i>Amazon EC2 User Guide</i>.</p>
8130
- */
8131
- ElasticGpuSpecification?: ElasticGpuSpecification[];
8132
- /**
8133
- * @public
8134
- * <p>An elastic inference accelerator to associate with the instance. Elastic inference
8135
- * accelerators are a resource you can attach to your Amazon EC2 instances to accelerate
8136
- * your Deep Learning (DL) inference workloads.</p>
8137
- * <p>You cannot specify accelerators from different generations in the same request.</p>
8138
- * <note>
8139
- * <p>Starting April 15, 2023, Amazon Web Services will not onboard new customers to Amazon
8140
- * Elastic Inference (EI), and will help current customers migrate their workloads to
8141
- * options that offer better price and performance. After April 15, 2023, new customers
8142
- * will not be able to launch instances with Amazon EI accelerators in Amazon SageMaker,
8143
- * Amazon ECS, or Amazon EC2. However, customers who have used Amazon EI at least once during
8144
- * the past 30-day period are considered current customers and will be able to continue
8145
- * using the service.</p>
8146
- * </note>
8147
- */
8148
- ElasticInferenceAccelerators?: ElasticInferenceAccelerator[];
8149
- /**
8150
- * @public
8151
- * <p>The tags to apply to the resources that are created during instance launch.</p>
8152
- * <p>You can specify tags for the following resources only:</p>
8153
- * <ul>
8154
- * <li>
8155
- * <p>Instances</p>
8156
- * </li>
8157
- * <li>
8158
- * <p>Volumes</p>
8159
- * </li>
8160
- * <li>
8161
- * <p>Elastic graphics</p>
8162
- * </li>
8163
- * <li>
8164
- * <p>Spot Instance requests</p>
8165
- * </li>
8166
- * <li>
8167
- * <p>Network interfaces</p>
8168
- * </li>
8169
- * </ul>
8170
- * <p>To tag a resource after it has been created, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_CreateTags.html">CreateTags</a>.</p>
8171
- */
8172
- TagSpecifications?: TagSpecification[];
8173
- /**
8174
- * @public
8175
- * <p>The launch template to use to launch the instances. Any parameters that you specify in
8176
- * <a>RunInstances</a> override the same parameters in the launch template.
8177
- * You can specify either the name or ID of a launch template, but not both.</p>
8178
- */
8179
- LaunchTemplate?: LaunchTemplateSpecification;
8180
- /**
8181
- * @public
8182
- * <p>The market (purchasing) option for the instances.</p>
8183
- * <p>For <a>RunInstances</a>, persistent Spot Instance requests are
8184
- * only supported when <b>InstanceInterruptionBehavior</b> is set
8185
- * to either <code>hibernate</code> or <code>stop</code>.</p>
8186
- */
8187
- InstanceMarketOptions?: InstanceMarketOptionsRequest;
8188
- /**
8189
- * @public
8190
- * <p>The credit option for CPU usage of the burstable performance instance. Valid values
8191
- * are <code>standard</code> and <code>unlimited</code>. To change this attribute after
8192
- * launch, use <a href="https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_ModifyInstanceCreditSpecification.html">
8193
- * ModifyInstanceCreditSpecification</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/burstable-performance-instances.html">Burstable
8194
- * performance instances</a> in the <i>Amazon EC2 User Guide</i>.</p>
8195
- * <p>Default: <code>standard</code> (T2 instances) or <code>unlimited</code> (T3/T3a/T4g
8196
- * instances)</p>
8197
- * <p>For T3 instances with <code>host</code> tenancy, only <code>standard</code> is
8198
- * supported.</p>
8199
- */
8200
- CreditSpecification?: CreditSpecificationRequest;
8201
- /**
8202
- * @public
8203
- * <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>
8204
- */
8205
- CpuOptions?: CpuOptionsRequest;
8206
- /**
8207
- * @public
8208
- * <p>Information about the Capacity Reservation targeting option. If you do not specify this parameter, the
8209
- * instance's Capacity Reservation preference defaults to <code>open</code>, which enables
8210
- * it to run in any open Capacity Reservation that has matching attributes (instance type,
8211
- * platform, Availability Zone).</p>
8212
- */
8213
- CapacityReservationSpecification?: CapacityReservationSpecification;
8214
- /**
8215
- * @public
8216
- * <p>Indicates whether an instance is enabled for hibernation. This parameter is valid only
8217
- * if the instance meets the <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/hibernating-prerequisites.html">hibernation
8218
- * prerequisites</a>. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Hibernate.html">Hibernate your instance</a> in the
8219
- * <i>Amazon EC2 User Guide</i>.</p>
8220
- * <p>You can't enable hibernation and Amazon Web Services Nitro Enclaves on the same
8221
- * instance.</p>
8222
- */
8223
- HibernationOptions?: HibernationOptionsRequest;
8224
- /**
8225
- * @public
8226
- * <p>The license configurations.</p>
8227
- */
8228
- LicenseSpecifications?: LicenseConfigurationRequest[];
8229
- /**
8230
- * @public
8231
- * <p>The metadata options for the instance. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html">Instance metadata and user data</a>.</p>
8232
- */
8233
- MetadataOptions?: InstanceMetadataOptionsRequest;
8234
- /**
8235
- * @public
8236
- * <p>Indicates whether the instance is enabled for Amazon Web Services Nitro Enclaves. For
8237
- * more information, see <a href="https://docs.aws.amazon.com/enclaves/latest/user/nitro-enclave.html">What is Amazon Web Services Nitro
8238
- * Enclaves?</a> in the <i>Amazon Web Services Nitro Enclaves User
8239
- * Guide</i>.</p>
8240
- * <p>You can't enable Amazon Web Services Nitro Enclaves and hibernation on the same
8241
- * instance.</p>
8242
- */
8243
- EnclaveOptions?: EnclaveOptionsRequest;
8244
- /**
8245
- * @public
8246
- * <p>The options for the instance hostname.
8247
- * The default values are inherited from the subnet.
8248
- * Applies only if creating a network interface, not attaching an existing one.</p>
8249
- */
8250
- PrivateDnsNameOptions?: PrivateDnsNameOptionsRequest;
8251
- /**
8252
- * @public
8253
- * <p>The maintenance and recovery options for the instance.</p>
8254
- */
8255
- MaintenanceOptions?: InstanceMaintenanceOptionsRequest;
8256
- /**
8257
- * @public
8258
- * <p>Indicates whether an instance is enabled for stop protection. For more information,
8259
- * see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/Stop_Start.html#Using_StopProtection">Stop
8260
- * protection</a>. </p>
8261
- */
8262
- DisableApiStop?: boolean;
8263
- /**
8264
- * @public
8265
- * <p>If you’re launching an instance into a dual-stack or IPv6-only subnet, you can enable
8266
- * assigning a primary IPv6 address. A primary IPv6 address is an IPv6 GUA address
8267
- * associated with an ENI that you have enabled to use a primary IPv6 address. Use this
8268
- * option if an instance relies on its IPv6 address not changing. When you launch the
8269
- * instance, Amazon Web Services will automatically assign an IPv6 address associated with
8270
- * the ENI attached to your instance to be the primary IPv6 address. Once you enable an
8271
- * IPv6 GUA address to be a primary IPv6, you cannot disable it. When you enable an IPv6
8272
- * GUA address to be a primary IPv6, the first IPv6 GUA will be made the primary IPv6
8273
- * address until the instance is terminated or the network interface is detached. If you
8274
- * have multiple IPv6 addresses associated with an ENI attached to your instance and you
8275
- * enable a primary IPv6 address, the first IPv6 GUA address associated with the ENI
8276
- * becomes the primary IPv6 address.</p>
8277
- */
8278
- EnablePrimaryIpv6?: boolean;
8279
- }
8280
- /**
8281
- * @public
8282
- * <p>Describes an EBS volume for a Scheduled Instance.</p>
8283
- */
8284
- export interface ScheduledInstancesEbs {
8285
- /**
8286
- * @public
8287
- * <p>Indicates whether the volume is deleted on instance termination.</p>
8288
- */
8289
- DeleteOnTermination?: boolean;
8290
- /**
8291
- * @public
8292
- * <p>Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.</p>
8293
- */
8294
- Encrypted?: boolean;
8295
- /**
8296
- * @public
8297
- * <p>The number of I/O operations per second (IOPS) to provision for an <code>io1</code> or <code>io2</code> volume, with a maximum
8298
- * ratio of 50 IOPS/GiB for <code>io1</code>, and 500 IOPS/GiB for <code>io2</code>. Range is 100 to 64,000 IOPS for
8299
- * volumes in most Regions. Maximum IOPS of 64,000 is guaranteed only on
8300
- * <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-types.html#ec2-nitro-instances">instances built on the Nitro System</a>. Other instance families guarantee performance up to
8301
- * 32,000 IOPS. For more information, see <a href="https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/EBSVolumeTypes.html">Amazon EBS volume types</a> in the
8302
- * <i>Amazon EC2 User Guide</i>.</p>
8303
- * <p>This parameter is valid only for Provisioned IOPS SSD (<code>io1</code> and <code>io2</code>) volumes.</p>
8304
- */
8305
- Iops?: number;
8306
- /**
8307
- * @public
8308
- * <p>The ID of the snapshot.</p>
8309
- */
8310
- SnapshotId?: string;
8311
- /**
8312
- * @public
8313
- * <p>The size of the volume, in GiB.</p>
8314
- * <p>Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.</p>
8315
- */
8316
- VolumeSize?: number;
8317
- /**
8318
- * @public
8319
- * <p>The volume type. <code>gp2</code> for General Purpose SSD, <code>io1</code> or <code> io2</code> for Provisioned IOPS SSD, Throughput Optimized HDD
8320
- * for <code>st1</code>, Cold HDD for <code>sc1</code>, or <code>standard</code> for
8321
- * Magnetic.</p>
8322
- * <p>Default: <code>gp2</code>
8323
- * </p>
8324
- */
8325
- VolumeType?: string;
8326
- }
8327
- /**
8328
- * @public
8329
- * <p>Describes a block device mapping for a Scheduled Instance.</p>
8330
- */
8331
- export interface ScheduledInstancesBlockDeviceMapping {
8332
- /**
8333
- * @public
8334
- * <p>The device name (for example, <code>/dev/sdh</code> or <code>xvdh</code>).</p>
8335
- */
8336
- DeviceName?: string;
8337
- /**
8338
- * @public
8339
- * <p>Parameters used to set up EBS volumes automatically when the instance is launched.</p>
8340
- */
8341
- Ebs?: ScheduledInstancesEbs;
8342
- /**
8343
- * @public
8344
- * <p>To omit the device from the block device mapping, specify an empty string.</p>
8345
- */
8346
- NoDevice?: string;
8347
- /**
8348
- * @public
8349
- * <p>The virtual device name (<code>ephemeral</code>N). Instance store volumes are numbered
8350
- * starting from 0. An instance type with two available instance store volumes can specify mappings
8351
- * for <code>ephemeral0</code> and <code>ephemeral1</code>. The number of available instance store
8352
- * volumes depends on the instance type. After you connect to the instance, you must mount the
8353
- * volume.</p>
8354
- * <p>Constraints: For M3 instances, you must specify instance store volumes in the block device
8355
- * mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes
8356
- * specified in the block device mapping for the AMI.</p>
8357
- */
8358
- VirtualName?: string;
8359
- }
8360
- /**
8361
- * @public
8362
- * <p>Describes an IAM instance profile for a Scheduled Instance.</p>
8363
- */
8364
- export interface ScheduledInstancesIamInstanceProfile {
8365
- /**
8366
- * @public
8367
- * <p>The Amazon Resource Name (ARN).</p>
8368
- */
8369
- Arn?: string;
8370
- /**
8371
- * @public
8372
- * <p>The name.</p>
8373
- */
8374
- Name?: string;
8375
- }
8376
- /**
8377
- * @public
8378
- * <p>Describes whether monitoring is enabled for a Scheduled Instance.</p>
8006
+ * @internal
8379
8007
  */
8380
- export interface ScheduledInstancesMonitoring {
8381
- /**
8382
- * @public
8383
- * <p>Indicates whether monitoring is enabled.</p>
8384
- */
8385
- Enabled?: boolean;
8386
- }
8008
+ export declare const GetVpnConnectionDeviceSampleConfigurationResultFilterSensitiveLog: (obj: GetVpnConnectionDeviceSampleConfigurationResult) => any;
8387
8009
  /**
8388
8010
  * @internal
8389
8011
  */
@@ -8492,7 +8114,3 @@ export declare const RequestSpotInstancesRequestFilterSensitiveLog: (obj: Reques
8492
8114
  * @internal
8493
8115
  */
8494
8116
  export declare const RequestSpotInstancesResultFilterSensitiveLog: (obj: RequestSpotInstancesResult) => any;
8495
- /**
8496
- * @internal
8497
- */
8498
- export declare const RunInstancesRequestFilterSensitiveLog: (obj: RunInstancesRequest) => any;