UNPKG

1.13 MBTypeScriptView Raw
1import {Request} from '../lib/request';
2import {Response} from '../lib/response';
3import {AWSError} from '../lib/error';
4import {Service} from '../lib/service';
5import {WaiterConfiguration} from '../lib/service';
6import {ServiceConfigurationOptions} from '../lib/service';
7import {ConfigBase as Config} from '../lib/config';
8interface Blob {}
9declare class EC2 extends Service {
10 /**
11 * Constructs a service object. This object has one method for each API operation.
12 */
13 constructor(options?: EC2.Types.ClientConfiguration)
14 config: Config & EC2.Types.ClientConfiguration;
15 /**
16 * Accepts the Convertible Reserved Instance exchange quote described in the GetReservedInstancesExchangeQuote call.
17 */
18 acceptReservedInstancesExchangeQuote(params: EC2.Types.AcceptReservedInstancesExchangeQuoteRequest, callback?: (err: AWSError, data: EC2.Types.AcceptReservedInstancesExchangeQuoteResult) => void): Request<EC2.Types.AcceptReservedInstancesExchangeQuoteResult, AWSError>;
19 /**
20 * Accepts the Convertible Reserved Instance exchange quote described in the GetReservedInstancesExchangeQuote call.
21 */
22 acceptReservedInstancesExchangeQuote(callback?: (err: AWSError, data: EC2.Types.AcceptReservedInstancesExchangeQuoteResult) => void): Request<EC2.Types.AcceptReservedInstancesExchangeQuoteResult, AWSError>;
23 /**
24 * Accepts a request to attach a VPC to a transit gateway. The VPC attachment must be in the pendingAcceptance state. Use DescribeTransitGatewayVpcAttachments to view your pending VPC attachment requests. Use RejectTransitGatewayVpcAttachment to reject a VPC attachment request.
25 */
26 acceptTransitGatewayVpcAttachment(params: EC2.Types.AcceptTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.AcceptTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.AcceptTransitGatewayVpcAttachmentResult, AWSError>;
27 /**
28 * Accepts a request to attach a VPC to a transit gateway. The VPC attachment must be in the pendingAcceptance state. Use DescribeTransitGatewayVpcAttachments to view your pending VPC attachment requests. Use RejectTransitGatewayVpcAttachment to reject a VPC attachment request.
29 */
30 acceptTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.AcceptTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.AcceptTransitGatewayVpcAttachmentResult, AWSError>;
31 /**
32 * Accepts one or more interface VPC endpoint connection requests to your VPC endpoint service.
33 */
34 acceptVpcEndpointConnections(params: EC2.Types.AcceptVpcEndpointConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.AcceptVpcEndpointConnectionsResult) => void): Request<EC2.Types.AcceptVpcEndpointConnectionsResult, AWSError>;
35 /**
36 * Accepts one or more interface VPC endpoint connection requests to your VPC endpoint service.
37 */
38 acceptVpcEndpointConnections(callback?: (err: AWSError, data: EC2.Types.AcceptVpcEndpointConnectionsResult) => void): Request<EC2.Types.AcceptVpcEndpointConnectionsResult, AWSError>;
39 /**
40 * Accept a VPC peering connection request. To accept a request, the VPC peering connection must be in the pending-acceptance state, and you must be the owner of the peer VPC. Use DescribeVpcPeeringConnections to view your outstanding VPC peering connection requests. For an inter-region VPC peering connection request, you must accept the VPC peering connection in the region of the accepter VPC.
41 */
42 acceptVpcPeeringConnection(params: EC2.Types.AcceptVpcPeeringConnectionRequest, callback?: (err: AWSError, data: EC2.Types.AcceptVpcPeeringConnectionResult) => void): Request<EC2.Types.AcceptVpcPeeringConnectionResult, AWSError>;
43 /**
44 * Accept a VPC peering connection request. To accept a request, the VPC peering connection must be in the pending-acceptance state, and you must be the owner of the peer VPC. Use DescribeVpcPeeringConnections to view your outstanding VPC peering connection requests. For an inter-region VPC peering connection request, you must accept the VPC peering connection in the region of the accepter VPC.
45 */
46 acceptVpcPeeringConnection(callback?: (err: AWSError, data: EC2.Types.AcceptVpcPeeringConnectionResult) => void): Request<EC2.Types.AcceptVpcPeeringConnectionResult, AWSError>;
47 /**
48 * Advertises an IPv4 address range that is provisioned for use with your AWS resources through bring your own IP addresses (BYOIP). You can perform this operation at most once every 10 seconds, even if you specify different address ranges each time. We recommend that you stop advertising the BYOIP CIDR from other locations when you advertise it from AWS. To minimize down time, you can configure your AWS resources to use an address from a BYOIP CIDR before it is advertised, and then simultaneously stop advertising it from the current location and start advertising it through AWS. It can take a few minutes before traffic to the specified addresses starts routing to AWS because of BGP propagation delays. To stop advertising the BYOIP CIDR, use WithdrawByoipCidr.
49 */
50 advertiseByoipCidr(params: EC2.Types.AdvertiseByoipCidrRequest, callback?: (err: AWSError, data: EC2.Types.AdvertiseByoipCidrResult) => void): Request<EC2.Types.AdvertiseByoipCidrResult, AWSError>;
51 /**
52 * Advertises an IPv4 address range that is provisioned for use with your AWS resources through bring your own IP addresses (BYOIP). You can perform this operation at most once every 10 seconds, even if you specify different address ranges each time. We recommend that you stop advertising the BYOIP CIDR from other locations when you advertise it from AWS. To minimize down time, you can configure your AWS resources to use an address from a BYOIP CIDR before it is advertised, and then simultaneously stop advertising it from the current location and start advertising it through AWS. It can take a few minutes before traffic to the specified addresses starts routing to AWS because of BGP propagation delays. To stop advertising the BYOIP CIDR, use WithdrawByoipCidr.
53 */
54 advertiseByoipCidr(callback?: (err: AWSError, data: EC2.Types.AdvertiseByoipCidrResult) => void): Request<EC2.Types.AdvertiseByoipCidrResult, AWSError>;
55 /**
56 * Allocates an Elastic IP address to your AWS account. After you allocate the Elastic IP address you can associate it with an instance or network interface. After you release an Elastic IP address, it is released to the IP address pool and can be allocated to a different AWS account. You can allocate an Elastic IP address from an address pool owned by AWS or from an address pool created from a public IPv4 address range that you have brought to AWS for use with your AWS resources using bring your own IP addresses (BYOIP). For more information, see Bring Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User Guide. [EC2-VPC] If you release an Elastic IP address, you might be able to recover it. You cannot recover an Elastic IP address that you released after it is allocated to another AWS account. You cannot recover an Elastic IP address for EC2-Classic. To attempt to recover an Elastic IP address that you released, specify it in this operation. An Elastic IP address is for use either in the EC2-Classic platform or in a VPC. By default, you can allocate 5 Elastic IP addresses for EC2-Classic per region and 5 Elastic IP addresses for EC2-VPC per region. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.
57 */
58 allocateAddress(params: EC2.Types.AllocateAddressRequest, callback?: (err: AWSError, data: EC2.Types.AllocateAddressResult) => void): Request<EC2.Types.AllocateAddressResult, AWSError>;
59 /**
60 * Allocates an Elastic IP address to your AWS account. After you allocate the Elastic IP address you can associate it with an instance or network interface. After you release an Elastic IP address, it is released to the IP address pool and can be allocated to a different AWS account. You can allocate an Elastic IP address from an address pool owned by AWS or from an address pool created from a public IPv4 address range that you have brought to AWS for use with your AWS resources using bring your own IP addresses (BYOIP). For more information, see Bring Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User Guide. [EC2-VPC] If you release an Elastic IP address, you might be able to recover it. You cannot recover an Elastic IP address that you released after it is allocated to another AWS account. You cannot recover an Elastic IP address for EC2-Classic. To attempt to recover an Elastic IP address that you released, specify it in this operation. An Elastic IP address is for use either in the EC2-Classic platform or in a VPC. By default, you can allocate 5 Elastic IP addresses for EC2-Classic per region and 5 Elastic IP addresses for EC2-VPC per region. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.
61 */
62 allocateAddress(callback?: (err: AWSError, data: EC2.Types.AllocateAddressResult) => void): Request<EC2.Types.AllocateAddressResult, AWSError>;
63 /**
64 * Allocates a Dedicated Host to your account. At a minimum, specify the instance size type, Availability Zone, and quantity of hosts to allocate.
65 */
66 allocateHosts(params: EC2.Types.AllocateHostsRequest, callback?: (err: AWSError, data: EC2.Types.AllocateHostsResult) => void): Request<EC2.Types.AllocateHostsResult, AWSError>;
67 /**
68 * Allocates a Dedicated Host to your account. At a minimum, specify the instance size type, Availability Zone, and quantity of hosts to allocate.
69 */
70 allocateHosts(callback?: (err: AWSError, data: EC2.Types.AllocateHostsResult) => void): Request<EC2.Types.AllocateHostsResult, AWSError>;
71 /**
72 * Applies a security group to the association between the target network and the Client VPN endpoint. This action replaces the existing security groups with the specified security groups.
73 */
74 applySecurityGroupsToClientVpnTargetNetwork(params: EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkRequest, callback?: (err: AWSError, data: EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkResult) => void): Request<EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkResult, AWSError>;
75 /**
76 * Applies a security group to the association between the target network and the Client VPN endpoint. This action replaces the existing security groups with the specified security groups.
77 */
78 applySecurityGroupsToClientVpnTargetNetwork(callback?: (err: AWSError, data: EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkResult) => void): Request<EC2.Types.ApplySecurityGroupsToClientVpnTargetNetworkResult, AWSError>;
79 /**
80 * Assigns one or more IPv6 addresses to the specified network interface. You can specify one or more specific IPv6 addresses, or you can specify the number of IPv6 addresses to be automatically assigned from within the subnet's IPv6 CIDR block range. You can assign as many IPv6 addresses to a network interface as you can assign private IPv4 addresses, and the limit varies per instance type. For information, see IP Addresses Per Network Interface Per Instance Type in the Amazon Elastic Compute Cloud User Guide.
81 */
82 assignIpv6Addresses(params: EC2.Types.AssignIpv6AddressesRequest, callback?: (err: AWSError, data: EC2.Types.AssignIpv6AddressesResult) => void): Request<EC2.Types.AssignIpv6AddressesResult, AWSError>;
83 /**
84 * Assigns one or more IPv6 addresses to the specified network interface. You can specify one or more specific IPv6 addresses, or you can specify the number of IPv6 addresses to be automatically assigned from within the subnet's IPv6 CIDR block range. You can assign as many IPv6 addresses to a network interface as you can assign private IPv4 addresses, and the limit varies per instance type. For information, see IP Addresses Per Network Interface Per Instance Type in the Amazon Elastic Compute Cloud User Guide.
85 */
86 assignIpv6Addresses(callback?: (err: AWSError, data: EC2.Types.AssignIpv6AddressesResult) => void): Request<EC2.Types.AssignIpv6AddressesResult, AWSError>;
87 /**
88 * Assigns one or more secondary private IP addresses to the specified network interface. You can specify one or more specific secondary IP addresses, or you can specify the number of secondary IP addresses to be automatically assigned within the subnet's CIDR block range. The number of secondary IP addresses that you can assign to an instance varies by instance type. For information about instance types, see Instance Types in the Amazon Elastic Compute Cloud User Guide. For more information about Elastic IP addresses, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide. When you move a secondary private IP address to another network interface, any Elastic IP address that is associated with the IP address is also moved. Remapping an IP address is an asynchronous operation. When you move an IP address from one network interface to another, check network/interfaces/macs/mac/local-ipv4s in the instance metadata to confirm that the remapping is complete.
89 */
90 assignPrivateIpAddresses(params: EC2.Types.AssignPrivateIpAddressesRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
91 /**
92 * Assigns one or more secondary private IP addresses to the specified network interface. You can specify one or more specific secondary IP addresses, or you can specify the number of secondary IP addresses to be automatically assigned within the subnet's CIDR block range. The number of secondary IP addresses that you can assign to an instance varies by instance type. For information about instance types, see Instance Types in the Amazon Elastic Compute Cloud User Guide. For more information about Elastic IP addresses, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide. When you move a secondary private IP address to another network interface, any Elastic IP address that is associated with the IP address is also moved. Remapping an IP address is an asynchronous operation. When you move an IP address from one network interface to another, check network/interfaces/macs/mac/local-ipv4s in the instance metadata to confirm that the remapping is complete.
93 */
94 assignPrivateIpAddresses(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
95 /**
96 * Associates an Elastic IP address with an instance or a network interface. Before you can use an Elastic IP address, you must allocate it to your account. An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide. [EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is already associated with a different instance, it is disassociated from that instance and associated with the specified instance. If you associate an Elastic IP address with an instance that has an existing Elastic IP address, the existing address is disassociated from the instance, but remains allocated to your account. [VPC in an EC2-Classic account] If you don't specify a private IP address, the Elastic IP address is associated with the primary IP address. If the Elastic IP address is already associated with a different instance or a network interface, you get an error unless you allow reassociation. You cannot associate an Elastic IP address with an instance or network interface that has an existing Elastic IP address. This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error, and you may be charged for each time the Elastic IP address is remapped to the same instance. For more information, see the Elastic IP Addresses section of Amazon EC2 Pricing.
97 */
98 associateAddress(params: EC2.Types.AssociateAddressRequest, callback?: (err: AWSError, data: EC2.Types.AssociateAddressResult) => void): Request<EC2.Types.AssociateAddressResult, AWSError>;
99 /**
100 * Associates an Elastic IP address with an instance or a network interface. Before you can use an Elastic IP address, you must allocate it to your account. An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide. [EC2-Classic, VPC in an EC2-VPC-only account] If the Elastic IP address is already associated with a different instance, it is disassociated from that instance and associated with the specified instance. If you associate an Elastic IP address with an instance that has an existing Elastic IP address, the existing address is disassociated from the instance, but remains allocated to your account. [VPC in an EC2-Classic account] If you don't specify a private IP address, the Elastic IP address is associated with the primary IP address. If the Elastic IP address is already associated with a different instance or a network interface, you get an error unless you allow reassociation. You cannot associate an Elastic IP address with an instance or network interface that has an existing Elastic IP address. This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error, and you may be charged for each time the Elastic IP address is remapped to the same instance. For more information, see the Elastic IP Addresses section of Amazon EC2 Pricing.
101 */
102 associateAddress(callback?: (err: AWSError, data: EC2.Types.AssociateAddressResult) => void): Request<EC2.Types.AssociateAddressResult, AWSError>;
103 /**
104 * Associates a target network with a Client VPN endpoint. A target network is a subnet in a VPC. You can associate multiple subnets from the same VPC with a Client VPN endpoint. You can associate only one subnet in each Availability Zone. We recommend that you associate at least two subnets to provide Availability Zone redundancy.
105 */
106 associateClientVpnTargetNetwork(params: EC2.Types.AssociateClientVpnTargetNetworkRequest, callback?: (err: AWSError, data: EC2.Types.AssociateClientVpnTargetNetworkResult) => void): Request<EC2.Types.AssociateClientVpnTargetNetworkResult, AWSError>;
107 /**
108 * Associates a target network with a Client VPN endpoint. A target network is a subnet in a VPC. You can associate multiple subnets from the same VPC with a Client VPN endpoint. You can associate only one subnet in each Availability Zone. We recommend that you associate at least two subnets to provide Availability Zone redundancy.
109 */
110 associateClientVpnTargetNetwork(callback?: (err: AWSError, data: EC2.Types.AssociateClientVpnTargetNetworkResult) => void): Request<EC2.Types.AssociateClientVpnTargetNetworkResult, AWSError>;
111 /**
112 * Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC. After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance. For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.
113 */
114 associateDhcpOptions(params: EC2.Types.AssociateDhcpOptionsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
115 /**
116 * Associates a set of DHCP options (that you've previously created) with the specified VPC, or associates no DHCP options with the VPC. After you associate the options with the VPC, any existing instances and all new instances that you launch in that VPC use the options. You don't need to restart or relaunch the instances. They automatically pick up the changes within a few hours, depending on how frequently the instance renews its DHCP lease. You can explicitly renew the lease using the operating system on the instance. For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.
117 */
118 associateDhcpOptions(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
119 /**
120 * Associates an IAM instance profile with a running or stopped instance. You cannot associate more than one IAM instance profile with an instance.
121 */
122 associateIamInstanceProfile(params: EC2.Types.AssociateIamInstanceProfileRequest, callback?: (err: AWSError, data: EC2.Types.AssociateIamInstanceProfileResult) => void): Request<EC2.Types.AssociateIamInstanceProfileResult, AWSError>;
123 /**
124 * Associates an IAM instance profile with a running or stopped instance. You cannot associate more than one IAM instance profile with an instance.
125 */
126 associateIamInstanceProfile(callback?: (err: AWSError, data: EC2.Types.AssociateIamInstanceProfileResult) => void): Request<EC2.Types.AssociateIamInstanceProfileResult, AWSError>;
127 /**
128 * Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table from the subnet later. A route table can be associated with multiple subnets. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
129 */
130 associateRouteTable(params: EC2.Types.AssociateRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.AssociateRouteTableResult) => void): Request<EC2.Types.AssociateRouteTableResult, AWSError>;
131 /**
132 * Associates a subnet with a route table. The subnet and route table must be in the same VPC. This association causes traffic originating from the subnet to be routed according to the routes in the route table. The action returns an association ID, which you need in order to disassociate the route table from the subnet later. A route table can be associated with multiple subnets. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
133 */
134 associateRouteTable(callback?: (err: AWSError, data: EC2.Types.AssociateRouteTableResult) => void): Request<EC2.Types.AssociateRouteTableResult, AWSError>;
135 /**
136 * Associates a CIDR block with your subnet. You can only associate a single IPv6 CIDR block with your subnet. An IPv6 CIDR block must have a prefix length of /64.
137 */
138 associateSubnetCidrBlock(params: EC2.Types.AssociateSubnetCidrBlockRequest, callback?: (err: AWSError, data: EC2.Types.AssociateSubnetCidrBlockResult) => void): Request<EC2.Types.AssociateSubnetCidrBlockResult, AWSError>;
139 /**
140 * Associates a CIDR block with your subnet. You can only associate a single IPv6 CIDR block with your subnet. An IPv6 CIDR block must have a prefix length of /64.
141 */
142 associateSubnetCidrBlock(callback?: (err: AWSError, data: EC2.Types.AssociateSubnetCidrBlockResult) => void): Request<EC2.Types.AssociateSubnetCidrBlockResult, AWSError>;
143 /**
144 * Associates the specified attachment with the specified transit gateway route table. You can associate only one route table with an attachment.
145 */
146 associateTransitGatewayRouteTable(params: EC2.Types.AssociateTransitGatewayRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.AssociateTransitGatewayRouteTableResult) => void): Request<EC2.Types.AssociateTransitGatewayRouteTableResult, AWSError>;
147 /**
148 * Associates the specified attachment with the specified transit gateway route table. You can associate only one route table with an attachment.
149 */
150 associateTransitGatewayRouteTable(callback?: (err: AWSError, data: EC2.Types.AssociateTransitGatewayRouteTableResult) => void): Request<EC2.Types.AssociateTransitGatewayRouteTableResult, AWSError>;
151 /**
152 * Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, or you can associate an Amazon-provided IPv6 CIDR block. The IPv6 CIDR block size is fixed at /56. For more information about associating CIDR blocks with your VPC and applicable restrictions, see VPC and Subnet Sizing in the Amazon Virtual Private Cloud User Guide.
153 */
154 associateVpcCidrBlock(params: EC2.Types.AssociateVpcCidrBlockRequest, callback?: (err: AWSError, data: EC2.Types.AssociateVpcCidrBlockResult) => void): Request<EC2.Types.AssociateVpcCidrBlockResult, AWSError>;
155 /**
156 * Associates a CIDR block with your VPC. You can associate a secondary IPv4 CIDR block, or you can associate an Amazon-provided IPv6 CIDR block. The IPv6 CIDR block size is fixed at /56. For more information about associating CIDR blocks with your VPC and applicable restrictions, see VPC and Subnet Sizing in the Amazon Virtual Private Cloud User Guide.
157 */
158 associateVpcCidrBlock(callback?: (err: AWSError, data: EC2.Types.AssociateVpcCidrBlockResult) => void): Request<EC2.Types.AssociateVpcCidrBlockResult, AWSError>;
159 /**
160 * Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC's security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it. After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again. Linking your instance to a VPC is sometimes referred to as attaching your instance.
161 */
162 attachClassicLinkVpc(params: EC2.Types.AttachClassicLinkVpcRequest, callback?: (err: AWSError, data: EC2.Types.AttachClassicLinkVpcResult) => void): Request<EC2.Types.AttachClassicLinkVpcResult, AWSError>;
163 /**
164 * Links an EC2-Classic instance to a ClassicLink-enabled VPC through one or more of the VPC's security groups. You cannot link an EC2-Classic instance to more than one VPC at a time. You can only link an instance that's in the running state. An instance is automatically unlinked from a VPC when it's stopped - you can link it to the VPC again when you restart it. After you've linked an instance, you cannot change the VPC security groups that are associated with it. To change the security groups, you must first unlink the instance, and then link it again. Linking your instance to a VPC is sometimes referred to as attaching your instance.
165 */
166 attachClassicLinkVpc(callback?: (err: AWSError, data: EC2.Types.AttachClassicLinkVpcResult) => void): Request<EC2.Types.AttachClassicLinkVpcResult, AWSError>;
167 /**
168 * Attaches an internet gateway to a VPC, enabling connectivity between the internet and the VPC. For more information about your VPC and internet gateway, see the Amazon Virtual Private Cloud User Guide.
169 */
170 attachInternetGateway(params: EC2.Types.AttachInternetGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
171 /**
172 * Attaches an internet gateway to a VPC, enabling connectivity between the internet and the VPC. For more information about your VPC and internet gateway, see the Amazon Virtual Private Cloud User Guide.
173 */
174 attachInternetGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
175 /**
176 * Attaches a network interface to an instance.
177 */
178 attachNetworkInterface(params: EC2.Types.AttachNetworkInterfaceRequest, callback?: (err: AWSError, data: EC2.Types.AttachNetworkInterfaceResult) => void): Request<EC2.Types.AttachNetworkInterfaceResult, AWSError>;
179 /**
180 * Attaches a network interface to an instance.
181 */
182 attachNetworkInterface(callback?: (err: AWSError, data: EC2.Types.AttachNetworkInterfaceResult) => void): Request<EC2.Types.AttachNetworkInterfaceResult, AWSError>;
183 /**
184 * Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name. Encrypted EBS volumes may only be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. For a list of supported device names, see Attaching an EBS Volume to an Instance. Any device names that aren't reserved for instance store volumes can be used for EBS volumes. For more information, see Amazon EC2 Instance Store in the Amazon Elastic Compute Cloud User Guide. If a volume has an AWS Marketplace product code: The volume can be attached only to a stopped instance. AWS Marketplace product codes are copied from the volume to the instance. You must be subscribed to the product. The instance type and operating system of the instance must support the product. For example, you can't detach a volume from a Windows instance and attach it to a Linux instance. For more information about EBS volumes, see Attaching Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.
185 */
186 attachVolume(params: EC2.Types.AttachVolumeRequest, callback?: (err: AWSError, data: EC2.Types.VolumeAttachment) => void): Request<EC2.Types.VolumeAttachment, AWSError>;
187 /**
188 * Attaches an EBS volume to a running or stopped instance and exposes it to the instance with the specified device name. Encrypted EBS volumes may only be attached to instances that support Amazon EBS encryption. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. For a list of supported device names, see Attaching an EBS Volume to an Instance. Any device names that aren't reserved for instance store volumes can be used for EBS volumes. For more information, see Amazon EC2 Instance Store in the Amazon Elastic Compute Cloud User Guide. If a volume has an AWS Marketplace product code: The volume can be attached only to a stopped instance. AWS Marketplace product codes are copied from the volume to the instance. You must be subscribed to the product. The instance type and operating system of the instance must support the product. For example, you can't detach a volume from a Windows instance and attach it to a Linux instance. For more information about EBS volumes, see Attaching Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.
189 */
190 attachVolume(callback?: (err: AWSError, data: EC2.Types.VolumeAttachment) => void): Request<EC2.Types.VolumeAttachment, AWSError>;
191 /**
192 * Attaches a virtual private gateway to a VPC. You can attach one virtual private gateway to one VPC at a time. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
193 */
194 attachVpnGateway(params: EC2.Types.AttachVpnGatewayRequest, callback?: (err: AWSError, data: EC2.Types.AttachVpnGatewayResult) => void): Request<EC2.Types.AttachVpnGatewayResult, AWSError>;
195 /**
196 * Attaches a virtual private gateway to a VPC. You can attach one virtual private gateway to one VPC at a time. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
197 */
198 attachVpnGateway(callback?: (err: AWSError, data: EC2.Types.AttachVpnGatewayResult) => void): Request<EC2.Types.AttachVpnGatewayResult, AWSError>;
199 /**
200 * Adds an ingress authorization rule to a Client VPN endpoint. Ingress authorization rules act as firewall rules that grant access to networks. You must configure ingress authorization rules to enable clients to access resources in AWS or on-premises networks.
201 */
202 authorizeClientVpnIngress(params: EC2.Types.AuthorizeClientVpnIngressRequest, callback?: (err: AWSError, data: EC2.Types.AuthorizeClientVpnIngressResult) => void): Request<EC2.Types.AuthorizeClientVpnIngressResult, AWSError>;
203 /**
204 * Adds an ingress authorization rule to a Client VPN endpoint. Ingress authorization rules act as firewall rules that grant access to networks. You must configure ingress authorization rules to enable clients to access resources in AWS or on-premises networks.
205 */
206 authorizeClientVpnIngress(callback?: (err: AWSError, data: EC2.Types.AuthorizeClientVpnIngressResult) => void): Request<EC2.Types.AuthorizeClientVpnIngressResult, AWSError>;
207 /**
208 * [EC2-VPC only] Adds one or more egress rules to a security group for use with a VPC. Specifically, this action permits instances to send traffic to one or more destination IPv4 or IPv6 CIDR address ranges, or to one or more destination security groups for the same VPC. This action doesn't apply to security groups for use in EC2-Classic. For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide. For more information about security group limits, see Amazon VPC Limits. Each rule consists of the protocol (for example, TCP), plus either a CIDR range or a source group. For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes. You can optionally specify a description for the rule. Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.
209 */
210 authorizeSecurityGroupEgress(params: EC2.Types.AuthorizeSecurityGroupEgressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
211 /**
212 * [EC2-VPC only] Adds one or more egress rules to a security group for use with a VPC. Specifically, this action permits instances to send traffic to one or more destination IPv4 or IPv6 CIDR address ranges, or to one or more destination security groups for the same VPC. This action doesn't apply to security groups for use in EC2-Classic. For more information, see Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide. For more information about security group limits, see Amazon VPC Limits. Each rule consists of the protocol (for example, TCP), plus either a CIDR range or a source group. For the TCP and UDP protocols, you must also specify the destination port or port range. For the ICMP protocol, you must also specify the ICMP type and code. You can use -1 for the type or code to mean all types or all codes. You can optionally specify a description for the rule. Rule changes are propagated to affected instances as quickly as possible. However, a small delay might occur.
213 */
214 authorizeSecurityGroupEgress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
215 /**
216 * Adds one or more ingress rules to a security group. Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur. [EC2-Classic] This action gives one or more IPv4 CIDR address ranges permission to access a security group in your account, or gives one or more security groups (called the source groups) permission to access a security group for your account. A source group can be for your own AWS account, or another. You can have up to 100 rules per group. [EC2-VPC] This action gives one or more IPv4 or IPv6 CIDR address ranges permission to access a security group in your VPC, or gives one or more other security groups (called the source groups) permission to access a security group for your VPC. The security groups must all be for the same VPC or a peer VPC in a VPC peering connection. For more information about VPC security group limits, see Amazon VPC Limits. You can optionally specify a description for the security group rule.
217 */
218 authorizeSecurityGroupIngress(params: EC2.Types.AuthorizeSecurityGroupIngressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
219 /**
220 * Adds one or more ingress rules to a security group. Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur. [EC2-Classic] This action gives one or more IPv4 CIDR address ranges permission to access a security group in your account, or gives one or more security groups (called the source groups) permission to access a security group for your account. A source group can be for your own AWS account, or another. You can have up to 100 rules per group. [EC2-VPC] This action gives one or more IPv4 or IPv6 CIDR address ranges permission to access a security group in your VPC, or gives one or more other security groups (called the source groups) permission to access a security group for your VPC. The security groups must all be for the same VPC or a peer VPC in a VPC peering connection. For more information about VPC security group limits, see Amazon VPC Limits. You can optionally specify a description for the security group rule.
221 */
222 authorizeSecurityGroupIngress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
223 /**
224 * Bundles an Amazon instance store-backed Windows instance. During bundling, only the root device volume (C:\) is bundled. Data on other instance store volumes is not preserved. This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.
225 */
226 bundleInstance(params: EC2.Types.BundleInstanceRequest, callback?: (err: AWSError, data: EC2.Types.BundleInstanceResult) => void): Request<EC2.Types.BundleInstanceResult, AWSError>;
227 /**
228 * Bundles an Amazon instance store-backed Windows instance. During bundling, only the root device volume (C:\) is bundled. Data on other instance store volumes is not preserved. This action is not applicable for Linux/Unix instances or Windows instances that are backed by Amazon EBS.
229 */
230 bundleInstance(callback?: (err: AWSError, data: EC2.Types.BundleInstanceResult) => void): Request<EC2.Types.BundleInstanceResult, AWSError>;
231 /**
232 * Cancels a bundling operation for an instance store-backed Windows instance.
233 */
234 cancelBundleTask(params: EC2.Types.CancelBundleTaskRequest, callback?: (err: AWSError, data: EC2.Types.CancelBundleTaskResult) => void): Request<EC2.Types.CancelBundleTaskResult, AWSError>;
235 /**
236 * Cancels a bundling operation for an instance store-backed Windows instance.
237 */
238 cancelBundleTask(callback?: (err: AWSError, data: EC2.Types.CancelBundleTaskResult) => void): Request<EC2.Types.CancelBundleTaskResult, AWSError>;
239 /**
240 * Cancels the specified Capacity Reservation, releases the reserved capacity, and changes the Capacity Reservation's state to cancelled. Instances running in the reserved capacity continue running until you stop them. Stopped instances that target the Capacity Reservation can no longer launch. Modify these instances to either target a different Capacity Reservation, launch On-Demand Instance capacity, or run in any open Capacity Reservation that has matching attributes and sufficient capacity.
241 */
242 cancelCapacityReservation(params: EC2.Types.CancelCapacityReservationRequest, callback?: (err: AWSError, data: EC2.Types.CancelCapacityReservationResult) => void): Request<EC2.Types.CancelCapacityReservationResult, AWSError>;
243 /**
244 * Cancels the specified Capacity Reservation, releases the reserved capacity, and changes the Capacity Reservation's state to cancelled. Instances running in the reserved capacity continue running until you stop them. Stopped instances that target the Capacity Reservation can no longer launch. Modify these instances to either target a different Capacity Reservation, launch On-Demand Instance capacity, or run in any open Capacity Reservation that has matching attributes and sufficient capacity.
245 */
246 cancelCapacityReservation(callback?: (err: AWSError, data: EC2.Types.CancelCapacityReservationResult) => void): Request<EC2.Types.CancelCapacityReservationResult, AWSError>;
247 /**
248 * Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or is in the process of transferring the final disk image, the command fails and returns an exception. For more information, see Importing a Virtual Machine Using the Amazon EC2 CLI.
249 */
250 cancelConversionTask(params: EC2.Types.CancelConversionRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
251 /**
252 * Cancels an active conversion task. The task can be the import of an instance or volume. The action removes all artifacts of the conversion, including a partially uploaded volume or instance. If the conversion is complete or is in the process of transferring the final disk image, the command fails and returns an exception. For more information, see Importing a Virtual Machine Using the Amazon EC2 CLI.
253 */
254 cancelConversionTask(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
255 /**
256 * Cancels an active export task. The request removes all artifacts of the export, including any partially-created Amazon S3 objects. If the export task is complete or is in the process of transferring the final disk image, the command fails and returns an error.
257 */
258 cancelExportTask(params: EC2.Types.CancelExportTaskRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
259 /**
260 * Cancels an active export task. The request removes all artifacts of the export, including any partially-created Amazon S3 objects. If the export task is complete or is in the process of transferring the final disk image, the command fails and returns an error.
261 */
262 cancelExportTask(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
263 /**
264 * Cancels an in-process import virtual machine or import snapshot task.
265 */
266 cancelImportTask(params: EC2.Types.CancelImportTaskRequest, callback?: (err: AWSError, data: EC2.Types.CancelImportTaskResult) => void): Request<EC2.Types.CancelImportTaskResult, AWSError>;
267 /**
268 * Cancels an in-process import virtual machine or import snapshot task.
269 */
270 cancelImportTask(callback?: (err: AWSError, data: EC2.Types.CancelImportTaskResult) => void): Request<EC2.Types.CancelImportTaskResult, AWSError>;
271 /**
272 * Cancels the specified Reserved Instance listing in the Reserved Instance Marketplace. For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
273 */
274 cancelReservedInstancesListing(params: EC2.Types.CancelReservedInstancesListingRequest, callback?: (err: AWSError, data: EC2.Types.CancelReservedInstancesListingResult) => void): Request<EC2.Types.CancelReservedInstancesListingResult, AWSError>;
275 /**
276 * Cancels the specified Reserved Instance listing in the Reserved Instance Marketplace. For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
277 */
278 cancelReservedInstancesListing(callback?: (err: AWSError, data: EC2.Types.CancelReservedInstancesListingResult) => void): Request<EC2.Types.CancelReservedInstancesListingResult, AWSError>;
279 /**
280 * Cancels the specified Spot Fleet requests. After you cancel a Spot Fleet request, the Spot Fleet launches no new Spot Instances. You must specify whether the Spot Fleet should also terminate its Spot Instances. If you terminate the instances, the Spot Fleet request enters the cancelled_terminating state. Otherwise, the Spot Fleet request enters the cancelled_running state and the instances continue to run until they are interrupted or you terminate them manually.
281 */
282 cancelSpotFleetRequests(params: EC2.Types.CancelSpotFleetRequestsRequest, callback?: (err: AWSError, data: EC2.Types.CancelSpotFleetRequestsResponse) => void): Request<EC2.Types.CancelSpotFleetRequestsResponse, AWSError>;
283 /**
284 * Cancels the specified Spot Fleet requests. After you cancel a Spot Fleet request, the Spot Fleet launches no new Spot Instances. You must specify whether the Spot Fleet should also terminate its Spot Instances. If you terminate the instances, the Spot Fleet request enters the cancelled_terminating state. Otherwise, the Spot Fleet request enters the cancelled_running state and the instances continue to run until they are interrupted or you terminate them manually.
285 */
286 cancelSpotFleetRequests(callback?: (err: AWSError, data: EC2.Types.CancelSpotFleetRequestsResponse) => void): Request<EC2.Types.CancelSpotFleetRequestsResponse, AWSError>;
287 /**
288 * Cancels one or more Spot Instance requests. Canceling a Spot Instance request does not terminate running Spot Instances associated with the request.
289 */
290 cancelSpotInstanceRequests(params: EC2.Types.CancelSpotInstanceRequestsRequest, callback?: (err: AWSError, data: EC2.Types.CancelSpotInstanceRequestsResult) => void): Request<EC2.Types.CancelSpotInstanceRequestsResult, AWSError>;
291 /**
292 * Cancels one or more Spot Instance requests. Canceling a Spot Instance request does not terminate running Spot Instances associated with the request.
293 */
294 cancelSpotInstanceRequests(callback?: (err: AWSError, data: EC2.Types.CancelSpotInstanceRequestsResult) => void): Request<EC2.Types.CancelSpotInstanceRequestsResult, AWSError>;
295 /**
296 * Determines whether a product code is associated with an instance. This action can only be used by the owner of the product code. It is useful when a product code owner must verify whether another user's instance is eligible for support.
297 */
298 confirmProductInstance(params: EC2.Types.ConfirmProductInstanceRequest, callback?: (err: AWSError, data: EC2.Types.ConfirmProductInstanceResult) => void): Request<EC2.Types.ConfirmProductInstanceResult, AWSError>;
299 /**
300 * Determines whether a product code is associated with an instance. This action can only be used by the owner of the product code. It is useful when a product code owner must verify whether another user's instance is eligible for support.
301 */
302 confirmProductInstance(callback?: (err: AWSError, data: EC2.Types.ConfirmProductInstanceResult) => void): Request<EC2.Types.ConfirmProductInstanceResult, AWSError>;
303 /**
304 * Copies the specified Amazon FPGA Image (AFI) to the current region.
305 */
306 copyFpgaImage(params: EC2.Types.CopyFpgaImageRequest, callback?: (err: AWSError, data: EC2.Types.CopyFpgaImageResult) => void): Request<EC2.Types.CopyFpgaImageResult, AWSError>;
307 /**
308 * Copies the specified Amazon FPGA Image (AFI) to the current region.
309 */
310 copyFpgaImage(callback?: (err: AWSError, data: EC2.Types.CopyFpgaImageResult) => void): Request<EC2.Types.CopyFpgaImageResult, AWSError>;
311 /**
312 * Initiates the copy of an AMI from the specified source region to the current region. You specify the destination region by using its endpoint when making the request. Copies of encrypted backing snapshots for the AMI are encrypted. Copies of unencrypted backing snapshots remain unencrypted, unless you set Encrypted during the copy operation. You cannot create an unencrypted copy of an encrypted backing snapshot. For more information about the prerequisites and limits when copying an AMI, see Copying an AMI in the Amazon Elastic Compute Cloud User Guide.
313 */
314 copyImage(params: EC2.Types.CopyImageRequest, callback?: (err: AWSError, data: EC2.Types.CopyImageResult) => void): Request<EC2.Types.CopyImageResult, AWSError>;
315 /**
316 * Initiates the copy of an AMI from the specified source region to the current region. You specify the destination region by using its endpoint when making the request. Copies of encrypted backing snapshots for the AMI are encrypted. Copies of unencrypted backing snapshots remain unencrypted, unless you set Encrypted during the copy operation. You cannot create an unencrypted copy of an encrypted backing snapshot. For more information about the prerequisites and limits when copying an AMI, see Copying an AMI in the Amazon Elastic Compute Cloud User Guide.
317 */
318 copyImage(callback?: (err: AWSError, data: EC2.Types.CopyImageResult) => void): Request<EC2.Types.CopyImageResult, AWSError>;
319 /**
320 * Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the same Region or from one Region to another. You can use the snapshot to create EBS volumes or Amazon Machine Images (AMIs). The snapshot is copied to the regional endpoint that you send the HTTP request to. Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless the Encrypted flag is specified during the snapshot copy operation. By default, encrypted snapshot copies use the default AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can specify a non-default CMK with the KmsKeyId parameter. To copy an encrypted snapshot that has been shared from another account, you must have permissions for the CMK used to encrypt the snapshot. Snapshots created by copying another snapshot have an arbitrary volume ID that should not be used for any purpose. For more information, see Copying an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.
321 */
322 copySnapshot(params: EC2.Types.CopySnapshotRequest, callback?: (err: AWSError, data: EC2.Types.CopySnapshotResult) => void): Request<EC2.Types.CopySnapshotResult, AWSError>;
323 /**
324 * Copies a point-in-time snapshot of an EBS volume and stores it in Amazon S3. You can copy the snapshot within the same Region or from one Region to another. You can use the snapshot to create EBS volumes or Amazon Machine Images (AMIs). The snapshot is copied to the regional endpoint that you send the HTTP request to. Copies of encrypted EBS snapshots remain encrypted. Copies of unencrypted snapshots remain unencrypted, unless the Encrypted flag is specified during the snapshot copy operation. By default, encrypted snapshot copies use the default AWS Key Management Service (AWS KMS) customer master key (CMK); however, you can specify a non-default CMK with the KmsKeyId parameter. To copy an encrypted snapshot that has been shared from another account, you must have permissions for the CMK used to encrypt the snapshot. Snapshots created by copying another snapshot have an arbitrary volume ID that should not be used for any purpose. For more information, see Copying an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.
325 */
326 copySnapshot(callback?: (err: AWSError, data: EC2.Types.CopySnapshotResult) => void): Request<EC2.Types.CopySnapshotResult, AWSError>;
327 /**
328 * Creates a new Capacity Reservation with the specified attributes. Capacity Reservations enable you to reserve capacity for your Amazon EC2 instances in a specific Availability Zone for any duration. This gives you the flexibility to selectively add capacity reservations and still get the Regional RI discounts for that usage. By creating Capacity Reservations, you ensure that you always have access to Amazon EC2 capacity when you need it, for as long as you need it. For more information, see Capacity Reservations in the Amazon Elastic Compute Cloud User Guide. Your request to create a Capacity Reservation could fail if Amazon EC2 does not have sufficient capacity to fulfill the request. If your request fails due to Amazon EC2 capacity constraints, either try again at a later time, try in a different Availability Zone, or request a smaller capacity reservation. If your application is flexible across instance types and sizes, try to create a Capacity Reservation with different instance attributes. Your request could also fail if the requested quantity exceeds your On-Demand Instance limit for the selected instance type. If your request fails due to limit constraints, increase your On-Demand Instance limit for the required instance type and try again. For more information about increasing your instance limits, see Amazon EC2 Service Limits in the Amazon Elastic Compute Cloud User Guide.
329 */
330 createCapacityReservation(params: EC2.Types.CreateCapacityReservationRequest, callback?: (err: AWSError, data: EC2.Types.CreateCapacityReservationResult) => void): Request<EC2.Types.CreateCapacityReservationResult, AWSError>;
331 /**
332 * Creates a new Capacity Reservation with the specified attributes. Capacity Reservations enable you to reserve capacity for your Amazon EC2 instances in a specific Availability Zone for any duration. This gives you the flexibility to selectively add capacity reservations and still get the Regional RI discounts for that usage. By creating Capacity Reservations, you ensure that you always have access to Amazon EC2 capacity when you need it, for as long as you need it. For more information, see Capacity Reservations in the Amazon Elastic Compute Cloud User Guide. Your request to create a Capacity Reservation could fail if Amazon EC2 does not have sufficient capacity to fulfill the request. If your request fails due to Amazon EC2 capacity constraints, either try again at a later time, try in a different Availability Zone, or request a smaller capacity reservation. If your application is flexible across instance types and sizes, try to create a Capacity Reservation with different instance attributes. Your request could also fail if the requested quantity exceeds your On-Demand Instance limit for the selected instance type. If your request fails due to limit constraints, increase your On-Demand Instance limit for the required instance type and try again. For more information about increasing your instance limits, see Amazon EC2 Service Limits in the Amazon Elastic Compute Cloud User Guide.
333 */
334 createCapacityReservation(callback?: (err: AWSError, data: EC2.Types.CreateCapacityReservationResult) => void): Request<EC2.Types.CreateCapacityReservationResult, AWSError>;
335 /**
336 * Creates a Client VPN endpoint. A Client VPN endpoint is the resource you create and configure to enable and manage client VPN sessions. It is the destination endpoint at which all client VPN sessions are terminated.
337 */
338 createClientVpnEndpoint(params: EC2.Types.CreateClientVpnEndpointRequest, callback?: (err: AWSError, data: EC2.Types.CreateClientVpnEndpointResult) => void): Request<EC2.Types.CreateClientVpnEndpointResult, AWSError>;
339 /**
340 * Creates a Client VPN endpoint. A Client VPN endpoint is the resource you create and configure to enable and manage client VPN sessions. It is the destination endpoint at which all client VPN sessions are terminated.
341 */
342 createClientVpnEndpoint(callback?: (err: AWSError, data: EC2.Types.CreateClientVpnEndpointResult) => void): Request<EC2.Types.CreateClientVpnEndpointResult, AWSError>;
343 /**
344 * Adds a route to a network to a Client VPN endpoint. Each Client VPN endpoint has a route table that describes the available destination network routes. Each route in the route table specifies the path for traffic to specific resources or networks.
345 */
346 createClientVpnRoute(params: EC2.Types.CreateClientVpnRouteRequest, callback?: (err: AWSError, data: EC2.Types.CreateClientVpnRouteResult) => void): Request<EC2.Types.CreateClientVpnRouteResult, AWSError>;
347 /**
348 * Adds a route to a network to a Client VPN endpoint. Each Client VPN endpoint has a route table that describes the available destination network routes. Each route in the route table specifies the path for traffic to specific resources or networks.
349 */
350 createClientVpnRoute(callback?: (err: AWSError, data: EC2.Types.CreateClientVpnRouteResult) => void): Request<EC2.Types.CreateClientVpnRouteResult, AWSError>;
351 /**
352 * Provides information to AWS about your VPN customer gateway device. The customer gateway is the appliance at your end of the VPN connection. (The device on the AWS side of the VPN connection is the virtual private gateway.) You must provide the Internet-routable IP address of the customer gateway's external interface. The IP address must be static and may be behind a device performing network address translation (NAT). For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use a private ASN (in the 64512 - 65534 range). Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, with the exception of 7224, which is reserved in the us-east-1 region, and 9059, which is reserved in the eu-west-1 region. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide. You cannot create more than one customer gateway with the same VPN type, IP address, and BGP ASN parameter values. If you run an identical request more than one time, the first request creates the customer gateway, and subsequent requests return information about the existing customer gateway. The subsequent requests do not create new customer gateway resources.
353 */
354 createCustomerGateway(params: EC2.Types.CreateCustomerGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateCustomerGatewayResult) => void): Request<EC2.Types.CreateCustomerGatewayResult, AWSError>;
355 /**
356 * Provides information to AWS about your VPN customer gateway device. The customer gateway is the appliance at your end of the VPN connection. (The device on the AWS side of the VPN connection is the virtual private gateway.) You must provide the Internet-routable IP address of the customer gateway's external interface. The IP address must be static and may be behind a device performing network address translation (NAT). For devices that use Border Gateway Protocol (BGP), you can also provide the device's BGP Autonomous System Number (ASN). You can use an existing ASN assigned to your network. If you don't have an ASN already, you can use a private ASN (in the 64512 - 65534 range). Amazon EC2 supports all 2-byte ASN numbers in the range of 1 - 65534, with the exception of 7224, which is reserved in the us-east-1 region, and 9059, which is reserved in the eu-west-1 region. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide. You cannot create more than one customer gateway with the same VPN type, IP address, and BGP ASN parameter values. If you run an identical request more than one time, the first request creates the customer gateway, and subsequent requests return information about the existing customer gateway. The subsequent requests do not create new customer gateway resources.
357 */
358 createCustomerGateway(callback?: (err: AWSError, data: EC2.Types.CreateCustomerGatewayResult) => void): Request<EC2.Types.CreateCustomerGatewayResult, AWSError>;
359 /**
360 * Creates a default subnet with a size /20 IPv4 CIDR block in the specified Availability Zone in your default VPC. You can have only one default subnet per Availability Zone. For more information, see Creating a Default Subnet in the Amazon Virtual Private Cloud User Guide.
361 */
362 createDefaultSubnet(params: EC2.Types.CreateDefaultSubnetRequest, callback?: (err: AWSError, data: EC2.Types.CreateDefaultSubnetResult) => void): Request<EC2.Types.CreateDefaultSubnetResult, AWSError>;
363 /**
364 * Creates a default subnet with a size /20 IPv4 CIDR block in the specified Availability Zone in your default VPC. You can have only one default subnet per Availability Zone. For more information, see Creating a Default Subnet in the Amazon Virtual Private Cloud User Guide.
365 */
366 createDefaultSubnet(callback?: (err: AWSError, data: EC2.Types.CreateDefaultSubnetResult) => void): Request<EC2.Types.CreateDefaultSubnetResult, AWSError>;
367 /**
368 * Creates a default VPC with a size /16 IPv4 CIDR block and a default subnet in each Availability Zone. For more information about the components of a default VPC, see Default VPC and Default Subnets in the Amazon Virtual Private Cloud User Guide. You cannot specify the components of the default VPC yourself. If you deleted your previous default VPC, you can create a default VPC. You cannot have more than one default VPC per Region. If your account supports EC2-Classic, you cannot use this action to create a default VPC in a Region that supports EC2-Classic. If you want a default VPC in a Region that supports EC2-Classic, see "I really want a default VPC for my existing EC2 account. Is that possible?" in the Default VPCs FAQ.
369 */
370 createDefaultVpc(params: EC2.Types.CreateDefaultVpcRequest, callback?: (err: AWSError, data: EC2.Types.CreateDefaultVpcResult) => void): Request<EC2.Types.CreateDefaultVpcResult, AWSError>;
371 /**
372 * Creates a default VPC with a size /16 IPv4 CIDR block and a default subnet in each Availability Zone. For more information about the components of a default VPC, see Default VPC and Default Subnets in the Amazon Virtual Private Cloud User Guide. You cannot specify the components of the default VPC yourself. If you deleted your previous default VPC, you can create a default VPC. You cannot have more than one default VPC per Region. If your account supports EC2-Classic, you cannot use this action to create a default VPC in a Region that supports EC2-Classic. If you want a default VPC in a Region that supports EC2-Classic, see "I really want a default VPC for my existing EC2 account. Is that possible?" in the Default VPCs FAQ.
373 */
374 createDefaultVpc(callback?: (err: AWSError, data: EC2.Types.CreateDefaultVpcResult) => void): Request<EC2.Types.CreateDefaultVpcResult, AWSError>;
375 /**
376 * Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the individual DHCP options you can specify. For more information about the options, see RFC 2132. domain-name-servers - The IP addresses of up to four domain name servers, or AmazonProvidedDNS. The default DHCP option set specifies AmazonProvidedDNS. If specifying more than one domain name server, specify the IP addresses in a single parameter, separated by commas. ITo have your instance to receive a custom DNS hostname as specified in domain-name, you must set domain-name-servers to a custom DNS server. domain-name - If you're using AmazonProvidedDNS in us-east-1, specify ec2.internal. If you're using AmazonProvidedDNS in another region, specify region.compute.internal (for example, ap-northeast-1.compute.internal). Otherwise, specify a domain name (for example, MyCompany.com). This value is used to complete unqualified DNS hostnames. Important: Some Linux operating systems accept multiple domain names separated by spaces. However, Windows and other Linux operating systems treat the value as a single domain, which results in unexpected behavior. If your DHCP options set is associated with a VPC that has instances with multiple operating systems, specify only one domain name. ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) servers. netbios-name-servers - The IP addresses of up to four NetBIOS name servers. netbios-node-type - The NetBIOS node type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast are not currently supported). For more information about these node types, see RFC 2132. Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide (AmazonProvidedDNS). If you create a set of options, and if your VPC has an internet gateway, make sure to set the domain-name-servers option either to AmazonProvidedDNS or to a domain name server of your choice. For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.
377 */
378 createDhcpOptions(params: EC2.Types.CreateDhcpOptionsRequest, callback?: (err: AWSError, data: EC2.Types.CreateDhcpOptionsResult) => void): Request<EC2.Types.CreateDhcpOptionsResult, AWSError>;
379 /**
380 * Creates a set of DHCP options for your VPC. After creating the set, you must associate it with the VPC, causing all existing and new instances that you launch in the VPC to use this set of DHCP options. The following are the individual DHCP options you can specify. For more information about the options, see RFC 2132. domain-name-servers - The IP addresses of up to four domain name servers, or AmazonProvidedDNS. The default DHCP option set specifies AmazonProvidedDNS. If specifying more than one domain name server, specify the IP addresses in a single parameter, separated by commas. ITo have your instance to receive a custom DNS hostname as specified in domain-name, you must set domain-name-servers to a custom DNS server. domain-name - If you're using AmazonProvidedDNS in us-east-1, specify ec2.internal. If you're using AmazonProvidedDNS in another region, specify region.compute.internal (for example, ap-northeast-1.compute.internal). Otherwise, specify a domain name (for example, MyCompany.com). This value is used to complete unqualified DNS hostnames. Important: Some Linux operating systems accept multiple domain names separated by spaces. However, Windows and other Linux operating systems treat the value as a single domain, which results in unexpected behavior. If your DHCP options set is associated with a VPC that has instances with multiple operating systems, specify only one domain name. ntp-servers - The IP addresses of up to four Network Time Protocol (NTP) servers. netbios-name-servers - The IP addresses of up to four NetBIOS name servers. netbios-node-type - The NetBIOS node type (1, 2, 4, or 8). We recommend that you specify 2 (broadcast and multicast are not currently supported). For more information about these node types, see RFC 2132. Your VPC automatically starts out with a set of DHCP options that includes only a DNS server that we provide (AmazonProvidedDNS). If you create a set of options, and if your VPC has an internet gateway, make sure to set the domain-name-servers option either to AmazonProvidedDNS or to a domain name server of your choice. For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.
381 */
382 createDhcpOptions(callback?: (err: AWSError, data: EC2.Types.CreateDhcpOptionsResult) => void): Request<EC2.Types.CreateDhcpOptionsResult, AWSError>;
383 /**
384 * [IPv6 only] Creates an egress-only internet gateway for your VPC. An egress-only internet gateway is used to enable outbound communication over IPv6 from instances in your VPC to the internet, and prevents hosts outside of your VPC from initiating an IPv6 connection with your instance.
385 */
386 createEgressOnlyInternetGateway(params: EC2.Types.CreateEgressOnlyInternetGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateEgressOnlyInternetGatewayResult) => void): Request<EC2.Types.CreateEgressOnlyInternetGatewayResult, AWSError>;
387 /**
388 * [IPv6 only] Creates an egress-only internet gateway for your VPC. An egress-only internet gateway is used to enable outbound communication over IPv6 from instances in your VPC to the internet, and prevents hosts outside of your VPC from initiating an IPv6 connection with your instance.
389 */
390 createEgressOnlyInternetGateway(callback?: (err: AWSError, data: EC2.Types.CreateEgressOnlyInternetGatewayResult) => void): Request<EC2.Types.CreateEgressOnlyInternetGatewayResult, AWSError>;
391 /**
392 * Launches an EC2 Fleet. You can create a single EC2 Fleet that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet. For more information, see Launching an EC2 Fleet in the Amazon Elastic Compute Cloud User Guide.
393 */
394 createFleet(params: EC2.Types.CreateFleetRequest, callback?: (err: AWSError, data: EC2.Types.CreateFleetResult) => void): Request<EC2.Types.CreateFleetResult, AWSError>;
395 /**
396 * Launches an EC2 Fleet. You can create a single EC2 Fleet that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet. For more information, see Launching an EC2 Fleet in the Amazon Elastic Compute Cloud User Guide.
397 */
398 createFleet(callback?: (err: AWSError, data: EC2.Types.CreateFleetResult) => void): Request<EC2.Types.CreateFleetResult, AWSError>;
399 /**
400 * Creates one or more flow logs to capture information about IP traffic for a specific network interface, subnet, or VPC. Flow log data for a monitored network interface is recorded as flow log records, which are log events consisting of fields that describe the traffic flow. For more information, see Flow Log Records in the Amazon Virtual Private Cloud User Guide. When publishing to CloudWatch Logs, flow log records are published to a log group, and each network interface has a unique log stream in the log group. When publishing to Amazon S3, flow log records for all of the monitored network interfaces are published to a single log file object that is stored in the specified bucket. For more information, see VPC Flow Logs in the Amazon Virtual Private Cloud User Guide.
401 */
402 createFlowLogs(params: EC2.Types.CreateFlowLogsRequest, callback?: (err: AWSError, data: EC2.Types.CreateFlowLogsResult) => void): Request<EC2.Types.CreateFlowLogsResult, AWSError>;
403 /**
404 * Creates one or more flow logs to capture information about IP traffic for a specific network interface, subnet, or VPC. Flow log data for a monitored network interface is recorded as flow log records, which are log events consisting of fields that describe the traffic flow. For more information, see Flow Log Records in the Amazon Virtual Private Cloud User Guide. When publishing to CloudWatch Logs, flow log records are published to a log group, and each network interface has a unique log stream in the log group. When publishing to Amazon S3, flow log records for all of the monitored network interfaces are published to a single log file object that is stored in the specified bucket. For more information, see VPC Flow Logs in the Amazon Virtual Private Cloud User Guide.
405 */
406 createFlowLogs(callback?: (err: AWSError, data: EC2.Types.CreateFlowLogsResult) => void): Request<EC2.Types.CreateFlowLogsResult, AWSError>;
407 /**
408 * Creates an Amazon FPGA Image (AFI) from the specified design checkpoint (DCP). The create operation is asynchronous. To verify that the AFI is ready for use, check the output logs. An AFI contains the FPGA bitstream that is ready to download to an FPGA. You can securely deploy an AFI on one or more FPGA-accelerated instances. For more information, see the AWS FPGA Hardware Development Kit.
409 */
410 createFpgaImage(params: EC2.Types.CreateFpgaImageRequest, callback?: (err: AWSError, data: EC2.Types.CreateFpgaImageResult) => void): Request<EC2.Types.CreateFpgaImageResult, AWSError>;
411 /**
412 * Creates an Amazon FPGA Image (AFI) from the specified design checkpoint (DCP). The create operation is asynchronous. To verify that the AFI is ready for use, check the output logs. An AFI contains the FPGA bitstream that is ready to download to an FPGA. You can securely deploy an AFI on one or more FPGA-accelerated instances. For more information, see the AWS FPGA Hardware Development Kit.
413 */
414 createFpgaImage(callback?: (err: AWSError, data: EC2.Types.CreateFpgaImageResult) => void): Request<EC2.Types.CreateFpgaImageResult, AWSError>;
415 /**
416 * Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped. If you customized your instance with instance store volumes or EBS volumes in addition to the root device volume, the new AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, the instance automatically launches with those additional volumes. For more information, see Creating Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User Guide.
417 */
418 createImage(params: EC2.Types.CreateImageRequest, callback?: (err: AWSError, data: EC2.Types.CreateImageResult) => void): Request<EC2.Types.CreateImageResult, AWSError>;
419 /**
420 * Creates an Amazon EBS-backed AMI from an Amazon EBS-backed instance that is either running or stopped. If you customized your instance with instance store volumes or EBS volumes in addition to the root device volume, the new AMI contains block device mapping information for those volumes. When you launch an instance from this new AMI, the instance automatically launches with those additional volumes. For more information, see Creating Amazon EBS-Backed Linux AMIs in the Amazon Elastic Compute Cloud User Guide.
421 */
422 createImage(callback?: (err: AWSError, data: EC2.Types.CreateImageResult) => void): Request<EC2.Types.CreateImageResult, AWSError>;
423 /**
424 * Exports a running or stopped instance to an S3 bucket. For information about the supported operating systems, image formats, and known limitations for the types of instances you can export, see Exporting an Instance as a VM Using VM Import/Export in the VM Import/Export User Guide.
425 */
426 createInstanceExportTask(params: EC2.Types.CreateInstanceExportTaskRequest, callback?: (err: AWSError, data: EC2.Types.CreateInstanceExportTaskResult) => void): Request<EC2.Types.CreateInstanceExportTaskResult, AWSError>;
427 /**
428 * Exports a running or stopped instance to an S3 bucket. For information about the supported operating systems, image formats, and known limitations for the types of instances you can export, see Exporting an Instance as a VM Using VM Import/Export in the VM Import/Export User Guide.
429 */
430 createInstanceExportTask(callback?: (err: AWSError, data: EC2.Types.CreateInstanceExportTaskResult) => void): Request<EC2.Types.CreateInstanceExportTaskResult, AWSError>;
431 /**
432 * Creates an internet gateway for use with a VPC. After creating the internet gateway, you attach it to a VPC using AttachInternetGateway. For more information about your VPC and internet gateway, see the Amazon Virtual Private Cloud User Guide.
433 */
434 createInternetGateway(params: EC2.Types.CreateInternetGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateInternetGatewayResult) => void): Request<EC2.Types.CreateInternetGatewayResult, AWSError>;
435 /**
436 * Creates an internet gateway for use with a VPC. After creating the internet gateway, you attach it to a VPC using AttachInternetGateway. For more information about your VPC and internet gateway, see the Amazon Virtual Private Cloud User Guide.
437 */
438 createInternetGateway(callback?: (err: AWSError, data: EC2.Types.CreateInternetGatewayResult) => void): Request<EC2.Types.CreateInternetGatewayResult, AWSError>;
439 /**
440 * Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#1 private key. If a key with the specified name already exists, Amazon EC2 returns an error. You can have up to five thousand key pairs per region. The key pair returned to you is available only in the region in which you create it. If you prefer, you can create your own key pair using a third-party tool and upload it to any region using ImportKeyPair. For more information, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.
441 */
442 createKeyPair(params: EC2.Types.CreateKeyPairRequest, callback?: (err: AWSError, data: EC2.Types.KeyPair) => void): Request<EC2.Types.KeyPair, AWSError>;
443 /**
444 * Creates a 2048-bit RSA key pair with the specified name. Amazon EC2 stores the public key and displays the private key for you to save to a file. The private key is returned as an unencrypted PEM encoded PKCS#1 private key. If a key with the specified name already exists, Amazon EC2 returns an error. You can have up to five thousand key pairs per region. The key pair returned to you is available only in the region in which you create it. If you prefer, you can create your own key pair using a third-party tool and upload it to any region using ImportKeyPair. For more information, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.
445 */
446 createKeyPair(callback?: (err: AWSError, data: EC2.Types.KeyPair) => void): Request<EC2.Types.KeyPair, AWSError>;
447 /**
448 * Creates a launch template. A launch template contains the parameters to launch an instance. When you launch an instance using RunInstances, you can specify a launch template instead of providing the launch parameters in the request.
449 */
450 createLaunchTemplate(params: EC2.Types.CreateLaunchTemplateRequest, callback?: (err: AWSError, data: EC2.Types.CreateLaunchTemplateResult) => void): Request<EC2.Types.CreateLaunchTemplateResult, AWSError>;
451 /**
452 * Creates a launch template. A launch template contains the parameters to launch an instance. When you launch an instance using RunInstances, you can specify a launch template instead of providing the launch parameters in the request.
453 */
454 createLaunchTemplate(callback?: (err: AWSError, data: EC2.Types.CreateLaunchTemplateResult) => void): Request<EC2.Types.CreateLaunchTemplateResult, AWSError>;
455 /**
456 * Creates a new version for a launch template. You can specify an existing version of launch template from which to base the new version. Launch template versions are numbered in the order in which they are created. You cannot specify, change, or replace the numbering of launch template versions.
457 */
458 createLaunchTemplateVersion(params: EC2.Types.CreateLaunchTemplateVersionRequest, callback?: (err: AWSError, data: EC2.Types.CreateLaunchTemplateVersionResult) => void): Request<EC2.Types.CreateLaunchTemplateVersionResult, AWSError>;
459 /**
460 * Creates a new version for a launch template. You can specify an existing version of launch template from which to base the new version. Launch template versions are numbered in the order in which they are created. You cannot specify, change, or replace the numbering of launch template versions.
461 */
462 createLaunchTemplateVersion(callback?: (err: AWSError, data: EC2.Types.CreateLaunchTemplateVersionResult) => void): Request<EC2.Types.CreateLaunchTemplateVersionResult, AWSError>;
463 /**
464 * Creates a NAT gateway in the specified public subnet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. Internet-bound traffic from a private subnet can be routed to the NAT gateway, therefore enabling instances in the private subnet to connect to the internet. For more information, see NAT Gateways in the Amazon Virtual Private Cloud User Guide.
465 */
466 createNatGateway(params: EC2.Types.CreateNatGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateNatGatewayResult) => void): Request<EC2.Types.CreateNatGatewayResult, AWSError>;
467 /**
468 * Creates a NAT gateway in the specified public subnet. This action creates a network interface in the specified subnet with a private IP address from the IP address range of the subnet. Internet-bound traffic from a private subnet can be routed to the NAT gateway, therefore enabling instances in the private subnet to connect to the internet. For more information, see NAT Gateways in the Amazon Virtual Private Cloud User Guide.
469 */
470 createNatGateway(callback?: (err: AWSError, data: EC2.Types.CreateNatGatewayResult) => void): Request<EC2.Types.CreateNatGatewayResult, AWSError>;
471 /**
472 * Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
473 */
474 createNetworkAcl(params: EC2.Types.CreateNetworkAclRequest, callback?: (err: AWSError, data: EC2.Types.CreateNetworkAclResult) => void): Request<EC2.Types.CreateNetworkAclResult, AWSError>;
475 /**
476 * Creates a network ACL in a VPC. Network ACLs provide an optional layer of security (in addition to security groups) for the instances in your VPC. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
477 */
478 createNetworkAcl(callback?: (err: AWSError, data: EC2.Types.CreateNetworkAclResult) => void): Request<EC2.Types.CreateNetworkAclResult, AWSError>;
479 /**
480 * Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules. We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules. After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
481 */
482 createNetworkAclEntry(params: EC2.Types.CreateNetworkAclEntryRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
483 /**
484 * Creates an entry (a rule) in a network ACL with the specified rule number. Each network ACL has a set of numbered ingress rules and a separate set of numbered egress rules. When determining whether a packet should be allowed in or out of a subnet associated with the ACL, we process the entries in the ACL according to the rule numbers, in ascending order. Each network ACL has a set of ingress rules and a separate set of egress rules. We recommend that you leave room between the rule numbers (for example, 100, 110, 120, ...), and not number them one right after the other (for example, 101, 102, 103, ...). This makes it easier to add a rule between existing ones without having to renumber the rules. After you add an entry, you can't modify it; you must either replace it, or create an entry and delete the old one. For more information about network ACLs, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
485 */
486 createNetworkAclEntry(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
487 /**
488 * Creates a network interface in the specified subnet. For more information about network interfaces, see Elastic Network Interfaces in the Amazon Virtual Private Cloud User Guide.
489 */
490 createNetworkInterface(params: EC2.Types.CreateNetworkInterfaceRequest, callback?: (err: AWSError, data: EC2.Types.CreateNetworkInterfaceResult) => void): Request<EC2.Types.CreateNetworkInterfaceResult, AWSError>;
491 /**
492 * Creates a network interface in the specified subnet. For more information about network interfaces, see Elastic Network Interfaces in the Amazon Virtual Private Cloud User Guide.
493 */
494 createNetworkInterface(callback?: (err: AWSError, data: EC2.Types.CreateNetworkInterfaceResult) => void): Request<EC2.Types.CreateNetworkInterfaceResult, AWSError>;
495 /**
496 * Grants an AWS-authorized account permission to attach the specified network interface to an instance in their account. You can grant permission to a single AWS account only, and only one account at a time.
497 */
498 createNetworkInterfacePermission(params: EC2.Types.CreateNetworkInterfacePermissionRequest, callback?: (err: AWSError, data: EC2.Types.CreateNetworkInterfacePermissionResult) => void): Request<EC2.Types.CreateNetworkInterfacePermissionResult, AWSError>;
499 /**
500 * Grants an AWS-authorized account permission to attach the specified network interface to an instance in their account. You can grant permission to a single AWS account only, and only one account at a time.
501 */
502 createNetworkInterfacePermission(callback?: (err: AWSError, data: EC2.Types.CreateNetworkInterfacePermissionResult) => void): Request<EC2.Types.CreateNetworkInterfacePermissionResult, AWSError>;
503 /**
504 * Creates a placement group in which to launch instances. The strategy of the placement group determines how the instances are organized within the group. A cluster placement group is a logical grouping of instances within a single Availability Zone that benefit from low network latency, high network throughput. A spread placement group places instances on distinct hardware. A partition placement group places groups of instances in different partitions, where instances in one partition do not share the same hardware with instances in another partition. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.
505 */
506 createPlacementGroup(params: EC2.Types.CreatePlacementGroupRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
507 /**
508 * Creates a placement group in which to launch instances. The strategy of the placement group determines how the instances are organized within the group. A cluster placement group is a logical grouping of instances within a single Availability Zone that benefit from low network latency, high network throughput. A spread placement group places instances on distinct hardware. A partition placement group places groups of instances in different partitions, where instances in one partition do not share the same hardware with instances in another partition. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.
509 */
510 createPlacementGroup(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
511 /**
512 * Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in the Reserved Instance Marketplace. You can submit one Standard Reserved Instance listing at a time. To get a list of your Standard Reserved Instances, you can use the DescribeReservedInstances operation. Only Standard Reserved Instances can be sold in the Reserved Instance Marketplace. Convertible Reserved Instances cannot be sold. The Reserved Instance Marketplace matches sellers who want to resell Standard Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances. To sell your Standard Reserved Instances, you must first register as a seller in the Reserved Instance Marketplace. After completing the registration process, you can create a Reserved Instance Marketplace listing of some or all of your Standard Reserved Instances, and specify the upfront price to receive for them. Your Standard Reserved Instance listings then become available for purchase. To view the details of your Standard Reserved Instance listing, you can use the DescribeReservedInstancesListings operation. For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
513 */
514 createReservedInstancesListing(params: EC2.Types.CreateReservedInstancesListingRequest, callback?: (err: AWSError, data: EC2.Types.CreateReservedInstancesListingResult) => void): Request<EC2.Types.CreateReservedInstancesListingResult, AWSError>;
515 /**
516 * Creates a listing for Amazon EC2 Standard Reserved Instances to be sold in the Reserved Instance Marketplace. You can submit one Standard Reserved Instance listing at a time. To get a list of your Standard Reserved Instances, you can use the DescribeReservedInstances operation. Only Standard Reserved Instances can be sold in the Reserved Instance Marketplace. Convertible Reserved Instances cannot be sold. The Reserved Instance Marketplace matches sellers who want to resell Standard Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances. To sell your Standard Reserved Instances, you must first register as a seller in the Reserved Instance Marketplace. After completing the registration process, you can create a Reserved Instance Marketplace listing of some or all of your Standard Reserved Instances, and specify the upfront price to receive for them. Your Standard Reserved Instance listings then become available for purchase. To view the details of your Standard Reserved Instance listing, you can use the DescribeReservedInstancesListings operation. For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
517 */
518 createReservedInstancesListing(callback?: (err: AWSError, data: EC2.Types.CreateReservedInstancesListingResult) => void): Request<EC2.Types.CreateReservedInstancesListingResult, AWSError>;
519 /**
520 * Creates a route in a route table within a VPC. You must specify one of the following targets: internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, or egress-only internet gateway. When determining how to route traffic, we use the route with the most specific match. For example, traffic is destined for the IPv4 address 192.0.2.3, and the route table includes the following two IPv4 routes: 192.0.2.0/24 (goes to some target A) 192.0.2.0/28 (goes to some target B) Both routes apply to the traffic destined for 192.0.2.3. However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.
521 */
522 createRoute(params: EC2.Types.CreateRouteRequest, callback?: (err: AWSError, data: EC2.Types.CreateRouteResult) => void): Request<EC2.Types.CreateRouteResult, AWSError>;
523 /**
524 * Creates a route in a route table within a VPC. You must specify one of the following targets: internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, or egress-only internet gateway. When determining how to route traffic, we use the route with the most specific match. For example, traffic is destined for the IPv4 address 192.0.2.3, and the route table includes the following two IPv4 routes: 192.0.2.0/24 (goes to some target A) 192.0.2.0/28 (goes to some target B) Both routes apply to the traffic destined for 192.0.2.3. However, the second route in the list covers a smaller number of IP addresses and is therefore more specific, so we use that route to determine where to target the traffic. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.
525 */
526 createRoute(callback?: (err: AWSError, data: EC2.Types.CreateRouteResult) => void): Request<EC2.Types.CreateRouteResult, AWSError>;
527 /**
528 * Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
529 */
530 createRouteTable(params: EC2.Types.CreateRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.CreateRouteTableResult) => void): Request<EC2.Types.CreateRouteTableResult, AWSError>;
531 /**
532 * Creates a route table for the specified VPC. After you create a route table, you can add routes and associate the table with a subnet. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
533 */
534 createRouteTable(callback?: (err: AWSError, data: EC2.Types.CreateRouteTableResult) => void): Request<EC2.Types.CreateRouteTableResult, AWSError>;
535 /**
536 * Creates a security group. A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide. EC2-Classic: You can have up to 500 security groups. EC2-VPC: You can create up to 500 security groups per VPC. When you create a security group, you specify a friendly name of your choice. You can have a security group for use in EC2-Classic with the same name as a security group for use in a VPC. However, you can't have two security groups for use in EC2-Classic with the same name or two security groups for use in a VPC with the same name. You have a default security group for use in EC2-Classic and a default security group for use in your VPC. If you don't specify a security group when you launch an instance, the instance is launched into the appropriate default security group. A default security group includes a default rule that grants instances unrestricted network access to each other. You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.
537 */
538 createSecurityGroup(params: EC2.Types.CreateSecurityGroupRequest, callback?: (err: AWSError, data: EC2.Types.CreateSecurityGroupResult) => void): Request<EC2.Types.CreateSecurityGroupResult, AWSError>;
539 /**
540 * Creates a security group. A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide. EC2-Classic: You can have up to 500 security groups. EC2-VPC: You can create up to 500 security groups per VPC. When you create a security group, you specify a friendly name of your choice. You can have a security group for use in EC2-Classic with the same name as a security group for use in a VPC. However, you can't have two security groups for use in EC2-Classic with the same name or two security groups for use in a VPC with the same name. You have a default security group for use in EC2-Classic and a default security group for use in your VPC. If you don't specify a security group when you launch an instance, the instance is launched into the appropriate default security group. A default security group includes a default rule that grants instances unrestricted network access to each other. You can add or remove rules from your security groups using AuthorizeSecurityGroupIngress, AuthorizeSecurityGroupEgress, RevokeSecurityGroupIngress, and RevokeSecurityGroupEgress.
541 */
542 createSecurityGroup(callback?: (err: AWSError, data: EC2.Types.CreateSecurityGroupResult) => void): Request<EC2.Types.CreateSecurityGroupResult, AWSError>;
543 /**
544 * Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance. When a snapshot is created, any AWS Marketplace product codes that are associated with the source volume are propagated to the snapshot. You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been written to your EBS volume at the time the snapshot command is issued; this may exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the volume long enough to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is pending. To create a snapshot for EBS volumes that serve as root devices, you should stop the instance before taking the snapshot. Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always remain protected. You can tag your snapshots during creation. For more information, see Tagging Your Amazon EC2 Resources in the Amazon Elastic Compute Cloud User Guide. For more information, see Amazon Elastic Block Store and Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
545 */
546 createSnapshot(params: EC2.Types.CreateSnapshotRequest, callback?: (err: AWSError, data: EC2.Types.Snapshot) => void): Request<EC2.Types.Snapshot, AWSError>;
547 /**
548 * Creates a snapshot of an EBS volume and stores it in Amazon S3. You can use snapshots for backups, to make copies of EBS volumes, and to save data before shutting down an instance. When a snapshot is created, any AWS Marketplace product codes that are associated with the source volume are propagated to the snapshot. You can take a snapshot of an attached volume that is in use. However, snapshots only capture data that has been written to your EBS volume at the time the snapshot command is issued; this may exclude any data that has been cached by any applications or the operating system. If you can pause any file systems on the volume long enough to take a snapshot, your snapshot should be complete. However, if you cannot pause all file writes to the volume, you should unmount the volume from within the instance, issue the snapshot command, and then remount the volume to ensure a consistent and complete snapshot. You may remount and use your volume while the snapshot status is pending. To create a snapshot for EBS volumes that serve as root devices, you should stop the instance before taking the snapshot. Snapshots that are taken from encrypted volumes are automatically encrypted. Volumes that are created from encrypted snapshots are also automatically encrypted. Your encrypted volumes and any associated snapshots always remain protected. You can tag your snapshots during creation. For more information, see Tagging Your Amazon EC2 Resources in the Amazon Elastic Compute Cloud User Guide. For more information, see Amazon Elastic Block Store and Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
549 */
550 createSnapshot(callback?: (err: AWSError, data: EC2.Types.Snapshot) => void): Request<EC2.Types.Snapshot, AWSError>;
551 /**
552 * Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs. You can create one data feed per AWS account. For more information, see Spot Instance Data Feed in the Amazon EC2 User Guide for Linux Instances.
553 */
554 createSpotDatafeedSubscription(params: EC2.Types.CreateSpotDatafeedSubscriptionRequest, callback?: (err: AWSError, data: EC2.Types.CreateSpotDatafeedSubscriptionResult) => void): Request<EC2.Types.CreateSpotDatafeedSubscriptionResult, AWSError>;
555 /**
556 * Creates a data feed for Spot Instances, enabling you to view Spot Instance usage logs. You can create one data feed per AWS account. For more information, see Spot Instance Data Feed in the Amazon EC2 User Guide for Linux Instances.
557 */
558 createSpotDatafeedSubscription(callback?: (err: AWSError, data: EC2.Types.CreateSpotDatafeedSubscriptionResult) => void): Request<EC2.Types.CreateSpotDatafeedSubscriptionResult, AWSError>;
559 /**
560 * Creates a subnet in an existing VPC. When you create each subnet, you provide the VPC ID and IPv4 CIDR block for the subnet. After you create a subnet, you can't change its CIDR block. The size of the subnet's IPv4 CIDR block can be the same as a VPC's IPv4 CIDR block, or a subset of a VPC's IPv4 CIDR block. If you create more than one subnet in a VPC, the subnets' CIDR blocks must not overlap. The smallest IPv4 subnet (and VPC) you can create uses a /28 netmask (16 IPv4 addresses), and the largest uses a /16 netmask (65,536 IPv4 addresses). If you've associated an IPv6 CIDR block with your VPC, you can create a subnet with an IPv6 CIDR block that uses a /64 prefix length. AWS reserves both the first four and the last IPv4 address in each subnet's CIDR block. They're not available for use. If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle. If you launch an instance in a VPC using an Amazon EBS-backed AMI, the IP address doesn't change if you stop and restart the instance (unlike a similar instance launched outside a VPC, which gets a new IP address when restarted). It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available. For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.
561 */
562 createSubnet(params: EC2.Types.CreateSubnetRequest, callback?: (err: AWSError, data: EC2.Types.CreateSubnetResult) => void): Request<EC2.Types.CreateSubnetResult, AWSError>;
563 /**
564 * Creates a subnet in an existing VPC. When you create each subnet, you provide the VPC ID and IPv4 CIDR block for the subnet. After you create a subnet, you can't change its CIDR block. The size of the subnet's IPv4 CIDR block can be the same as a VPC's IPv4 CIDR block, or a subset of a VPC's IPv4 CIDR block. If you create more than one subnet in a VPC, the subnets' CIDR blocks must not overlap. The smallest IPv4 subnet (and VPC) you can create uses a /28 netmask (16 IPv4 addresses), and the largest uses a /16 netmask (65,536 IPv4 addresses). If you've associated an IPv6 CIDR block with your VPC, you can create a subnet with an IPv6 CIDR block that uses a /64 prefix length. AWS reserves both the first four and the last IPv4 address in each subnet's CIDR block. They're not available for use. If you add more than one subnet to a VPC, they're set up in a star topology with a logical router in the middle. If you launch an instance in a VPC using an Amazon EBS-backed AMI, the IP address doesn't change if you stop and restart the instance (unlike a similar instance launched outside a VPC, which gets a new IP address when restarted). It's therefore possible to have a subnet with no running instances (they're all stopped), but no remaining IP addresses available. For more information about subnets, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.
565 */
566 createSubnet(callback?: (err: AWSError, data: EC2.Types.CreateSubnetResult) => void): Request<EC2.Types.CreateSubnetResult, AWSError>;
567 /**
568 * Adds or overwrites one or more tags for the specified Amazon EC2 resource or resources. Each resource can have a maximum of 50 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource. For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control users' access to resources based on tags, see Supported Resource-Level Permissions for Amazon EC2 API Actions in the Amazon Elastic Compute Cloud User Guide.
569 */
570 createTags(params: EC2.Types.CreateTagsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
571 /**
572 * Adds or overwrites one or more tags for the specified Amazon EC2 resource or resources. Each resource can have a maximum of 50 tags. Each tag consists of a key and optional value. Tag keys must be unique per resource. For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide. For more information about creating IAM policies that control users' access to resources based on tags, see Supported Resource-Level Permissions for Amazon EC2 API Actions in the Amazon Elastic Compute Cloud User Guide.
573 */
574 createTags(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
575 /**
576 * Creates a transit gateway. You can use a transit gateway to interconnect your virtual private clouds (VPC) and on-premises networks. After the transit gateway enters the available state, you can attach your VPCs and VPN connections to the transit gateway. To attach your VPCs, use CreateTransitGatewayVpcAttachment. To attach a VPN connection, use CreateCustomerGateway to create a customer gateway and specify the ID of the customer gateway and the ID of the transit gateway in a call to CreateVpnConnection. When you create a transit gateway, we create a default transit gateway route table and use it as the default association route table and the default propagation route table. You can use CreateTransitGatewayRouteTable to create additional transit gateway route tables. If you disable automatic route propagation, we do not create a default transit gateway route table. You can use EnableTransitGatewayRouteTablePropagation to propagate routes from a resource attachment to a transit gateway route table. If you disable automatic associations, you can use AssociateTransitGatewayRouteTable to associate a resource attachment with a transit gateway route table.
577 */
578 createTransitGateway(params: EC2.Types.CreateTransitGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayResult) => void): Request<EC2.Types.CreateTransitGatewayResult, AWSError>;
579 /**
580 * Creates a transit gateway. You can use a transit gateway to interconnect your virtual private clouds (VPC) and on-premises networks. After the transit gateway enters the available state, you can attach your VPCs and VPN connections to the transit gateway. To attach your VPCs, use CreateTransitGatewayVpcAttachment. To attach a VPN connection, use CreateCustomerGateway to create a customer gateway and specify the ID of the customer gateway and the ID of the transit gateway in a call to CreateVpnConnection. When you create a transit gateway, we create a default transit gateway route table and use it as the default association route table and the default propagation route table. You can use CreateTransitGatewayRouteTable to create additional transit gateway route tables. If you disable automatic route propagation, we do not create a default transit gateway route table. You can use EnableTransitGatewayRouteTablePropagation to propagate routes from a resource attachment to a transit gateway route table. If you disable automatic associations, you can use AssociateTransitGatewayRouteTable to associate a resource attachment with a transit gateway route table.
581 */
582 createTransitGateway(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayResult) => void): Request<EC2.Types.CreateTransitGatewayResult, AWSError>;
583 /**
584 * Creates a static route for the specified transit gateway route table.
585 */
586 createTransitGatewayRoute(params: EC2.Types.CreateTransitGatewayRouteRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayRouteResult) => void): Request<EC2.Types.CreateTransitGatewayRouteResult, AWSError>;
587 /**
588 * Creates a static route for the specified transit gateway route table.
589 */
590 createTransitGatewayRoute(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayRouteResult) => void): Request<EC2.Types.CreateTransitGatewayRouteResult, AWSError>;
591 /**
592 * Creates a route table for the specified transit gateway.
593 */
594 createTransitGatewayRouteTable(params: EC2.Types.CreateTransitGatewayRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayRouteTableResult) => void): Request<EC2.Types.CreateTransitGatewayRouteTableResult, AWSError>;
595 /**
596 * Creates a route table for the specified transit gateway.
597 */
598 createTransitGatewayRouteTable(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayRouteTableResult) => void): Request<EC2.Types.CreateTransitGatewayRouteTableResult, AWSError>;
599 /**
600 * Attaches the specified VPC to the specified transit gateway. If you attach a VPC with a CIDR range that overlaps the CIDR range of a VPC that is already attached, the new VPC CIDR range is not propagated to the default propagation route table. To send VPC traffic to an attached transit gateway, add a route to the VPC route table using CreateRoute.
601 */
602 createTransitGatewayVpcAttachment(params: EC2.Types.CreateTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.CreateTransitGatewayVpcAttachmentResult, AWSError>;
603 /**
604 * Attaches the specified VPC to the specified transit gateway. If you attach a VPC with a CIDR range that overlaps the CIDR range of a VPC that is already attached, the new VPC CIDR range is not propagated to the default propagation route table. To send VPC traffic to an attached transit gateway, add a route to the VPC route table using CreateRoute.
605 */
606 createTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.CreateTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.CreateTransitGatewayVpcAttachmentResult, AWSError>;
607 /**
608 * Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to. For more information see Regions and Endpoints. You can create a new empty volume or restore a volume from an EBS snapshot. Any AWS Marketplace product codes from the snapshot are propagated to the volume. You can create encrypted volumes with the Encrypted parameter. Encrypted volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. You can tag your volumes during creation. For more information, see Tagging Your Amazon EC2 Resources in the Amazon Elastic Compute Cloud User Guide. For more information, see Creating an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.
609 */
610 createVolume(params: EC2.Types.CreateVolumeRequest, callback?: (err: AWSError, data: EC2.Types.Volume) => void): Request<EC2.Types.Volume, AWSError>;
611 /**
612 * Creates an EBS volume that can be attached to an instance in the same Availability Zone. The volume is created in the regional endpoint that you send the HTTP request to. For more information see Regions and Endpoints. You can create a new empty volume or restore a volume from an EBS snapshot. Any AWS Marketplace product codes from the snapshot are propagated to the volume. You can create encrypted volumes with the Encrypted parameter. Encrypted volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are also automatically encrypted. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide. You can tag your volumes during creation. For more information, see Tagging Your Amazon EC2 Resources in the Amazon Elastic Compute Cloud User Guide. For more information, see Creating an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.
613 */
614 createVolume(callback?: (err: AWSError, data: EC2.Types.Volume) => void): Request<EC2.Types.Volume, AWSError>;
615 /**
616 * Creates a VPC with the specified IPv4 CIDR block. The smallest VPC you can create uses a /28 netmask (16 IPv4 addresses), and the largest uses a /16 netmask (65,536 IPv4 addresses). For more information about how large to make your VPC, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide. You can optionally request an Amazon-provided IPv6 CIDR block for the VPC. The IPv6 CIDR block uses a /56 prefix length, and is allocated from Amazon's pool of IPv6 addresses. You cannot choose the IPv6 range for your VPC. By default, each instance you launch in the VPC has the default DHCP options, which include only a default DNS server that we provide (AmazonProvidedDNS). For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide. You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon Elastic Compute Cloud User Guide.
617 */
618 createVpc(params: EC2.Types.CreateVpcRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcResult) => void): Request<EC2.Types.CreateVpcResult, AWSError>;
619 /**
620 * Creates a VPC with the specified IPv4 CIDR block. The smallest VPC you can create uses a /28 netmask (16 IPv4 addresses), and the largest uses a /16 netmask (65,536 IPv4 addresses). For more information about how large to make your VPC, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide. You can optionally request an Amazon-provided IPv6 CIDR block for the VPC. The IPv6 CIDR block uses a /56 prefix length, and is allocated from Amazon's pool of IPv6 addresses. You cannot choose the IPv6 range for your VPC. By default, each instance you launch in the VPC has the default DHCP options, which include only a default DNS server that we provide (AmazonProvidedDNS). For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide. You can specify the instance tenancy value for the VPC when you create it. You can't change this value for the VPC after you create it. For more information, see Dedicated Instances in the Amazon Elastic Compute Cloud User Guide.
621 */
622 createVpc(callback?: (err: AWSError, data: EC2.Types.CreateVpcResult) => void): Request<EC2.Types.CreateVpcResult, AWSError>;
623 /**
624 * Creates a VPC endpoint for a specified service. An endpoint enables you to create a private connection between your VPC and the service. The service may be provided by AWS, an AWS Marketplace partner, or another AWS account. For more information, see VPC Endpoints in the Amazon Virtual Private Cloud User Guide. A gateway endpoint serves as a target for a route in your route table for traffic destined for the AWS service. You can specify an endpoint policy to attach to the endpoint that will control access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. An interface endpoint is a network interface in your subnet that serves as an endpoint for communicating with the specified service. You can specify the subnets in which to create an endpoint, and the security groups to associate with the endpoint network interface. Use DescribeVpcEndpointServices to get a list of supported services.
625 */
626 createVpcEndpoint(params: EC2.Types.CreateVpcEndpointRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointResult) => void): Request<EC2.Types.CreateVpcEndpointResult, AWSError>;
627 /**
628 * Creates a VPC endpoint for a specified service. An endpoint enables you to create a private connection between your VPC and the service. The service may be provided by AWS, an AWS Marketplace partner, or another AWS account. For more information, see VPC Endpoints in the Amazon Virtual Private Cloud User Guide. A gateway endpoint serves as a target for a route in your route table for traffic destined for the AWS service. You can specify an endpoint policy to attach to the endpoint that will control access to the service from your VPC. You can also specify the VPC route tables that use the endpoint. An interface endpoint is a network interface in your subnet that serves as an endpoint for communicating with the specified service. You can specify the subnets in which to create an endpoint, and the security groups to associate with the endpoint network interface. Use DescribeVpcEndpointServices to get a list of supported services.
629 */
630 createVpcEndpoint(callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointResult) => void): Request<EC2.Types.CreateVpcEndpointResult, AWSError>;
631 /**
632 * Creates a connection notification for a specified VPC endpoint or VPC endpoint service. A connection notification notifies you of specific endpoint events. You must create an SNS topic to receive notifications. For more information, see Create a Topic in the Amazon Simple Notification Service Developer Guide. You can create a connection notification for interface endpoints only.
633 */
634 createVpcEndpointConnectionNotification(params: EC2.Types.CreateVpcEndpointConnectionNotificationRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointConnectionNotificationResult) => void): Request<EC2.Types.CreateVpcEndpointConnectionNotificationResult, AWSError>;
635 /**
636 * Creates a connection notification for a specified VPC endpoint or VPC endpoint service. A connection notification notifies you of specific endpoint events. You must create an SNS topic to receive notifications. For more information, see Create a Topic in the Amazon Simple Notification Service Developer Guide. You can create a connection notification for interface endpoints only.
637 */
638 createVpcEndpointConnectionNotification(callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointConnectionNotificationResult) => void): Request<EC2.Types.CreateVpcEndpointConnectionNotificationResult, AWSError>;
639 /**
640 * Creates a VPC endpoint service configuration to which service consumers (AWS accounts, IAM users, and IAM roles) can connect. Service consumers can create an interface VPC endpoint to connect to your service. To create an endpoint service configuration, you must first create a Network Load Balancer for your service. For more information, see VPC Endpoint Services in the Amazon Virtual Private Cloud User Guide.
641 */
642 createVpcEndpointServiceConfiguration(params: EC2.Types.CreateVpcEndpointServiceConfigurationRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointServiceConfigurationResult) => void): Request<EC2.Types.CreateVpcEndpointServiceConfigurationResult, AWSError>;
643 /**
644 * Creates a VPC endpoint service configuration to which service consumers (AWS accounts, IAM users, and IAM roles) can connect. Service consumers can create an interface VPC endpoint to connect to your service. To create an endpoint service configuration, you must first create a Network Load Balancer for your service. For more information, see VPC Endpoint Services in the Amazon Virtual Private Cloud User Guide.
645 */
646 createVpcEndpointServiceConfiguration(callback?: (err: AWSError, data: EC2.Types.CreateVpcEndpointServiceConfigurationResult) => void): Request<EC2.Types.CreateVpcEndpointServiceConfigurationResult, AWSError>;
647 /**
648 * Requests a VPC peering connection between two VPCs: a requester VPC that you own and an accepter VPC with which to create the connection. The accepter VPC can belong to another AWS account and can be in a different Region to the requester VPC. The requester VPC and accepter VPC cannot have overlapping CIDR blocks. Limitations and rules apply to a VPC peering connection. For more information, see the limitations section in the VPC Peering Guide. The owner of the accepter VPC must accept the peering request to activate the peering connection. The VPC peering connection request expires after 7 days, after which it cannot be accepted or rejected. If you create a VPC peering connection request between VPCs with overlapping CIDR blocks, the VPC peering connection has a status of failed.
649 */
650 createVpcPeeringConnection(params: EC2.Types.CreateVpcPeeringConnectionRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpcPeeringConnectionResult) => void): Request<EC2.Types.CreateVpcPeeringConnectionResult, AWSError>;
651 /**
652 * Requests a VPC peering connection between two VPCs: a requester VPC that you own and an accepter VPC with which to create the connection. The accepter VPC can belong to another AWS account and can be in a different Region to the requester VPC. The requester VPC and accepter VPC cannot have overlapping CIDR blocks. Limitations and rules apply to a VPC peering connection. For more information, see the limitations section in the VPC Peering Guide. The owner of the accepter VPC must accept the peering request to activate the peering connection. The VPC peering connection request expires after 7 days, after which it cannot be accepted or rejected. If you create a VPC peering connection request between VPCs with overlapping CIDR blocks, the VPC peering connection has a status of failed.
653 */
654 createVpcPeeringConnection(callback?: (err: AWSError, data: EC2.Types.CreateVpcPeeringConnectionResult) => void): Request<EC2.Types.CreateVpcPeeringConnectionResult, AWSError>;
655 /**
656 * Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The only supported connection type is ipsec.1. The response includes information that you need to give to your network administrator to configure your customer gateway. We strongly recommend that you use HTTPS when calling this operation because the response contains sensitive cryptographic information for configuring your customer gateway. If you decide to shut down your VPN connection for any reason and later create a new VPN connection, you must reconfigure your customer gateway with the new information returned from this call. This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
657 */
658 createVpnConnection(params: EC2.Types.CreateVpnConnectionRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpnConnectionResult) => void): Request<EC2.Types.CreateVpnConnectionResult, AWSError>;
659 /**
660 * Creates a VPN connection between an existing virtual private gateway and a VPN customer gateway. The only supported connection type is ipsec.1. The response includes information that you need to give to your network administrator to configure your customer gateway. We strongly recommend that you use HTTPS when calling this operation because the response contains sensitive cryptographic information for configuring your customer gateway. If you decide to shut down your VPN connection for any reason and later create a new VPN connection, you must reconfigure your customer gateway with the new information returned from this call. This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
661 */
662 createVpnConnection(callback?: (err: AWSError, data: EC2.Types.CreateVpnConnectionResult) => void): Request<EC2.Types.CreateVpnConnectionResult, AWSError>;
663 /**
664 * Creates a static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
665 */
666 createVpnConnectionRoute(params: EC2.Types.CreateVpnConnectionRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
667 /**
668 * Creates a static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
669 */
670 createVpnConnectionRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
671 /**
672 * Creates a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
673 */
674 createVpnGateway(params: EC2.Types.CreateVpnGatewayRequest, callback?: (err: AWSError, data: EC2.Types.CreateVpnGatewayResult) => void): Request<EC2.Types.CreateVpnGatewayResult, AWSError>;
675 /**
676 * Creates a virtual private gateway. A virtual private gateway is the endpoint on the VPC side of your VPN connection. You can create a virtual private gateway before creating the VPC itself. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
677 */
678 createVpnGateway(callback?: (err: AWSError, data: EC2.Types.CreateVpnGatewayResult) => void): Request<EC2.Types.CreateVpnGatewayResult, AWSError>;
679 /**
680 * Deletes the specified Client VPN endpoint. You must disassociate all target networks before you can delete a Client VPN endpoint.
681 */
682 deleteClientVpnEndpoint(params: EC2.Types.DeleteClientVpnEndpointRequest, callback?: (err: AWSError, data: EC2.Types.DeleteClientVpnEndpointResult) => void): Request<EC2.Types.DeleteClientVpnEndpointResult, AWSError>;
683 /**
684 * Deletes the specified Client VPN endpoint. You must disassociate all target networks before you can delete a Client VPN endpoint.
685 */
686 deleteClientVpnEndpoint(callback?: (err: AWSError, data: EC2.Types.DeleteClientVpnEndpointResult) => void): Request<EC2.Types.DeleteClientVpnEndpointResult, AWSError>;
687 /**
688 * Deletes a route from a Client VPN endpoint. You can only delete routes that you manually added using the CreateClientVpnRoute action. You cannot delete routes that were automatically added when associating a subnet. To remove routes that have been automatically added, disassociate the target subnet from the Client VPN endpoint.
689 */
690 deleteClientVpnRoute(params: EC2.Types.DeleteClientVpnRouteRequest, callback?: (err: AWSError, data: EC2.Types.DeleteClientVpnRouteResult) => void): Request<EC2.Types.DeleteClientVpnRouteResult, AWSError>;
691 /**
692 * Deletes a route from a Client VPN endpoint. You can only delete routes that you manually added using the CreateClientVpnRoute action. You cannot delete routes that were automatically added when associating a subnet. To remove routes that have been automatically added, disassociate the target subnet from the Client VPN endpoint.
693 */
694 deleteClientVpnRoute(callback?: (err: AWSError, data: EC2.Types.DeleteClientVpnRouteResult) => void): Request<EC2.Types.DeleteClientVpnRouteResult, AWSError>;
695 /**
696 * Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer gateway.
697 */
698 deleteCustomerGateway(params: EC2.Types.DeleteCustomerGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
699 /**
700 * Deletes the specified customer gateway. You must delete the VPN connection before you can delete the customer gateway.
701 */
702 deleteCustomerGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
703 /**
704 * Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of options with the VPC.
705 */
706 deleteDhcpOptions(params: EC2.Types.DeleteDhcpOptionsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
707 /**
708 * Deletes the specified set of DHCP options. You must disassociate the set of DHCP options before you can delete it. You can disassociate the set of DHCP options by associating either a new set of options or the default set of options with the VPC.
709 */
710 deleteDhcpOptions(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
711 /**
712 * Deletes an egress-only internet gateway.
713 */
714 deleteEgressOnlyInternetGateway(params: EC2.Types.DeleteEgressOnlyInternetGatewayRequest, callback?: (err: AWSError, data: EC2.Types.DeleteEgressOnlyInternetGatewayResult) => void): Request<EC2.Types.DeleteEgressOnlyInternetGatewayResult, AWSError>;
715 /**
716 * Deletes an egress-only internet gateway.
717 */
718 deleteEgressOnlyInternetGateway(callback?: (err: AWSError, data: EC2.Types.DeleteEgressOnlyInternetGatewayResult) => void): Request<EC2.Types.DeleteEgressOnlyInternetGatewayResult, AWSError>;
719 /**
720 * Deletes the specified EC2 Fleet. After you delete an EC2 Fleet, it launches no new instances. You must specify whether an EC2 Fleet should also terminate its instances. If you terminate the instances, the EC2 Fleet enters the deleted_terminating state. Otherwise, the EC2 Fleet enters the deleted_running state, and the instances continue to run until they are interrupted or you terminate them manually.
721 */
722 deleteFleets(params: EC2.Types.DeleteFleetsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteFleetsResult) => void): Request<EC2.Types.DeleteFleetsResult, AWSError>;
723 /**
724 * Deletes the specified EC2 Fleet. After you delete an EC2 Fleet, it launches no new instances. You must specify whether an EC2 Fleet should also terminate its instances. If you terminate the instances, the EC2 Fleet enters the deleted_terminating state. Otherwise, the EC2 Fleet enters the deleted_running state, and the instances continue to run until they are interrupted or you terminate them manually.
725 */
726 deleteFleets(callback?: (err: AWSError, data: EC2.Types.DeleteFleetsResult) => void): Request<EC2.Types.DeleteFleetsResult, AWSError>;
727 /**
728 * Deletes one or more flow logs.
729 */
730 deleteFlowLogs(params: EC2.Types.DeleteFlowLogsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteFlowLogsResult) => void): Request<EC2.Types.DeleteFlowLogsResult, AWSError>;
731 /**
732 * Deletes one or more flow logs.
733 */
734 deleteFlowLogs(callback?: (err: AWSError, data: EC2.Types.DeleteFlowLogsResult) => void): Request<EC2.Types.DeleteFlowLogsResult, AWSError>;
735 /**
736 * Deletes the specified Amazon FPGA Image (AFI).
737 */
738 deleteFpgaImage(params: EC2.Types.DeleteFpgaImageRequest, callback?: (err: AWSError, data: EC2.Types.DeleteFpgaImageResult) => void): Request<EC2.Types.DeleteFpgaImageResult, AWSError>;
739 /**
740 * Deletes the specified Amazon FPGA Image (AFI).
741 */
742 deleteFpgaImage(callback?: (err: AWSError, data: EC2.Types.DeleteFpgaImageResult) => void): Request<EC2.Types.DeleteFpgaImageResult, AWSError>;
743 /**
744 * Deletes the specified internet gateway. You must detach the internet gateway from the VPC before you can delete it.
745 */
746 deleteInternetGateway(params: EC2.Types.DeleteInternetGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
747 /**
748 * Deletes the specified internet gateway. You must detach the internet gateway from the VPC before you can delete it.
749 */
750 deleteInternetGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
751 /**
752 * Deletes the specified key pair, by removing the public key from Amazon EC2.
753 */
754 deleteKeyPair(params: EC2.Types.DeleteKeyPairRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
755 /**
756 * Deletes the specified key pair, by removing the public key from Amazon EC2.
757 */
758 deleteKeyPair(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
759 /**
760 * Deletes a launch template. Deleting a launch template deletes all of its versions.
761 */
762 deleteLaunchTemplate(params: EC2.Types.DeleteLaunchTemplateRequest, callback?: (err: AWSError, data: EC2.Types.DeleteLaunchTemplateResult) => void): Request<EC2.Types.DeleteLaunchTemplateResult, AWSError>;
763 /**
764 * Deletes a launch template. Deleting a launch template deletes all of its versions.
765 */
766 deleteLaunchTemplate(callback?: (err: AWSError, data: EC2.Types.DeleteLaunchTemplateResult) => void): Request<EC2.Types.DeleteLaunchTemplateResult, AWSError>;
767 /**
768 * Deletes one or more versions of a launch template. You cannot delete the default version of a launch template; you must first assign a different version as the default. If the default version is the only version for the launch template, you must delete the entire launch template using DeleteLaunchTemplate.
769 */
770 deleteLaunchTemplateVersions(params: EC2.Types.DeleteLaunchTemplateVersionsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteLaunchTemplateVersionsResult) => void): Request<EC2.Types.DeleteLaunchTemplateVersionsResult, AWSError>;
771 /**
772 * Deletes one or more versions of a launch template. You cannot delete the default version of a launch template; you must first assign a different version as the default. If the default version is the only version for the launch template, you must delete the entire launch template using DeleteLaunchTemplate.
773 */
774 deleteLaunchTemplateVersions(callback?: (err: AWSError, data: EC2.Types.DeleteLaunchTemplateVersionsResult) => void): Request<EC2.Types.DeleteLaunchTemplateVersionsResult, AWSError>;
775 /**
776 * Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its Elastic IP address, but does not release the address from your account. Deleting a NAT gateway does not delete any NAT gateway routes in your route tables.
777 */
778 deleteNatGateway(params: EC2.Types.DeleteNatGatewayRequest, callback?: (err: AWSError, data: EC2.Types.DeleteNatGatewayResult) => void): Request<EC2.Types.DeleteNatGatewayResult, AWSError>;
779 /**
780 * Deletes the specified NAT gateway. Deleting a NAT gateway disassociates its Elastic IP address, but does not release the address from your account. Deleting a NAT gateway does not delete any NAT gateway routes in your route tables.
781 */
782 deleteNatGateway(callback?: (err: AWSError, data: EC2.Types.DeleteNatGatewayResult) => void): Request<EC2.Types.DeleteNatGatewayResult, AWSError>;
783 /**
784 * Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete the default network ACL.
785 */
786 deleteNetworkAcl(params: EC2.Types.DeleteNetworkAclRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
787 /**
788 * Deletes the specified network ACL. You can't delete the ACL if it's associated with any subnets. You can't delete the default network ACL.
789 */
790 deleteNetworkAcl(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
791 /**
792 * Deletes the specified ingress or egress entry (rule) from the specified network ACL.
793 */
794 deleteNetworkAclEntry(params: EC2.Types.DeleteNetworkAclEntryRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
795 /**
796 * Deletes the specified ingress or egress entry (rule) from the specified network ACL.
797 */
798 deleteNetworkAclEntry(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
799 /**
800 * Deletes the specified network interface. You must detach the network interface before you can delete it.
801 */
802 deleteNetworkInterface(params: EC2.Types.DeleteNetworkInterfaceRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
803 /**
804 * Deletes the specified network interface. You must detach the network interface before you can delete it.
805 */
806 deleteNetworkInterface(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
807 /**
808 * Deletes a permission for a network interface. By default, you cannot delete the permission if the account for which you're removing the permission has attached the network interface to an instance. However, you can force delete the permission, regardless of any attachment.
809 */
810 deleteNetworkInterfacePermission(params: EC2.Types.DeleteNetworkInterfacePermissionRequest, callback?: (err: AWSError, data: EC2.Types.DeleteNetworkInterfacePermissionResult) => void): Request<EC2.Types.DeleteNetworkInterfacePermissionResult, AWSError>;
811 /**
812 * Deletes a permission for a network interface. By default, you cannot delete the permission if the account for which you're removing the permission has attached the network interface to an instance. However, you can force delete the permission, regardless of any attachment.
813 */
814 deleteNetworkInterfacePermission(callback?: (err: AWSError, data: EC2.Types.DeleteNetworkInterfacePermissionResult) => void): Request<EC2.Types.DeleteNetworkInterfacePermissionResult, AWSError>;
815 /**
816 * Deletes the specified placement group. You must terminate all instances in the placement group before you can delete the placement group. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.
817 */
818 deletePlacementGroup(params: EC2.Types.DeletePlacementGroupRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
819 /**
820 * Deletes the specified placement group. You must terminate all instances in the placement group before you can delete the placement group. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.
821 */
822 deletePlacementGroup(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
823 /**
824 * Deletes the specified route from the specified route table.
825 */
826 deleteRoute(params: EC2.Types.DeleteRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
827 /**
828 * Deletes the specified route from the specified route table.
829 */
830 deleteRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
831 /**
832 * Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.
833 */
834 deleteRouteTable(params: EC2.Types.DeleteRouteTableRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
835 /**
836 * Deletes the specified route table. You must disassociate the route table from any subnets before you can delete it. You can't delete the main route table.
837 */
838 deleteRouteTable(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
839 /**
840 * Deletes a security group. If you attempt to delete a security group that is associated with an instance, or is referenced by another security group, the operation fails with InvalidGroup.InUse in EC2-Classic or DependencyViolation in EC2-VPC.
841 */
842 deleteSecurityGroup(params: EC2.Types.DeleteSecurityGroupRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
843 /**
844 * Deletes a security group. If you attempt to delete a security group that is associated with an instance, or is referenced by another security group, the operation fails with InvalidGroup.InUse in EC2-Classic or DependencyViolation in EC2-VPC.
845 */
846 deleteSecurityGroup(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
847 /**
848 * Deletes the specified snapshot. When you make periodic snapshots of a volume, the snapshots are incremental, and only the blocks on the device that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all active snapshots will have access to all the information needed to restore the volume. You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI. You must first de-register the AMI before you can delete the snapshot. For more information, see Deleting an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.
849 */
850 deleteSnapshot(params: EC2.Types.DeleteSnapshotRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
851 /**
852 * Deletes the specified snapshot. When you make periodic snapshots of a volume, the snapshots are incremental, and only the blocks on the device that have changed since your last snapshot are saved in the new snapshot. When you delete a snapshot, only the data not needed for any other snapshot is removed. So regardless of which prior snapshots have been deleted, all active snapshots will have access to all the information needed to restore the volume. You cannot delete a snapshot of the root device of an EBS volume used by a registered AMI. You must first de-register the AMI before you can delete the snapshot. For more information, see Deleting an Amazon EBS Snapshot in the Amazon Elastic Compute Cloud User Guide.
853 */
854 deleteSnapshot(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
855 /**
856 * Deletes the data feed for Spot Instances.
857 */
858 deleteSpotDatafeedSubscription(params: EC2.Types.DeleteSpotDatafeedSubscriptionRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
859 /**
860 * Deletes the data feed for Spot Instances.
861 */
862 deleteSpotDatafeedSubscription(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
863 /**
864 * Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.
865 */
866 deleteSubnet(params: EC2.Types.DeleteSubnetRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
867 /**
868 * Deletes the specified subnet. You must terminate all running instances in the subnet before you can delete the subnet.
869 */
870 deleteSubnet(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
871 /**
872 * Deletes the specified set of tags from the specified set of resources. To list the current tags, use DescribeTags. For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.
873 */
874 deleteTags(params: EC2.Types.DeleteTagsRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
875 /**
876 * Deletes the specified set of tags from the specified set of resources. To list the current tags, use DescribeTags. For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.
877 */
878 deleteTags(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
879 /**
880 * Deletes the specified transit gateway.
881 */
882 deleteTransitGateway(params: EC2.Types.DeleteTransitGatewayRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayResult) => void): Request<EC2.Types.DeleteTransitGatewayResult, AWSError>;
883 /**
884 * Deletes the specified transit gateway.
885 */
886 deleteTransitGateway(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayResult) => void): Request<EC2.Types.DeleteTransitGatewayResult, AWSError>;
887 /**
888 * Deletes the specified route from the specified transit gateway route table.
889 */
890 deleteTransitGatewayRoute(params: EC2.Types.DeleteTransitGatewayRouteRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayRouteResult) => void): Request<EC2.Types.DeleteTransitGatewayRouteResult, AWSError>;
891 /**
892 * Deletes the specified route from the specified transit gateway route table.
893 */
894 deleteTransitGatewayRoute(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayRouteResult) => void): Request<EC2.Types.DeleteTransitGatewayRouteResult, AWSError>;
895 /**
896 * Deletes the specified transit gateway route table. You must disassociate the route table from any transit gateway route tables before you can delete it.
897 */
898 deleteTransitGatewayRouteTable(params: EC2.Types.DeleteTransitGatewayRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayRouteTableResult) => void): Request<EC2.Types.DeleteTransitGatewayRouteTableResult, AWSError>;
899 /**
900 * Deletes the specified transit gateway route table. You must disassociate the route table from any transit gateway route tables before you can delete it.
901 */
902 deleteTransitGatewayRouteTable(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayRouteTableResult) => void): Request<EC2.Types.DeleteTransitGatewayRouteTableResult, AWSError>;
903 /**
904 * Deletes the specified VPC attachment.
905 */
906 deleteTransitGatewayVpcAttachment(params: EC2.Types.DeleteTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.DeleteTransitGatewayVpcAttachmentResult, AWSError>;
907 /**
908 * Deletes the specified VPC attachment.
909 */
910 deleteTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.DeleteTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.DeleteTransitGatewayVpcAttachmentResult, AWSError>;
911 /**
912 * Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance). The volume can remain in the deleting state for several minutes. For more information, see Deleting an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.
913 */
914 deleteVolume(params: EC2.Types.DeleteVolumeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
915 /**
916 * Deletes the specified EBS volume. The volume must be in the available state (not attached to an instance). The volume can remain in the deleting state for several minutes. For more information, see Deleting an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.
917 */
918 deleteVolume(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
919 /**
920 * Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on.
921 */
922 deleteVpc(params: EC2.Types.DeleteVpcRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
923 /**
924 * Deletes the specified VPC. You must detach or delete all gateways and resources that are associated with the VPC before you can delete it. For example, you must terminate all instances running in the VPC, delete all security groups associated with the VPC (except the default one), delete all route tables associated with the VPC (except the default one), and so on.
925 */
926 deleteVpc(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
927 /**
928 * Deletes one or more VPC endpoint connection notifications.
929 */
930 deleteVpcEndpointConnectionNotifications(params: EC2.Types.DeleteVpcEndpointConnectionNotificationsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointConnectionNotificationsResult) => void): Request<EC2.Types.DeleteVpcEndpointConnectionNotificationsResult, AWSError>;
931 /**
932 * Deletes one or more VPC endpoint connection notifications.
933 */
934 deleteVpcEndpointConnectionNotifications(callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointConnectionNotificationsResult) => void): Request<EC2.Types.DeleteVpcEndpointConnectionNotificationsResult, AWSError>;
935 /**
936 * Deletes one or more VPC endpoint service configurations in your account. Before you delete the endpoint service configuration, you must reject any Available or PendingAcceptance interface endpoint connections that are attached to the service.
937 */
938 deleteVpcEndpointServiceConfigurations(params: EC2.Types.DeleteVpcEndpointServiceConfigurationsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointServiceConfigurationsResult) => void): Request<EC2.Types.DeleteVpcEndpointServiceConfigurationsResult, AWSError>;
939 /**
940 * Deletes one or more VPC endpoint service configurations in your account. Before you delete the endpoint service configuration, you must reject any Available or PendingAcceptance interface endpoint connections that are attached to the service.
941 */
942 deleteVpcEndpointServiceConfigurations(callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointServiceConfigurationsResult) => void): Request<EC2.Types.DeleteVpcEndpointServiceConfigurationsResult, AWSError>;
943 /**
944 * Deletes one or more specified VPC endpoints. Deleting a gateway endpoint also deletes the endpoint routes in the route tables that were associated with the endpoint. Deleting an interface endpoint deletes the endpoint network interfaces.
945 */
946 deleteVpcEndpoints(params: EC2.Types.DeleteVpcEndpointsRequest, callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointsResult) => void): Request<EC2.Types.DeleteVpcEndpointsResult, AWSError>;
947 /**
948 * Deletes one or more specified VPC endpoints. Deleting a gateway endpoint also deletes the endpoint routes in the route tables that were associated with the endpoint. Deleting an interface endpoint deletes the endpoint network interfaces.
949 */
950 deleteVpcEndpoints(callback?: (err: AWSError, data: EC2.Types.DeleteVpcEndpointsResult) => void): Request<EC2.Types.DeleteVpcEndpointsResult, AWSError>;
951 /**
952 * Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the accepter VPC can delete the VPC peering connection if it's in the active state. The owner of the requester VPC can delete a VPC peering connection in the pending-acceptance state. You cannot delete a VPC peering connection that's in the failed state.
953 */
954 deleteVpcPeeringConnection(params: EC2.Types.DeleteVpcPeeringConnectionRequest, callback?: (err: AWSError, data: EC2.Types.DeleteVpcPeeringConnectionResult) => void): Request<EC2.Types.DeleteVpcPeeringConnectionResult, AWSError>;
955 /**
956 * Deletes a VPC peering connection. Either the owner of the requester VPC or the owner of the accepter VPC can delete the VPC peering connection if it's in the active state. The owner of the requester VPC can delete a VPC peering connection in the pending-acceptance state. You cannot delete a VPC peering connection that's in the failed state.
957 */
958 deleteVpcPeeringConnection(callback?: (err: AWSError, data: EC2.Types.DeleteVpcPeeringConnectionResult) => void): Request<EC2.Types.DeleteVpcPeeringConnectionResult, AWSError>;
959 /**
960 * Deletes the specified VPN connection. If you're deleting the VPC and its associated components, we recommend that you detach the virtual private gateway from the VPC and delete the VPC before deleting the VPN connection. If you believe that the tunnel credentials for your VPN connection have been compromised, you can delete the VPN connection and create a new one that has new keys, without needing to delete the VPC or virtual private gateway. If you create a new VPN connection, you must reconfigure the customer gateway using the new configuration information returned with the new VPN connection ID.
961 */
962 deleteVpnConnection(params: EC2.Types.DeleteVpnConnectionRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
963 /**
964 * Deletes the specified VPN connection. If you're deleting the VPC and its associated components, we recommend that you detach the virtual private gateway from the VPC and delete the VPC before deleting the VPN connection. If you believe that the tunnel credentials for your VPN connection have been compromised, you can delete the VPN connection and create a new one that has new keys, without needing to delete the VPC or virtual private gateway. If you create a new VPN connection, you must reconfigure the customer gateway using the new configuration information returned with the new VPN connection ID.
965 */
966 deleteVpnConnection(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
967 /**
968 * Deletes the specified static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.
969 */
970 deleteVpnConnectionRoute(params: EC2.Types.DeleteVpnConnectionRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
971 /**
972 * Deletes the specified static route associated with a VPN connection between an existing virtual private gateway and a VPN customer gateway. The static route allows traffic to be routed from the virtual private gateway to the VPN customer gateway.
973 */
974 deleteVpnConnectionRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
975 /**
976 * Deletes the specified virtual private gateway. We recommend that before you delete a virtual private gateway, you detach it from the VPC and delete the VPN connection. Note that you don't need to delete the virtual private gateway if you plan to delete and recreate the VPN connection between your VPC and your network.
977 */
978 deleteVpnGateway(params: EC2.Types.DeleteVpnGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
979 /**
980 * Deletes the specified virtual private gateway. We recommend that before you delete a virtual private gateway, you detach it from the VPC and delete the VPN connection. Note that you don't need to delete the virtual private gateway if you plan to delete and recreate the VPN connection between your VPC and your network.
981 */
982 deleteVpnGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
983 /**
984 * Releases the specified address range that you provisioned for use with your AWS resources through bring your own IP addresses (BYOIP) and deletes the corresponding address pool. Before you can release an address range, you must stop advertising it using WithdrawByoipCidr and you must not have any IP addresses allocated from its address range.
985 */
986 deprovisionByoipCidr(params: EC2.Types.DeprovisionByoipCidrRequest, callback?: (err: AWSError, data: EC2.Types.DeprovisionByoipCidrResult) => void): Request<EC2.Types.DeprovisionByoipCidrResult, AWSError>;
987 /**
988 * Releases the specified address range that you provisioned for use with your AWS resources through bring your own IP addresses (BYOIP) and deletes the corresponding address pool. Before you can release an address range, you must stop advertising it using WithdrawByoipCidr and you must not have any IP addresses allocated from its address range.
989 */
990 deprovisionByoipCidr(callback?: (err: AWSError, data: EC2.Types.DeprovisionByoipCidrResult) => void): Request<EC2.Types.DeprovisionByoipCidrResult, AWSError>;
991 /**
992 * Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch new instances; however, it doesn't affect any instances that you've already launched from the AMI. You'll continue to incur usage costs for those instances until you terminate them. When you deregister an Amazon EBS-backed AMI, it doesn't affect the snapshot that was created for the root volume of the instance during the AMI creation process. When you deregister an instance store-backed AMI, it doesn't affect the files that you uploaded to Amazon S3 when you created the AMI.
993 */
994 deregisterImage(params: EC2.Types.DeregisterImageRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
995 /**
996 * Deregisters the specified AMI. After you deregister an AMI, it can't be used to launch new instances; however, it doesn't affect any instances that you've already launched from the AMI. You'll continue to incur usage costs for those instances until you terminate them. When you deregister an Amazon EBS-backed AMI, it doesn't affect the snapshot that was created for the root volume of the instance during the AMI creation process. When you deregister an instance store-backed AMI, it doesn't affect the files that you uploaded to Amazon S3 when you created the AMI.
997 */
998 deregisterImage(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
999 /**
1000 * Describes attributes of your AWS account. The following are the supported account attributes: supported-platforms: Indicates whether your account can launch instances into EC2-Classic and EC2-VPC, or only into EC2-VPC. default-vpc: The ID of the default VPC for your account, or none. max-instances: The maximum number of On-Demand Instances that you can run. vpc-max-security-groups-per-interface: The maximum number of security groups that you can assign to a network interface. max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-Classic. vpc-max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-VPC.
1001 */
1002 describeAccountAttributes(params: EC2.Types.DescribeAccountAttributesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeAccountAttributesResult) => void): Request<EC2.Types.DescribeAccountAttributesResult, AWSError>;
1003 /**
1004 * Describes attributes of your AWS account. The following are the supported account attributes: supported-platforms: Indicates whether your account can launch instances into EC2-Classic and EC2-VPC, or only into EC2-VPC. default-vpc: The ID of the default VPC for your account, or none. max-instances: The maximum number of On-Demand Instances that you can run. vpc-max-security-groups-per-interface: The maximum number of security groups that you can assign to a network interface. max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-Classic. vpc-max-elastic-ips: The maximum number of Elastic IP addresses that you can allocate for use with EC2-VPC.
1005 */
1006 describeAccountAttributes(callback?: (err: AWSError, data: EC2.Types.DescribeAccountAttributesResult) => void): Request<EC2.Types.DescribeAccountAttributesResult, AWSError>;
1007 /**
1008 * Describes one or more of your Elastic IP addresses. An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.
1009 */
1010 describeAddresses(params: EC2.Types.DescribeAddressesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeAddressesResult) => void): Request<EC2.Types.DescribeAddressesResult, AWSError>;
1011 /**
1012 * Describes one or more of your Elastic IP addresses. An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide.
1013 */
1014 describeAddresses(callback?: (err: AWSError, data: EC2.Types.DescribeAddressesResult) => void): Request<EC2.Types.DescribeAddressesResult, AWSError>;
1015 /**
1016 * Describes the longer ID format settings for all resource types in a specific region. This request is useful for performing a quick audit to determine whether a specific region is fully opted in for longer IDs (17-character IDs). This request only returns information about resource types that support longer IDs. The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.
1017 */
1018 describeAggregateIdFormat(params: EC2.Types.DescribeAggregateIdFormatRequest, callback?: (err: AWSError, data: EC2.Types.DescribeAggregateIdFormatResult) => void): Request<EC2.Types.DescribeAggregateIdFormatResult, AWSError>;
1019 /**
1020 * Describes the longer ID format settings for all resource types in a specific region. This request is useful for performing a quick audit to determine whether a specific region is fully opted in for longer IDs (17-character IDs). This request only returns information about resource types that support longer IDs. The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.
1021 */
1022 describeAggregateIdFormat(callback?: (err: AWSError, data: EC2.Types.DescribeAggregateIdFormatResult) => void): Request<EC2.Types.DescribeAggregateIdFormatResult, AWSError>;
1023 /**
1024 * Describes one or more of the Availability Zones that are available to you. The results include zones only for the region you're currently using. If there is an event impacting an Availability Zone, you can use this request to view the state and any provided message for that Availability Zone. For more information, see Regions and Availability Zones in the Amazon Elastic Compute Cloud User Guide.
1025 */
1026 describeAvailabilityZones(params: EC2.Types.DescribeAvailabilityZonesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeAvailabilityZonesResult) => void): Request<EC2.Types.DescribeAvailabilityZonesResult, AWSError>;
1027 /**
1028 * Describes one or more of the Availability Zones that are available to you. The results include zones only for the region you're currently using. If there is an event impacting an Availability Zone, you can use this request to view the state and any provided message for that Availability Zone. For more information, see Regions and Availability Zones in the Amazon Elastic Compute Cloud User Guide.
1029 */
1030 describeAvailabilityZones(callback?: (err: AWSError, data: EC2.Types.DescribeAvailabilityZonesResult) => void): Request<EC2.Types.DescribeAvailabilityZonesResult, AWSError>;
1031 /**
1032 * Describes one or more of your bundling tasks. Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image manifest name you provided to the bundle task.
1033 */
1034 describeBundleTasks(params: EC2.Types.DescribeBundleTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeBundleTasksResult) => void): Request<EC2.Types.DescribeBundleTasksResult, AWSError>;
1035 /**
1036 * Describes one or more of your bundling tasks. Completed bundle tasks are listed for only a limited time. If your bundle task is no longer in the list, you can still register an AMI from it. Just use RegisterImage with the Amazon S3 bucket name and image manifest name you provided to the bundle task.
1037 */
1038 describeBundleTasks(callback?: (err: AWSError, data: EC2.Types.DescribeBundleTasksResult) => void): Request<EC2.Types.DescribeBundleTasksResult, AWSError>;
1039 /**
1040 * Describes the IP address ranges that were specified in calls to ProvisionByoipCidr. To describe the address pools that were created when you provisioned the address ranges, use DescribePublicIpv4Pools.
1041 */
1042 describeByoipCidrs(params: EC2.Types.DescribeByoipCidrsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeByoipCidrsResult) => void): Request<EC2.Types.DescribeByoipCidrsResult, AWSError>;
1043 /**
1044 * Describes the IP address ranges that were specified in calls to ProvisionByoipCidr. To describe the address pools that were created when you provisioned the address ranges, use DescribePublicIpv4Pools.
1045 */
1046 describeByoipCidrs(callback?: (err: AWSError, data: EC2.Types.DescribeByoipCidrsResult) => void): Request<EC2.Types.DescribeByoipCidrsResult, AWSError>;
1047 /**
1048 * Describes one or more of your Capacity Reservations. The results describe only the Capacity Reservations in the AWS Region that you're currently using.
1049 */
1050 describeCapacityReservations(params: EC2.Types.DescribeCapacityReservationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeCapacityReservationsResult) => void): Request<EC2.Types.DescribeCapacityReservationsResult, AWSError>;
1051 /**
1052 * Describes one or more of your Capacity Reservations. The results describe only the Capacity Reservations in the AWS Region that you're currently using.
1053 */
1054 describeCapacityReservations(callback?: (err: AWSError, data: EC2.Types.DescribeCapacityReservationsResult) => void): Request<EC2.Types.DescribeCapacityReservationsResult, AWSError>;
1055 /**
1056 * Describes one or more of your linked EC2-Classic instances. This request only returns information about EC2-Classic instances linked to a VPC through ClassicLink. You cannot use this request to return information about other instances.
1057 */
1058 describeClassicLinkInstances(params: EC2.Types.DescribeClassicLinkInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClassicLinkInstancesResult) => void): Request<EC2.Types.DescribeClassicLinkInstancesResult, AWSError>;
1059 /**
1060 * Describes one or more of your linked EC2-Classic instances. This request only returns information about EC2-Classic instances linked to a VPC through ClassicLink. You cannot use this request to return information about other instances.
1061 */
1062 describeClassicLinkInstances(callback?: (err: AWSError, data: EC2.Types.DescribeClassicLinkInstancesResult) => void): Request<EC2.Types.DescribeClassicLinkInstancesResult, AWSError>;
1063 /**
1064 * Describes the authorization rules for a specified Client VPN endpoint.
1065 */
1066 describeClientVpnAuthorizationRules(params: EC2.Types.DescribeClientVpnAuthorizationRulesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnAuthorizationRulesResult) => void): Request<EC2.Types.DescribeClientVpnAuthorizationRulesResult, AWSError>;
1067 /**
1068 * Describes the authorization rules for a specified Client VPN endpoint.
1069 */
1070 describeClientVpnAuthorizationRules(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnAuthorizationRulesResult) => void): Request<EC2.Types.DescribeClientVpnAuthorizationRulesResult, AWSError>;
1071 /**
1072 * Describes active client connections and connections that have been terminated within the last 60 minutes for the specified Client VPN endpoint.
1073 */
1074 describeClientVpnConnections(params: EC2.Types.DescribeClientVpnConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnConnectionsResult) => void): Request<EC2.Types.DescribeClientVpnConnectionsResult, AWSError>;
1075 /**
1076 * Describes active client connections and connections that have been terminated within the last 60 minutes for the specified Client VPN endpoint.
1077 */
1078 describeClientVpnConnections(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnConnectionsResult) => void): Request<EC2.Types.DescribeClientVpnConnectionsResult, AWSError>;
1079 /**
1080 * Describes one or more Client VPN endpoints in the account.
1081 */
1082 describeClientVpnEndpoints(params: EC2.Types.DescribeClientVpnEndpointsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnEndpointsResult) => void): Request<EC2.Types.DescribeClientVpnEndpointsResult, AWSError>;
1083 /**
1084 * Describes one or more Client VPN endpoints in the account.
1085 */
1086 describeClientVpnEndpoints(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnEndpointsResult) => void): Request<EC2.Types.DescribeClientVpnEndpointsResult, AWSError>;
1087 /**
1088 * Describes the routes for the specified Client VPN endpoint.
1089 */
1090 describeClientVpnRoutes(params: EC2.Types.DescribeClientVpnRoutesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnRoutesResult) => void): Request<EC2.Types.DescribeClientVpnRoutesResult, AWSError>;
1091 /**
1092 * Describes the routes for the specified Client VPN endpoint.
1093 */
1094 describeClientVpnRoutes(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnRoutesResult) => void): Request<EC2.Types.DescribeClientVpnRoutesResult, AWSError>;
1095 /**
1096 * Describes the target networks associated with the specified Client VPN endpoint.
1097 */
1098 describeClientVpnTargetNetworks(params: EC2.Types.DescribeClientVpnTargetNetworksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnTargetNetworksResult) => void): Request<EC2.Types.DescribeClientVpnTargetNetworksResult, AWSError>;
1099 /**
1100 * Describes the target networks associated with the specified Client VPN endpoint.
1101 */
1102 describeClientVpnTargetNetworks(callback?: (err: AWSError, data: EC2.Types.DescribeClientVpnTargetNetworksResult) => void): Request<EC2.Types.DescribeClientVpnTargetNetworksResult, AWSError>;
1103 /**
1104 * Describes one or more of your conversion tasks. For more information, see the VM Import/Export User Guide. For information about the import manifest referenced by this API action, see VM Import Manifest.
1105 */
1106 describeConversionTasks(params: EC2.Types.DescribeConversionTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
1107 /**
1108 * Describes one or more of your conversion tasks. For more information, see the VM Import/Export User Guide. For information about the import manifest referenced by this API action, see VM Import Manifest.
1109 */
1110 describeConversionTasks(callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
1111 /**
1112 * Describes one or more of your VPN customer gateways. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
1113 */
1114 describeCustomerGateways(params: EC2.Types.DescribeCustomerGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeCustomerGatewaysResult) => void): Request<EC2.Types.DescribeCustomerGatewaysResult, AWSError>;
1115 /**
1116 * Describes one or more of your VPN customer gateways. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
1117 */
1118 describeCustomerGateways(callback?: (err: AWSError, data: EC2.Types.DescribeCustomerGatewaysResult) => void): Request<EC2.Types.DescribeCustomerGatewaysResult, AWSError>;
1119 /**
1120 * Describes one or more of your DHCP options sets. For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.
1121 */
1122 describeDhcpOptions(params: EC2.Types.DescribeDhcpOptionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeDhcpOptionsResult) => void): Request<EC2.Types.DescribeDhcpOptionsResult, AWSError>;
1123 /**
1124 * Describes one or more of your DHCP options sets. For more information, see DHCP Options Sets in the Amazon Virtual Private Cloud User Guide.
1125 */
1126 describeDhcpOptions(callback?: (err: AWSError, data: EC2.Types.DescribeDhcpOptionsResult) => void): Request<EC2.Types.DescribeDhcpOptionsResult, AWSError>;
1127 /**
1128 * Describes one or more of your egress-only internet gateways.
1129 */
1130 describeEgressOnlyInternetGateways(params: EC2.Types.DescribeEgressOnlyInternetGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeEgressOnlyInternetGatewaysResult) => void): Request<EC2.Types.DescribeEgressOnlyInternetGatewaysResult, AWSError>;
1131 /**
1132 * Describes one or more of your egress-only internet gateways.
1133 */
1134 describeEgressOnlyInternetGateways(callback?: (err: AWSError, data: EC2.Types.DescribeEgressOnlyInternetGatewaysResult) => void): Request<EC2.Types.DescribeEgressOnlyInternetGatewaysResult, AWSError>;
1135 /**
1136 * Describes the Elastic Graphics accelerator associated with your instances. For more information about Elastic Graphics, see Amazon Elastic Graphics.
1137 */
1138 describeElasticGpus(params: EC2.Types.DescribeElasticGpusRequest, callback?: (err: AWSError, data: EC2.Types.DescribeElasticGpusResult) => void): Request<EC2.Types.DescribeElasticGpusResult, AWSError>;
1139 /**
1140 * Describes the Elastic Graphics accelerator associated with your instances. For more information about Elastic Graphics, see Amazon Elastic Graphics.
1141 */
1142 describeElasticGpus(callback?: (err: AWSError, data: EC2.Types.DescribeElasticGpusResult) => void): Request<EC2.Types.DescribeElasticGpusResult, AWSError>;
1143 /**
1144 * Describes one or more of your export tasks.
1145 */
1146 describeExportTasks(params: EC2.Types.DescribeExportTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
1147 /**
1148 * Describes one or more of your export tasks.
1149 */
1150 describeExportTasks(callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
1151 /**
1152 * Describes the events for the specified EC2 Fleet during the specified time.
1153 */
1154 describeFleetHistory(params: EC2.Types.DescribeFleetHistoryRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFleetHistoryResult) => void): Request<EC2.Types.DescribeFleetHistoryResult, AWSError>;
1155 /**
1156 * Describes the events for the specified EC2 Fleet during the specified time.
1157 */
1158 describeFleetHistory(callback?: (err: AWSError, data: EC2.Types.DescribeFleetHistoryResult) => void): Request<EC2.Types.DescribeFleetHistoryResult, AWSError>;
1159 /**
1160 * Describes the running instances for the specified EC2 Fleet.
1161 */
1162 describeFleetInstances(params: EC2.Types.DescribeFleetInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFleetInstancesResult) => void): Request<EC2.Types.DescribeFleetInstancesResult, AWSError>;
1163 /**
1164 * Describes the running instances for the specified EC2 Fleet.
1165 */
1166 describeFleetInstances(callback?: (err: AWSError, data: EC2.Types.DescribeFleetInstancesResult) => void): Request<EC2.Types.DescribeFleetInstancesResult, AWSError>;
1167 /**
1168 * Describes one or more of your EC2 Fleets.
1169 */
1170 describeFleets(params: EC2.Types.DescribeFleetsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFleetsResult) => void): Request<EC2.Types.DescribeFleetsResult, AWSError>;
1171 /**
1172 * Describes one or more of your EC2 Fleets.
1173 */
1174 describeFleets(callback?: (err: AWSError, data: EC2.Types.DescribeFleetsResult) => void): Request<EC2.Types.DescribeFleetsResult, AWSError>;
1175 /**
1176 * Describes one or more flow logs. To view the information in your flow logs (the log streams for the network interfaces), you must use the CloudWatch Logs console or the CloudWatch Logs API.
1177 */
1178 describeFlowLogs(params: EC2.Types.DescribeFlowLogsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFlowLogsResult) => void): Request<EC2.Types.DescribeFlowLogsResult, AWSError>;
1179 /**
1180 * Describes one or more flow logs. To view the information in your flow logs (the log streams for the network interfaces), you must use the CloudWatch Logs console or the CloudWatch Logs API.
1181 */
1182 describeFlowLogs(callback?: (err: AWSError, data: EC2.Types.DescribeFlowLogsResult) => void): Request<EC2.Types.DescribeFlowLogsResult, AWSError>;
1183 /**
1184 * Describes the specified attribute of the specified Amazon FPGA Image (AFI).
1185 */
1186 describeFpgaImageAttribute(params: EC2.Types.DescribeFpgaImageAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFpgaImageAttributeResult) => void): Request<EC2.Types.DescribeFpgaImageAttributeResult, AWSError>;
1187 /**
1188 * Describes the specified attribute of the specified Amazon FPGA Image (AFI).
1189 */
1190 describeFpgaImageAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeFpgaImageAttributeResult) => void): Request<EC2.Types.DescribeFpgaImageAttributeResult, AWSError>;
1191 /**
1192 * Describes one or more available Amazon FPGA Images (AFIs). These include public AFIs, private AFIs that you own, and AFIs owned by other AWS accounts for which you have load permissions.
1193 */
1194 describeFpgaImages(params: EC2.Types.DescribeFpgaImagesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeFpgaImagesResult) => void): Request<EC2.Types.DescribeFpgaImagesResult, AWSError>;
1195 /**
1196 * Describes one or more available Amazon FPGA Images (AFIs). These include public AFIs, private AFIs that you own, and AFIs owned by other AWS accounts for which you have load permissions.
1197 */
1198 describeFpgaImages(callback?: (err: AWSError, data: EC2.Types.DescribeFpgaImagesResult) => void): Request<EC2.Types.DescribeFpgaImagesResult, AWSError>;
1199 /**
1200 * Describes the Dedicated Host reservations that are available to purchase. The results describe all the Dedicated Host reservation offerings, including offerings that may not match the instance family and Region of your Dedicated Hosts. When purchasing an offering, ensure that the instance family and Region of the offering matches that of the Dedicated Hosts with which it is to be associated. For more information about supported instance types, see Dedicated Hosts Overview in the Amazon Elastic Compute Cloud User Guide.
1201 */
1202 describeHostReservationOfferings(params: EC2.Types.DescribeHostReservationOfferingsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeHostReservationOfferingsResult) => void): Request<EC2.Types.DescribeHostReservationOfferingsResult, AWSError>;
1203 /**
1204 * Describes the Dedicated Host reservations that are available to purchase. The results describe all the Dedicated Host reservation offerings, including offerings that may not match the instance family and Region of your Dedicated Hosts. When purchasing an offering, ensure that the instance family and Region of the offering matches that of the Dedicated Hosts with which it is to be associated. For more information about supported instance types, see Dedicated Hosts Overview in the Amazon Elastic Compute Cloud User Guide.
1205 */
1206 describeHostReservationOfferings(callback?: (err: AWSError, data: EC2.Types.DescribeHostReservationOfferingsResult) => void): Request<EC2.Types.DescribeHostReservationOfferingsResult, AWSError>;
1207 /**
1208 * Describes reservations that are associated with Dedicated Hosts in your account.
1209 */
1210 describeHostReservations(params: EC2.Types.DescribeHostReservationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeHostReservationsResult) => void): Request<EC2.Types.DescribeHostReservationsResult, AWSError>;
1211 /**
1212 * Describes reservations that are associated with Dedicated Hosts in your account.
1213 */
1214 describeHostReservations(callback?: (err: AWSError, data: EC2.Types.DescribeHostReservationsResult) => void): Request<EC2.Types.DescribeHostReservationsResult, AWSError>;
1215 /**
1216 * Describes one or more of your Dedicated Hosts. The results describe only the Dedicated Hosts in the Region you're currently using. All listed instances consume capacity on your Dedicated Host. Dedicated Hosts that have recently been released are listed with the state released.
1217 */
1218 describeHosts(params: EC2.Types.DescribeHostsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeHostsResult) => void): Request<EC2.Types.DescribeHostsResult, AWSError>;
1219 /**
1220 * Describes one or more of your Dedicated Hosts. The results describe only the Dedicated Hosts in the Region you're currently using. All listed instances consume capacity on your Dedicated Host. Dedicated Hosts that have recently been released are listed with the state released.
1221 */
1222 describeHosts(callback?: (err: AWSError, data: EC2.Types.DescribeHostsResult) => void): Request<EC2.Types.DescribeHostsResult, AWSError>;
1223 /**
1224 * Describes your IAM instance profile associations.
1225 */
1226 describeIamInstanceProfileAssociations(params: EC2.Types.DescribeIamInstanceProfileAssociationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeIamInstanceProfileAssociationsResult) => void): Request<EC2.Types.DescribeIamInstanceProfileAssociationsResult, AWSError>;
1227 /**
1228 * Describes your IAM instance profile associations.
1229 */
1230 describeIamInstanceProfileAssociations(callback?: (err: AWSError, data: EC2.Types.DescribeIamInstanceProfileAssociationsResult) => void): Request<EC2.Types.DescribeIamInstanceProfileAssociationsResult, AWSError>;
1231 /**
1232 * Describes the ID format settings for your resources on a per-region basis, for example, to view which resource types are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types. The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. These settings apply to the IAM user who makes the request; they do not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user, unless they explicitly override the settings by running the ModifyIdFormat command. Resources created with longer IDs are visible to all IAM users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.
1233 */
1234 describeIdFormat(params: EC2.Types.DescribeIdFormatRequest, callback?: (err: AWSError, data: EC2.Types.DescribeIdFormatResult) => void): Request<EC2.Types.DescribeIdFormatResult, AWSError>;
1235 /**
1236 * Describes the ID format settings for your resources on a per-region basis, for example, to view which resource types are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types. The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. These settings apply to the IAM user who makes the request; they do not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user, unless they explicitly override the settings by running the ModifyIdFormat command. Resources created with longer IDs are visible to all IAM users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.
1237 */
1238 describeIdFormat(callback?: (err: AWSError, data: EC2.Types.DescribeIdFormatResult) => void): Request<EC2.Types.DescribeIdFormatResult, AWSError>;
1239 /**
1240 * Describes the ID format settings for resources for the specified IAM user, IAM role, or root user. For example, you can view the resource types that are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide. The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. These settings apply to the principal specified in the request. They do not apply to the principal that makes the request.
1241 */
1242 describeIdentityIdFormat(params: EC2.Types.DescribeIdentityIdFormatRequest, callback?: (err: AWSError, data: EC2.Types.DescribeIdentityIdFormatResult) => void): Request<EC2.Types.DescribeIdentityIdFormatResult, AWSError>;
1243 /**
1244 * Describes the ID format settings for resources for the specified IAM user, IAM role, or root user. For example, you can view the resource types that are enabled for longer IDs. This request only returns information about resource types whose ID formats can be modified; it does not return information about other resource types. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide. The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. These settings apply to the principal specified in the request. They do not apply to the principal that makes the request.
1245 */
1246 describeIdentityIdFormat(callback?: (err: AWSError, data: EC2.Types.DescribeIdentityIdFormatResult) => void): Request<EC2.Types.DescribeIdentityIdFormatResult, AWSError>;
1247 /**
1248 * Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.
1249 */
1250 describeImageAttribute(params: EC2.Types.DescribeImageAttributeRequest, callback?: (err: AWSError, data: EC2.Types.ImageAttribute) => void): Request<EC2.Types.ImageAttribute, AWSError>;
1251 /**
1252 * Describes the specified attribute of the specified AMI. You can specify only one attribute at a time.
1253 */
1254 describeImageAttribute(callback?: (err: AWSError, data: EC2.Types.ImageAttribute) => void): Request<EC2.Types.ImageAttribute, AWSError>;
1255 /**
1256 * Describes one or more of the images (AMIs, AKIs, and ARIs) available to you. Images available to you include public images, private images that you own, and private images owned by other AWS accounts but for which you have explicit launch permissions. Deregistered images are included in the returned results for an unspecified interval after deregistration.
1257 */
1258 describeImages(params: EC2.Types.DescribeImagesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
1259 /**
1260 * Describes one or more of the images (AMIs, AKIs, and ARIs) available to you. Images available to you include public images, private images that you own, and private images owned by other AWS accounts but for which you have explicit launch permissions. Deregistered images are included in the returned results for an unspecified interval after deregistration.
1261 */
1262 describeImages(callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
1263 /**
1264 * Displays details about an import virtual machine or import snapshot tasks that are already created.
1265 */
1266 describeImportImageTasks(params: EC2.Types.DescribeImportImageTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeImportImageTasksResult) => void): Request<EC2.Types.DescribeImportImageTasksResult, AWSError>;
1267 /**
1268 * Displays details about an import virtual machine or import snapshot tasks that are already created.
1269 */
1270 describeImportImageTasks(callback?: (err: AWSError, data: EC2.Types.DescribeImportImageTasksResult) => void): Request<EC2.Types.DescribeImportImageTasksResult, AWSError>;
1271 /**
1272 * Describes your import snapshot tasks.
1273 */
1274 describeImportSnapshotTasks(params: EC2.Types.DescribeImportSnapshotTasksRequest, callback?: (err: AWSError, data: EC2.Types.DescribeImportSnapshotTasksResult) => void): Request<EC2.Types.DescribeImportSnapshotTasksResult, AWSError>;
1275 /**
1276 * Describes your import snapshot tasks.
1277 */
1278 describeImportSnapshotTasks(callback?: (err: AWSError, data: EC2.Types.DescribeImportSnapshotTasksResult) => void): Request<EC2.Types.DescribeImportSnapshotTasksResult, AWSError>;
1279 /**
1280 * Describes the specified attribute of the specified instance. You can specify only one attribute at a time. Valid attribute values are: instanceType | kernel | ramdisk | userData | disableApiTermination | instanceInitiatedShutdownBehavior | rootDeviceName | blockDeviceMapping | productCodes | sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport
1281 */
1282 describeInstanceAttribute(params: EC2.Types.DescribeInstanceAttributeRequest, callback?: (err: AWSError, data: EC2.Types.InstanceAttribute) => void): Request<EC2.Types.InstanceAttribute, AWSError>;
1283 /**
1284 * Describes the specified attribute of the specified instance. You can specify only one attribute at a time. Valid attribute values are: instanceType | kernel | ramdisk | userData | disableApiTermination | instanceInitiatedShutdownBehavior | rootDeviceName | blockDeviceMapping | productCodes | sourceDestCheck | groupSet | ebsOptimized | sriovNetSupport
1285 */
1286 describeInstanceAttribute(callback?: (err: AWSError, data: EC2.Types.InstanceAttribute) => void): Request<EC2.Types.InstanceAttribute, AWSError>;
1287 /**
1288 * Describes the credit option for CPU usage of one or more of your T2 or T3 instances. The credit options are standard and unlimited. If you do not specify an instance ID, Amazon EC2 returns T2 and T3 instances with the unlimited credit option, as well as instances that were previously configured as T2 or T3 with the unlimited credit option. For example, if you resize a T2 instance, while it is configured as unlimited, to an M4 instance, Amazon EC2 returns the M4 instance. If you specify one or more instance IDs, Amazon EC2 returns the credit option (standard or unlimited) of those instances. If you specify an instance ID that is not valid, such as an instance that is not a T2 or T3 instance, an error is returned. Recently terminated instances might appear in the returned results. This interval is usually less than one hour. If an Availability Zone is experiencing a service disruption and you specify instance IDs in the affected zone, or do not specify any instance IDs at all, the call fails. If you specify only instance IDs in an unaffected zone, the call works normally. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
1289 */
1290 describeInstanceCreditSpecifications(params: EC2.Types.DescribeInstanceCreditSpecificationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceCreditSpecificationsResult) => void): Request<EC2.Types.DescribeInstanceCreditSpecificationsResult, AWSError>;
1291 /**
1292 * Describes the credit option for CPU usage of one or more of your T2 or T3 instances. The credit options are standard and unlimited. If you do not specify an instance ID, Amazon EC2 returns T2 and T3 instances with the unlimited credit option, as well as instances that were previously configured as T2 or T3 with the unlimited credit option. For example, if you resize a T2 instance, while it is configured as unlimited, to an M4 instance, Amazon EC2 returns the M4 instance. If you specify one or more instance IDs, Amazon EC2 returns the credit option (standard or unlimited) of those instances. If you specify an instance ID that is not valid, such as an instance that is not a T2 or T3 instance, an error is returned. Recently terminated instances might appear in the returned results. This interval is usually less than one hour. If an Availability Zone is experiencing a service disruption and you specify instance IDs in the affected zone, or do not specify any instance IDs at all, the call fails. If you specify only instance IDs in an unaffected zone, the call works normally. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
1293 */
1294 describeInstanceCreditSpecifications(callback?: (err: AWSError, data: EC2.Types.DescribeInstanceCreditSpecificationsResult) => void): Request<EC2.Types.DescribeInstanceCreditSpecificationsResult, AWSError>;
1295 /**
1296 * Describes the status of one or more instances. By default, only running instances are described, unless you specifically indicate to return the status of all instances. Instance status includes the following components: Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and software issues. For more information, see Status Checks for Your Instances and Troubleshooting Instances with Failed Status Checks in the Amazon Elastic Compute Cloud User Guide. Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances related to hardware issues, software updates, or system maintenance. For more information, see Scheduled Events for Your Instances in the Amazon Elastic Compute Cloud User Guide. Instance state - You can manage your instances from the moment you launch them through their termination. For more information, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.
1297 */
1298 describeInstanceStatus(params: EC2.Types.DescribeInstanceStatusRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
1299 /**
1300 * Describes the status of one or more instances. By default, only running instances are described, unless you specifically indicate to return the status of all instances. Instance status includes the following components: Status checks - Amazon EC2 performs status checks on running EC2 instances to identify hardware and software issues. For more information, see Status Checks for Your Instances and Troubleshooting Instances with Failed Status Checks in the Amazon Elastic Compute Cloud User Guide. Scheduled events - Amazon EC2 can schedule events (such as reboot, stop, or terminate) for your instances related to hardware issues, software updates, or system maintenance. For more information, see Scheduled Events for Your Instances in the Amazon Elastic Compute Cloud User Guide. Instance state - You can manage your instances from the moment you launch them through their termination. For more information, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide.
1301 */
1302 describeInstanceStatus(callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
1303 /**
1304 * Describes one or more of your instances. If you specify one or more instance IDs, Amazon EC2 returns information for those instances. If you do not specify instance IDs, Amazon EC2 returns information for all relevant instances. If you specify an instance ID that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in the returned results. Recently terminated instances might appear in the returned results. This interval is usually less than one hour. If you describe instances in the rare case where an Availability Zone is experiencing a service disruption and you specify instance IDs that are in the affected zone, or do not specify any instance IDs at all, the call fails. If you describe instances and specify only instance IDs that are in an unaffected zone, the call works normally.
1305 */
1306 describeInstances(params: EC2.Types.DescribeInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
1307 /**
1308 * Describes one or more of your instances. If you specify one or more instance IDs, Amazon EC2 returns information for those instances. If you do not specify instance IDs, Amazon EC2 returns information for all relevant instances. If you specify an instance ID that is not valid, an error is returned. If you specify an instance that you do not own, it is not included in the returned results. Recently terminated instances might appear in the returned results. This interval is usually less than one hour. If you describe instances in the rare case where an Availability Zone is experiencing a service disruption and you specify instance IDs that are in the affected zone, or do not specify any instance IDs at all, the call fails. If you describe instances and specify only instance IDs that are in an unaffected zone, the call works normally.
1309 */
1310 describeInstances(callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
1311 /**
1312 * Describes one or more of your internet gateways.
1313 */
1314 describeInternetGateways(params: EC2.Types.DescribeInternetGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeInternetGatewaysResult) => void): Request<EC2.Types.DescribeInternetGatewaysResult, AWSError>;
1315 /**
1316 * Describes one or more of your internet gateways.
1317 */
1318 describeInternetGateways(callback?: (err: AWSError, data: EC2.Types.DescribeInternetGatewaysResult) => void): Request<EC2.Types.DescribeInternetGatewaysResult, AWSError>;
1319 /**
1320 * Describes one or more of your key pairs. For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.
1321 */
1322 describeKeyPairs(params: EC2.Types.DescribeKeyPairsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeKeyPairsResult) => void): Request<EC2.Types.DescribeKeyPairsResult, AWSError>;
1323 /**
1324 * Describes one or more of your key pairs. For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.
1325 */
1326 describeKeyPairs(callback?: (err: AWSError, data: EC2.Types.DescribeKeyPairsResult) => void): Request<EC2.Types.DescribeKeyPairsResult, AWSError>;
1327 /**
1328 * Describes one or more versions of a specified launch template. You can describe all versions, individual versions, or a range of versions.
1329 */
1330 describeLaunchTemplateVersions(params: EC2.Types.DescribeLaunchTemplateVersionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLaunchTemplateVersionsResult) => void): Request<EC2.Types.DescribeLaunchTemplateVersionsResult, AWSError>;
1331 /**
1332 * Describes one or more versions of a specified launch template. You can describe all versions, individual versions, or a range of versions.
1333 */
1334 describeLaunchTemplateVersions(callback?: (err: AWSError, data: EC2.Types.DescribeLaunchTemplateVersionsResult) => void): Request<EC2.Types.DescribeLaunchTemplateVersionsResult, AWSError>;
1335 /**
1336 * Describes one or more launch templates.
1337 */
1338 describeLaunchTemplates(params: EC2.Types.DescribeLaunchTemplatesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeLaunchTemplatesResult) => void): Request<EC2.Types.DescribeLaunchTemplatesResult, AWSError>;
1339 /**
1340 * Describes one or more launch templates.
1341 */
1342 describeLaunchTemplates(callback?: (err: AWSError, data: EC2.Types.DescribeLaunchTemplatesResult) => void): Request<EC2.Types.DescribeLaunchTemplatesResult, AWSError>;
1343 /**
1344 * Describes your Elastic IP addresses that are being moved to the EC2-VPC platform, or that are being restored to the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your account.
1345 */
1346 describeMovingAddresses(params: EC2.Types.DescribeMovingAddressesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeMovingAddressesResult) => void): Request<EC2.Types.DescribeMovingAddressesResult, AWSError>;
1347 /**
1348 * Describes your Elastic IP addresses that are being moved to the EC2-VPC platform, or that are being restored to the EC2-Classic platform. This request does not return information about any other Elastic IP addresses in your account.
1349 */
1350 describeMovingAddresses(callback?: (err: AWSError, data: EC2.Types.DescribeMovingAddressesResult) => void): Request<EC2.Types.DescribeMovingAddressesResult, AWSError>;
1351 /**
1352 * Describes one or more of your NAT gateways.
1353 */
1354 describeNatGateways(params: EC2.Types.DescribeNatGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNatGatewaysResult) => void): Request<EC2.Types.DescribeNatGatewaysResult, AWSError>;
1355 /**
1356 * Describes one or more of your NAT gateways.
1357 */
1358 describeNatGateways(callback?: (err: AWSError, data: EC2.Types.DescribeNatGatewaysResult) => void): Request<EC2.Types.DescribeNatGatewaysResult, AWSError>;
1359 /**
1360 * Describes one or more of your network ACLs. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
1361 */
1362 describeNetworkAcls(params: EC2.Types.DescribeNetworkAclsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkAclsResult) => void): Request<EC2.Types.DescribeNetworkAclsResult, AWSError>;
1363 /**
1364 * Describes one or more of your network ACLs. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
1365 */
1366 describeNetworkAcls(callback?: (err: AWSError, data: EC2.Types.DescribeNetworkAclsResult) => void): Request<EC2.Types.DescribeNetworkAclsResult, AWSError>;
1367 /**
1368 * Describes a network interface attribute. You can specify only one attribute at a time.
1369 */
1370 describeNetworkInterfaceAttribute(params: EC2.Types.DescribeNetworkInterfaceAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfaceAttributeResult) => void): Request<EC2.Types.DescribeNetworkInterfaceAttributeResult, AWSError>;
1371 /**
1372 * Describes a network interface attribute. You can specify only one attribute at a time.
1373 */
1374 describeNetworkInterfaceAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfaceAttributeResult) => void): Request<EC2.Types.DescribeNetworkInterfaceAttributeResult, AWSError>;
1375 /**
1376 * Describes the permissions for your network interfaces.
1377 */
1378 describeNetworkInterfacePermissions(params: EC2.Types.DescribeNetworkInterfacePermissionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacePermissionsResult) => void): Request<EC2.Types.DescribeNetworkInterfacePermissionsResult, AWSError>;
1379 /**
1380 * Describes the permissions for your network interfaces.
1381 */
1382 describeNetworkInterfacePermissions(callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacePermissionsResult) => void): Request<EC2.Types.DescribeNetworkInterfacePermissionsResult, AWSError>;
1383 /**
1384 * Describes one or more of your network interfaces.
1385 */
1386 describeNetworkInterfaces(params: EC2.Types.DescribeNetworkInterfacesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacesResult) => void): Request<EC2.Types.DescribeNetworkInterfacesResult, AWSError>;
1387 /**
1388 * Describes one or more of your network interfaces.
1389 */
1390 describeNetworkInterfaces(callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacesResult) => void): Request<EC2.Types.DescribeNetworkInterfacesResult, AWSError>;
1391 /**
1392 * Describes one or more of your placement groups. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.
1393 */
1394 describePlacementGroups(params: EC2.Types.DescribePlacementGroupsRequest, callback?: (err: AWSError, data: EC2.Types.DescribePlacementGroupsResult) => void): Request<EC2.Types.DescribePlacementGroupsResult, AWSError>;
1395 /**
1396 * Describes one or more of your placement groups. For more information, see Placement Groups in the Amazon Elastic Compute Cloud User Guide.
1397 */
1398 describePlacementGroups(callback?: (err: AWSError, data: EC2.Types.DescribePlacementGroupsResult) => void): Request<EC2.Types.DescribePlacementGroupsResult, AWSError>;
1399 /**
1400 * Describes available AWS services in a prefix list format, which includes the prefix list name and prefix list ID of the service and the IP address range for the service. A prefix list ID is required for creating an outbound security group rule that allows traffic from a VPC to access an AWS service through a gateway VPC endpoint. Currently, the services that support this action are Amazon S3 and Amazon DynamoDB.
1401 */
1402 describePrefixLists(params: EC2.Types.DescribePrefixListsRequest, callback?: (err: AWSError, data: EC2.Types.DescribePrefixListsResult) => void): Request<EC2.Types.DescribePrefixListsResult, AWSError>;
1403 /**
1404 * Describes available AWS services in a prefix list format, which includes the prefix list name and prefix list ID of the service and the IP address range for the service. A prefix list ID is required for creating an outbound security group rule that allows traffic from a VPC to access an AWS service through a gateway VPC endpoint. Currently, the services that support this action are Amazon S3 and Amazon DynamoDB.
1405 */
1406 describePrefixLists(callback?: (err: AWSError, data: EC2.Types.DescribePrefixListsResult) => void): Request<EC2.Types.DescribePrefixListsResult, AWSError>;
1407 /**
1408 * Describes the ID format settings for the root user and all IAM roles and IAM users that have explicitly specified a longer ID (17-character ID) preference. By default, all IAM roles and IAM users default to the same ID settings as the root user, unless they explicitly override the settings. This request is useful for identifying those IAM users and IAM roles that have overridden the default ID settings. The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.
1409 */
1410 describePrincipalIdFormat(params: EC2.Types.DescribePrincipalIdFormatRequest, callback?: (err: AWSError, data: EC2.Types.DescribePrincipalIdFormatResult) => void): Request<EC2.Types.DescribePrincipalIdFormatResult, AWSError>;
1411 /**
1412 * Describes the ID format settings for the root user and all IAM roles and IAM users that have explicitly specified a longer ID (17-character ID) preference. By default, all IAM roles and IAM users default to the same ID settings as the root user, unless they explicitly override the settings. This request is useful for identifying those IAM users and IAM roles that have overridden the default ID settings. The following resource types support longer IDs: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway.
1413 */
1414 describePrincipalIdFormat(callback?: (err: AWSError, data: EC2.Types.DescribePrincipalIdFormatResult) => void): Request<EC2.Types.DescribePrincipalIdFormatResult, AWSError>;
1415 /**
1416 * Describes the specified IPv4 address pools.
1417 */
1418 describePublicIpv4Pools(params: EC2.Types.DescribePublicIpv4PoolsRequest, callback?: (err: AWSError, data: EC2.Types.DescribePublicIpv4PoolsResult) => void): Request<EC2.Types.DescribePublicIpv4PoolsResult, AWSError>;
1419 /**
1420 * Describes the specified IPv4 address pools.
1421 */
1422 describePublicIpv4Pools(callback?: (err: AWSError, data: EC2.Types.DescribePublicIpv4PoolsResult) => void): Request<EC2.Types.DescribePublicIpv4PoolsResult, AWSError>;
1423 /**
1424 * Describes one or more regions that are currently available to you. For a list of the regions supported by Amazon EC2, see Regions and Endpoints.
1425 */
1426 describeRegions(params: EC2.Types.DescribeRegionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeRegionsResult) => void): Request<EC2.Types.DescribeRegionsResult, AWSError>;
1427 /**
1428 * Describes one or more regions that are currently available to you. For a list of the regions supported by Amazon EC2, see Regions and Endpoints.
1429 */
1430 describeRegions(callback?: (err: AWSError, data: EC2.Types.DescribeRegionsResult) => void): Request<EC2.Types.DescribeRegionsResult, AWSError>;
1431 /**
1432 * Describes one or more of the Reserved Instances that you purchased. For more information about Reserved Instances, see Reserved Instances in the Amazon Elastic Compute Cloud User Guide.
1433 */
1434 describeReservedInstances(params: EC2.Types.DescribeReservedInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesResult) => void): Request<EC2.Types.DescribeReservedInstancesResult, AWSError>;
1435 /**
1436 * Describes one or more of the Reserved Instances that you purchased. For more information about Reserved Instances, see Reserved Instances in the Amazon Elastic Compute Cloud User Guide.
1437 */
1438 describeReservedInstances(callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesResult) => void): Request<EC2.Types.DescribeReservedInstancesResult, AWSError>;
1439 /**
1440 * Describes your account's Reserved Instance listings in the Reserved Instance Marketplace. The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances. As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available for purchase. As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged based on the total price of all of the listings that you purchase. For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
1441 */
1442 describeReservedInstancesListings(params: EC2.Types.DescribeReservedInstancesListingsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesListingsResult) => void): Request<EC2.Types.DescribeReservedInstancesListingsResult, AWSError>;
1443 /**
1444 * Describes your account's Reserved Instance listings in the Reserved Instance Marketplace. The Reserved Instance Marketplace matches sellers who want to resell Reserved Instance capacity that they no longer need with buyers who want to purchase additional capacity. Reserved Instances bought and sold through the Reserved Instance Marketplace work like any other Reserved Instances. As a seller, you choose to list some or all of your Reserved Instances, and you specify the upfront price to receive for them. Your Reserved Instances are then listed in the Reserved Instance Marketplace and are available for purchase. As a buyer, you specify the configuration of the Reserved Instance to purchase, and the Marketplace matches what you're searching for with what's available. The Marketplace first sells the lowest priced Reserved Instances to you, and continues to sell available Reserved Instance listings to you until your demand is met. You are charged based on the total price of all of the listings that you purchase. For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
1445 */
1446 describeReservedInstancesListings(callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesListingsResult) => void): Request<EC2.Types.DescribeReservedInstancesListingsResult, AWSError>;
1447 /**
1448 * Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all your Reserved Instances modification requests is returned. If a modification ID is specified, only information about the specific modification is returned. For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.
1449 */
1450 describeReservedInstancesModifications(params: EC2.Types.DescribeReservedInstancesModificationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesModificationsResult) => void): Request<EC2.Types.DescribeReservedInstancesModificationsResult, AWSError>;
1451 /**
1452 * Describes the modifications made to your Reserved Instances. If no parameter is specified, information about all your Reserved Instances modification requests is returned. If a modification ID is specified, only information about the specific modification is returned. For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.
1453 */
1454 describeReservedInstancesModifications(callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesModificationsResult) => void): Request<EC2.Types.DescribeReservedInstancesModificationsResult, AWSError>;
1455 /**
1456 * Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the right to launch instances for a period of time. During that time period, you do not receive insufficient capacity errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used. If you have listed your own Reserved Instances for sale in the Reserved Instance Marketplace, they will be excluded from these results. This is to ensure that you do not purchase your own Reserved Instances. For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
1457 */
1458 describeReservedInstancesOfferings(params: EC2.Types.DescribeReservedInstancesOfferingsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesOfferingsResult) => void): Request<EC2.Types.DescribeReservedInstancesOfferingsResult, AWSError>;
1459 /**
1460 * Describes Reserved Instance offerings that are available for purchase. With Reserved Instances, you purchase the right to launch instances for a period of time. During that time period, you do not receive insufficient capacity errors, and you pay a lower usage rate than the rate charged for On-Demand instances for the actual time used. If you have listed your own Reserved Instances for sale in the Reserved Instance Marketplace, they will be excluded from these results. This is to ensure that you do not purchase your own Reserved Instances. For more information, see Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
1461 */
1462 describeReservedInstancesOfferings(callback?: (err: AWSError, data: EC2.Types.DescribeReservedInstancesOfferingsResult) => void): Request<EC2.Types.DescribeReservedInstancesOfferingsResult, AWSError>;
1463 /**
1464 * Describes one or more of your route tables. Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
1465 */
1466 describeRouteTables(params: EC2.Types.DescribeRouteTablesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeRouteTablesResult) => void): Request<EC2.Types.DescribeRouteTablesResult, AWSError>;
1467 /**
1468 * Describes one or more of your route tables. Each subnet in your VPC must be associated with a route table. If a subnet is not explicitly associated with any route table, it is implicitly associated with the main route table. This command does not return the subnet ID for implicit associations. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
1469 */
1470 describeRouteTables(callback?: (err: AWSError, data: EC2.Types.DescribeRouteTablesResult) => void): Request<EC2.Types.DescribeRouteTablesResult, AWSError>;
1471 /**
1472 * Finds available schedules that meet the specified criteria. You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours. After you find a schedule that meets your needs, call PurchaseScheduledInstances to purchase Scheduled Instances with that schedule.
1473 */
1474 describeScheduledInstanceAvailability(params: EC2.Types.DescribeScheduledInstanceAvailabilityRequest, callback?: (err: AWSError, data: EC2.Types.DescribeScheduledInstanceAvailabilityResult) => void): Request<EC2.Types.DescribeScheduledInstanceAvailabilityResult, AWSError>;
1475 /**
1476 * Finds available schedules that meet the specified criteria. You can search for an available schedule no more than 3 months in advance. You must meet the minimum required duration of 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours. After you find a schedule that meets your needs, call PurchaseScheduledInstances to purchase Scheduled Instances with that schedule.
1477 */
1478 describeScheduledInstanceAvailability(callback?: (err: AWSError, data: EC2.Types.DescribeScheduledInstanceAvailabilityResult) => void): Request<EC2.Types.DescribeScheduledInstanceAvailabilityResult, AWSError>;
1479 /**
1480 * Describes one or more of your Scheduled Instances.
1481 */
1482 describeScheduledInstances(params: EC2.Types.DescribeScheduledInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeScheduledInstancesResult) => void): Request<EC2.Types.DescribeScheduledInstancesResult, AWSError>;
1483 /**
1484 * Describes one or more of your Scheduled Instances.
1485 */
1486 describeScheduledInstances(callback?: (err: AWSError, data: EC2.Types.DescribeScheduledInstancesResult) => void): Request<EC2.Types.DescribeScheduledInstancesResult, AWSError>;
1487 /**
1488 * [EC2-VPC only] Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.
1489 */
1490 describeSecurityGroupReferences(params: EC2.Types.DescribeSecurityGroupReferencesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupReferencesResult) => void): Request<EC2.Types.DescribeSecurityGroupReferencesResult, AWSError>;
1491 /**
1492 * [EC2-VPC only] Describes the VPCs on the other side of a VPC peering connection that are referencing the security groups you've specified in this request.
1493 */
1494 describeSecurityGroupReferences(callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupReferencesResult) => void): Request<EC2.Types.DescribeSecurityGroupReferencesResult, AWSError>;
1495 /**
1496 * Describes one or more of your security groups. A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.
1497 */
1498 describeSecurityGroups(params: EC2.Types.DescribeSecurityGroupsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupsResult) => void): Request<EC2.Types.DescribeSecurityGroupsResult, AWSError>;
1499 /**
1500 * Describes one or more of your security groups. A security group is for use with instances either in the EC2-Classic platform or in a specific VPC. For more information, see Amazon EC2 Security Groups in the Amazon Elastic Compute Cloud User Guide and Security Groups for Your VPC in the Amazon Virtual Private Cloud User Guide.
1501 */
1502 describeSecurityGroups(callback?: (err: AWSError, data: EC2.Types.DescribeSecurityGroupsResult) => void): Request<EC2.Types.DescribeSecurityGroupsResult, AWSError>;
1503 /**
1504 * Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time. For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.
1505 */
1506 describeSnapshotAttribute(params: EC2.Types.DescribeSnapshotAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotAttributeResult) => void): Request<EC2.Types.DescribeSnapshotAttributeResult, AWSError>;
1507 /**
1508 * Describes the specified attribute of the specified snapshot. You can specify only one attribute at a time. For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.
1509 */
1510 describeSnapshotAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotAttributeResult) => void): Request<EC2.Types.DescribeSnapshotAttributeResult, AWSError>;
1511 /**
1512 * Describes one or more of the EBS snapshots available to you. Available snapshots include public snapshots available for use by any AWS account, private snapshots that you own, and private snapshots owned by another AWS account for which you've been given explicit create volume permissions. The create volume permissions fall into the following categories: public: The owner of the snapshot granted create volume permissions for the snapshot to the all group. All AWS accounts have create volume permissions for these snapshots. explicit: The owner of the snapshot granted create volume permissions to a specific AWS account. implicit: An AWS account has implicit create volume permissions for all snapshots it owns. The list of snapshots returned can be modified by specifying snapshot IDs, snapshot owners, or AWS accounts with create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have create volume permissions. If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it is not included in the returned results. If you specify one or more snapshot owners using the OwnerIds option, only snapshots from the specified owners and for which you have access are returned. The results can include the AWS account IDs of the specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you own. If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned. You can specify AWS account IDs (if you own the snapshots), self for snapshots for which you own or have explicit permissions, or all for public snapshots. If you are describing a long list of snapshots, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeSnapshots request to retrieve the remaining results. For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.
1513 */
1514 describeSnapshots(params: EC2.Types.DescribeSnapshotsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotsResult) => void): Request<EC2.Types.DescribeSnapshotsResult, AWSError>;
1515 /**
1516 * Describes one or more of the EBS snapshots available to you. Available snapshots include public snapshots available for use by any AWS account, private snapshots that you own, and private snapshots owned by another AWS account for which you've been given explicit create volume permissions. The create volume permissions fall into the following categories: public: The owner of the snapshot granted create volume permissions for the snapshot to the all group. All AWS accounts have create volume permissions for these snapshots. explicit: The owner of the snapshot granted create volume permissions to a specific AWS account. implicit: An AWS account has implicit create volume permissions for all snapshots it owns. The list of snapshots returned can be modified by specifying snapshot IDs, snapshot owners, or AWS accounts with create volume permissions. If no options are specified, Amazon EC2 returns all snapshots for which you have create volume permissions. If you specify one or more snapshot IDs, only snapshots that have the specified IDs are returned. If you specify an invalid snapshot ID, an error is returned. If you specify a snapshot ID for which you do not have access, it is not included in the returned results. If you specify one or more snapshot owners using the OwnerIds option, only snapshots from the specified owners and for which you have access are returned. The results can include the AWS account IDs of the specified owners, amazon for snapshots owned by Amazon, or self for snapshots that you own. If you specify a list of restorable users, only snapshots with create snapshot permissions for those users are returned. You can specify AWS account IDs (if you own the snapshots), self for snapshots for which you own or have explicit permissions, or all for public snapshots. If you are describing a long list of snapshots, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeSnapshots request to retrieve the remaining results. For more information about EBS snapshots, see Amazon EBS Snapshots in the Amazon Elastic Compute Cloud User Guide.
1517 */
1518 describeSnapshots(callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotsResult) => void): Request<EC2.Types.DescribeSnapshotsResult, AWSError>;
1519 /**
1520 * Describes the data feed for Spot Instances. For more information, see Spot Instance Data Feed in the Amazon EC2 User Guide for Linux Instances.
1521 */
1522 describeSpotDatafeedSubscription(params: EC2.Types.DescribeSpotDatafeedSubscriptionRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotDatafeedSubscriptionResult) => void): Request<EC2.Types.DescribeSpotDatafeedSubscriptionResult, AWSError>;
1523 /**
1524 * Describes the data feed for Spot Instances. For more information, see Spot Instance Data Feed in the Amazon EC2 User Guide for Linux Instances.
1525 */
1526 describeSpotDatafeedSubscription(callback?: (err: AWSError, data: EC2.Types.DescribeSpotDatafeedSubscriptionResult) => void): Request<EC2.Types.DescribeSpotDatafeedSubscriptionResult, AWSError>;
1527 /**
1528 * Describes the running instances for the specified Spot Fleet.
1529 */
1530 describeSpotFleetInstances(params: EC2.Types.DescribeSpotFleetInstancesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetInstancesResponse) => void): Request<EC2.Types.DescribeSpotFleetInstancesResponse, AWSError>;
1531 /**
1532 * Describes the running instances for the specified Spot Fleet.
1533 */
1534 describeSpotFleetInstances(callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetInstancesResponse) => void): Request<EC2.Types.DescribeSpotFleetInstancesResponse, AWSError>;
1535 /**
1536 * Describes the events for the specified Spot Fleet request during the specified time. Spot Fleet events are delayed by up to 30 seconds before they can be described. This ensures that you can query by the last evaluated time and not miss a recorded event. Spot Fleet events are available for 48 hours.
1537 */
1538 describeSpotFleetRequestHistory(params: EC2.Types.DescribeSpotFleetRequestHistoryRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetRequestHistoryResponse) => void): Request<EC2.Types.DescribeSpotFleetRequestHistoryResponse, AWSError>;
1539 /**
1540 * Describes the events for the specified Spot Fleet request during the specified time. Spot Fleet events are delayed by up to 30 seconds before they can be described. This ensures that you can query by the last evaluated time and not miss a recorded event. Spot Fleet events are available for 48 hours.
1541 */
1542 describeSpotFleetRequestHistory(callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetRequestHistoryResponse) => void): Request<EC2.Types.DescribeSpotFleetRequestHistoryResponse, AWSError>;
1543 /**
1544 * Describes your Spot Fleet requests. Spot Fleet requests are deleted 48 hours after they are canceled and their instances are terminated.
1545 */
1546 describeSpotFleetRequests(params: EC2.Types.DescribeSpotFleetRequestsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetRequestsResponse) => void): Request<EC2.Types.DescribeSpotFleetRequestsResponse, AWSError>;
1547 /**
1548 * Describes your Spot Fleet requests. Spot Fleet requests are deleted 48 hours after they are canceled and their instances are terminated.
1549 */
1550 describeSpotFleetRequests(callback?: (err: AWSError, data: EC2.Types.DescribeSpotFleetRequestsResponse) => void): Request<EC2.Types.DescribeSpotFleetRequestsResponse, AWSError>;
1551 /**
1552 * Describes the specified Spot Instance requests. You can use DescribeSpotInstanceRequests to find a running Spot Instance by examining the response. If the status of the Spot Instance is fulfilled, the instance ID appears in the response and contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to look for instances where the instance lifecycle is spot. We recommend that you set MaxResults to a value between 5 and 1000 to limit the number of results returned. This paginates the output, which makes the list more manageable and returns the results faster. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeSpotInstanceRequests request to retrieve the remaining results. Spot Instance requests are deleted four hours after they are canceled and their instances are terminated.
1553 */
1554 describeSpotInstanceRequests(params: EC2.Types.DescribeSpotInstanceRequestsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotInstanceRequestsResult) => void): Request<EC2.Types.DescribeSpotInstanceRequestsResult, AWSError>;
1555 /**
1556 * Describes the specified Spot Instance requests. You can use DescribeSpotInstanceRequests to find a running Spot Instance by examining the response. If the status of the Spot Instance is fulfilled, the instance ID appears in the response and contains the identifier of the instance. Alternatively, you can use DescribeInstances with a filter to look for instances where the instance lifecycle is spot. We recommend that you set MaxResults to a value between 5 and 1000 to limit the number of results returned. This paginates the output, which makes the list more manageable and returns the results faster. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeSpotInstanceRequests request to retrieve the remaining results. Spot Instance requests are deleted four hours after they are canceled and their instances are terminated.
1557 */
1558 describeSpotInstanceRequests(callback?: (err: AWSError, data: EC2.Types.DescribeSpotInstanceRequestsResult) => void): Request<EC2.Types.DescribeSpotInstanceRequestsResult, AWSError>;
1559 /**
1560 * Describes the Spot price history. For more information, see Spot Instance Pricing History in the Amazon EC2 User Guide for Linux Instances. When you specify a start and end time, this operation returns the prices of the instance types within the time range that you specified and the time when the price changed. The price is valid within the time period that you specified; the response merely indicates the last time that the price changed.
1561 */
1562 describeSpotPriceHistory(params: EC2.Types.DescribeSpotPriceHistoryRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSpotPriceHistoryResult) => void): Request<EC2.Types.DescribeSpotPriceHistoryResult, AWSError>;
1563 /**
1564 * Describes the Spot price history. For more information, see Spot Instance Pricing History in the Amazon EC2 User Guide for Linux Instances. When you specify a start and end time, this operation returns the prices of the instance types within the time range that you specified and the time when the price changed. The price is valid within the time period that you specified; the response merely indicates the last time that the price changed.
1565 */
1566 describeSpotPriceHistory(callback?: (err: AWSError, data: EC2.Types.DescribeSpotPriceHistoryResult) => void): Request<EC2.Types.DescribeSpotPriceHistoryResult, AWSError>;
1567 /**
1568 * [EC2-VPC only] Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in a peer VPC, or a security group in a peer VPC for which the VPC peering connection has been deleted.
1569 */
1570 describeStaleSecurityGroups(params: EC2.Types.DescribeStaleSecurityGroupsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeStaleSecurityGroupsResult) => void): Request<EC2.Types.DescribeStaleSecurityGroupsResult, AWSError>;
1571 /**
1572 * [EC2-VPC only] Describes the stale security group rules for security groups in a specified VPC. Rules are stale when they reference a deleted security group in a peer VPC, or a security group in a peer VPC for which the VPC peering connection has been deleted.
1573 */
1574 describeStaleSecurityGroups(callback?: (err: AWSError, data: EC2.Types.DescribeStaleSecurityGroupsResult) => void): Request<EC2.Types.DescribeStaleSecurityGroupsResult, AWSError>;
1575 /**
1576 * Describes one or more of your subnets. For more information, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.
1577 */
1578 describeSubnets(params: EC2.Types.DescribeSubnetsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeSubnetsResult) => void): Request<EC2.Types.DescribeSubnetsResult, AWSError>;
1579 /**
1580 * Describes one or more of your subnets. For more information, see Your VPC and Subnets in the Amazon Virtual Private Cloud User Guide.
1581 */
1582 describeSubnets(callback?: (err: AWSError, data: EC2.Types.DescribeSubnetsResult) => void): Request<EC2.Types.DescribeSubnetsResult, AWSError>;
1583 /**
1584 * Describes one or more of the tags for your EC2 resources. For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.
1585 */
1586 describeTags(params: EC2.Types.DescribeTagsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTagsResult) => void): Request<EC2.Types.DescribeTagsResult, AWSError>;
1587 /**
1588 * Describes one or more of the tags for your EC2 resources. For more information about tags, see Tagging Your Resources in the Amazon Elastic Compute Cloud User Guide.
1589 */
1590 describeTags(callback?: (err: AWSError, data: EC2.Types.DescribeTagsResult) => void): Request<EC2.Types.DescribeTagsResult, AWSError>;
1591 /**
1592 * Describes one or more attachments between resources and transit gateways. By default, all attachments are described. Alternatively, you can filter the results by attachment ID, attachment state, resource ID, or resource owner.
1593 */
1594 describeTransitGatewayAttachments(params: EC2.Types.DescribeTransitGatewayAttachmentsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayAttachmentsResult, AWSError>;
1595 /**
1596 * Describes one or more attachments between resources and transit gateways. By default, all attachments are described. Alternatively, you can filter the results by attachment ID, attachment state, resource ID, or resource owner.
1597 */
1598 describeTransitGatewayAttachments(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayAttachmentsResult, AWSError>;
1599 /**
1600 * Describes one or more transit gateway route tables. By default, all transit gateway route tables are described. Alternatively, you can filter the results.
1601 */
1602 describeTransitGatewayRouteTables(params: EC2.Types.DescribeTransitGatewayRouteTablesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayRouteTablesResult) => void): Request<EC2.Types.DescribeTransitGatewayRouteTablesResult, AWSError>;
1603 /**
1604 * Describes one or more transit gateway route tables. By default, all transit gateway route tables are described. Alternatively, you can filter the results.
1605 */
1606 describeTransitGatewayRouteTables(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayRouteTablesResult) => void): Request<EC2.Types.DescribeTransitGatewayRouteTablesResult, AWSError>;
1607 /**
1608 * Describes one or more VPC attachments. By default, all VPC attachments are described. Alternatively, you can filter the results.
1609 */
1610 describeTransitGatewayVpcAttachments(params: EC2.Types.DescribeTransitGatewayVpcAttachmentsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayVpcAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayVpcAttachmentsResult, AWSError>;
1611 /**
1612 * Describes one or more VPC attachments. By default, all VPC attachments are described. Alternatively, you can filter the results.
1613 */
1614 describeTransitGatewayVpcAttachments(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewayVpcAttachmentsResult) => void): Request<EC2.Types.DescribeTransitGatewayVpcAttachmentsResult, AWSError>;
1615 /**
1616 * Describes one or more transit gateways. By default, all transit gateways are described. Alternatively, you can filter the results.
1617 */
1618 describeTransitGateways(params: EC2.Types.DescribeTransitGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewaysResult) => void): Request<EC2.Types.DescribeTransitGatewaysResult, AWSError>;
1619 /**
1620 * Describes one or more transit gateways. By default, all transit gateways are described. Alternatively, you can filter the results.
1621 */
1622 describeTransitGateways(callback?: (err: AWSError, data: EC2.Types.DescribeTransitGatewaysResult) => void): Request<EC2.Types.DescribeTransitGatewaysResult, AWSError>;
1623 /**
1624 * Describes the specified attribute of the specified volume. You can specify only one attribute at a time. For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.
1625 */
1626 describeVolumeAttribute(params: EC2.Types.DescribeVolumeAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVolumeAttributeResult) => void): Request<EC2.Types.DescribeVolumeAttributeResult, AWSError>;
1627 /**
1628 * Describes the specified attribute of the specified volume. You can specify only one attribute at a time. For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.
1629 */
1630 describeVolumeAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeVolumeAttributeResult) => void): Request<EC2.Types.DescribeVolumeAttributeResult, AWSError>;
1631 /**
1632 * Describes the status of the specified volumes. Volume status provides the result of the checks performed on your volumes to determine events that can impair the performance of your volumes. The performance of a volume can be affected if an issue occurs on the volume's underlying host. If the volume's underlying host experiences a power outage or system issue, after the system is restored, there could be data inconsistencies on the volume. Volume events notify you if this occurs. Volume actions notify you if any action needs to be taken in response to the event. The DescribeVolumeStatus operation provides the following information about the specified volumes: Status: Reflects the current status of the volume. The possible values are ok, impaired , warning, or insufficient-data. If all checks pass, the overall status of the volume is ok. If the check fails, the overall status is impaired. If the status is insufficient-data, then the checks may still be taking place on your volume at the time. We recommend that you retry the request. For more information about volume status, see Monitoring the Status of Your Volumes in the Amazon Elastic Compute Cloud User Guide. Events: Reflect the cause of a volume status and may require you to take action. For example, if your volume returns an impaired status, then the volume event might be potential-data-inconsistency. This means that your volume has been affected by an issue with the underlying host, has all I/O operations disabled, and may have inconsistent data. Actions: Reflect the actions you may have to take in response to an event. For example, if the status of the volume is impaired and the volume event shows potential-data-inconsistency, then the action shows enable-volume-io. This means that you may want to enable the I/O operations for the volume by calling the EnableVolumeIO action and then check the volume for data consistency. Volume status is based on the volume status checks, and does not reflect the volume state. Therefore, volume status does not indicate volumes in the error state (for example, when a volume is incapable of accepting I/O.)
1633 */
1634 describeVolumeStatus(params: EC2.Types.DescribeVolumeStatusRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVolumeStatusResult) => void): Request<EC2.Types.DescribeVolumeStatusResult, AWSError>;
1635 /**
1636 * Describes the status of the specified volumes. Volume status provides the result of the checks performed on your volumes to determine events that can impair the performance of your volumes. The performance of a volume can be affected if an issue occurs on the volume's underlying host. If the volume's underlying host experiences a power outage or system issue, after the system is restored, there could be data inconsistencies on the volume. Volume events notify you if this occurs. Volume actions notify you if any action needs to be taken in response to the event. The DescribeVolumeStatus operation provides the following information about the specified volumes: Status: Reflects the current status of the volume. The possible values are ok, impaired , warning, or insufficient-data. If all checks pass, the overall status of the volume is ok. If the check fails, the overall status is impaired. If the status is insufficient-data, then the checks may still be taking place on your volume at the time. We recommend that you retry the request. For more information about volume status, see Monitoring the Status of Your Volumes in the Amazon Elastic Compute Cloud User Guide. Events: Reflect the cause of a volume status and may require you to take action. For example, if your volume returns an impaired status, then the volume event might be potential-data-inconsistency. This means that your volume has been affected by an issue with the underlying host, has all I/O operations disabled, and may have inconsistent data. Actions: Reflect the actions you may have to take in response to an event. For example, if the status of the volume is impaired and the volume event shows potential-data-inconsistency, then the action shows enable-volume-io. This means that you may want to enable the I/O operations for the volume by calling the EnableVolumeIO action and then check the volume for data consistency. Volume status is based on the volume status checks, and does not reflect the volume state. Therefore, volume status does not indicate volumes in the error state (for example, when a volume is incapable of accepting I/O.)
1637 */
1638 describeVolumeStatus(callback?: (err: AWSError, data: EC2.Types.DescribeVolumeStatusResult) => void): Request<EC2.Types.DescribeVolumeStatusResult, AWSError>;
1639 /**
1640 * Describes the specified EBS volumes. If you are describing a long list of volumes, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeVolumes request to retrieve the remaining results. For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.
1641 */
1642 describeVolumes(params: EC2.Types.DescribeVolumesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
1643 /**
1644 * Describes the specified EBS volumes. If you are describing a long list of volumes, you can paginate the output to make the list more manageable. The MaxResults parameter sets the maximum number of results returned in a single page. If the list of results exceeds your MaxResults value, then that number of results is returned along with a NextToken value that can be passed to a subsequent DescribeVolumes request to retrieve the remaining results. For more information about EBS volumes, see Amazon EBS Volumes in the Amazon Elastic Compute Cloud User Guide.
1645 */
1646 describeVolumes(callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
1647 /**
1648 * Reports the current modification status of EBS volumes. Current-generation EBS volumes support modification of attributes including type, size, and (for io1 volumes) IOPS provisioning while either attached to or detached from an instance. Following an action from the API or the console to modify a volume, the status of the modification may be modifying, optimizing, completed, or failed. If a volume has never been modified, then certain elements of the returned VolumeModification objects are null. You can also use CloudWatch Events to check the status of a modification to an EBS volume. For information about CloudWatch Events, see the Amazon CloudWatch Events User Guide. For more information, see Monitoring Volume Modifications" in the Amazon Elastic Compute Cloud User Guide.
1649 */
1650 describeVolumesModifications(params: EC2.Types.DescribeVolumesModificationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesModificationsResult) => void): Request<EC2.Types.DescribeVolumesModificationsResult, AWSError>;
1651 /**
1652 * Reports the current modification status of EBS volumes. Current-generation EBS volumes support modification of attributes including type, size, and (for io1 volumes) IOPS provisioning while either attached to or detached from an instance. Following an action from the API or the console to modify a volume, the status of the modification may be modifying, optimizing, completed, or failed. If a volume has never been modified, then certain elements of the returned VolumeModification objects are null. You can also use CloudWatch Events to check the status of a modification to an EBS volume. For information about CloudWatch Events, see the Amazon CloudWatch Events User Guide. For more information, see Monitoring Volume Modifications" in the Amazon Elastic Compute Cloud User Guide.
1653 */
1654 describeVolumesModifications(callback?: (err: AWSError, data: EC2.Types.DescribeVolumesModificationsResult) => void): Request<EC2.Types.DescribeVolumesModificationsResult, AWSError>;
1655 /**
1656 * Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.
1657 */
1658 describeVpcAttribute(params: EC2.Types.DescribeVpcAttributeRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcAttributeResult) => void): Request<EC2.Types.DescribeVpcAttributeResult, AWSError>;
1659 /**
1660 * Describes the specified attribute of the specified VPC. You can specify only one attribute at a time.
1661 */
1662 describeVpcAttribute(callback?: (err: AWSError, data: EC2.Types.DescribeVpcAttributeResult) => void): Request<EC2.Types.DescribeVpcAttributeResult, AWSError>;
1663 /**
1664 * Describes the ClassicLink status of one or more VPCs.
1665 */
1666 describeVpcClassicLink(params: EC2.Types.DescribeVpcClassicLinkRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcClassicLinkResult) => void): Request<EC2.Types.DescribeVpcClassicLinkResult, AWSError>;
1667 /**
1668 * Describes the ClassicLink status of one or more VPCs.
1669 */
1670 describeVpcClassicLink(callback?: (err: AWSError, data: EC2.Types.DescribeVpcClassicLinkResult) => void): Request<EC2.Types.DescribeVpcClassicLinkResult, AWSError>;
1671 /**
1672 * Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.
1673 */
1674 describeVpcClassicLinkDnsSupport(params: EC2.Types.DescribeVpcClassicLinkDnsSupportRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.DescribeVpcClassicLinkDnsSupportResult, AWSError>;
1675 /**
1676 * Describes the ClassicLink DNS support status of one or more VPCs. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.
1677 */
1678 describeVpcClassicLinkDnsSupport(callback?: (err: AWSError, data: EC2.Types.DescribeVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.DescribeVpcClassicLinkDnsSupportResult, AWSError>;
1679 /**
1680 * Describes the connection notifications for VPC endpoints and VPC endpoint services.
1681 */
1682 describeVpcEndpointConnectionNotifications(params: EC2.Types.DescribeVpcEndpointConnectionNotificationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointConnectionNotificationsResult) => void): Request<EC2.Types.DescribeVpcEndpointConnectionNotificationsResult, AWSError>;
1683 /**
1684 * Describes the connection notifications for VPC endpoints and VPC endpoint services.
1685 */
1686 describeVpcEndpointConnectionNotifications(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointConnectionNotificationsResult) => void): Request<EC2.Types.DescribeVpcEndpointConnectionNotificationsResult, AWSError>;
1687 /**
1688 * Describes the VPC endpoint connections to your VPC endpoint services, including any endpoints that are pending your acceptance.
1689 */
1690 describeVpcEndpointConnections(params: EC2.Types.DescribeVpcEndpointConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointConnectionsResult) => void): Request<EC2.Types.DescribeVpcEndpointConnectionsResult, AWSError>;
1691 /**
1692 * Describes the VPC endpoint connections to your VPC endpoint services, including any endpoints that are pending your acceptance.
1693 */
1694 describeVpcEndpointConnections(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointConnectionsResult) => void): Request<EC2.Types.DescribeVpcEndpointConnectionsResult, AWSError>;
1695 /**
1696 * Describes the VPC endpoint service configurations in your account (your services).
1697 */
1698 describeVpcEndpointServiceConfigurations(params: EC2.Types.DescribeVpcEndpointServiceConfigurationsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServiceConfigurationsResult) => void): Request<EC2.Types.DescribeVpcEndpointServiceConfigurationsResult, AWSError>;
1699 /**
1700 * Describes the VPC endpoint service configurations in your account (your services).
1701 */
1702 describeVpcEndpointServiceConfigurations(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServiceConfigurationsResult) => void): Request<EC2.Types.DescribeVpcEndpointServiceConfigurationsResult, AWSError>;
1703 /**
1704 * Describes the principals (service consumers) that are permitted to discover your VPC endpoint service.
1705 */
1706 describeVpcEndpointServicePermissions(params: EC2.Types.DescribeVpcEndpointServicePermissionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServicePermissionsResult) => void): Request<EC2.Types.DescribeVpcEndpointServicePermissionsResult, AWSError>;
1707 /**
1708 * Describes the principals (service consumers) that are permitted to discover your VPC endpoint service.
1709 */
1710 describeVpcEndpointServicePermissions(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServicePermissionsResult) => void): Request<EC2.Types.DescribeVpcEndpointServicePermissionsResult, AWSError>;
1711 /**
1712 * Describes available services to which you can create a VPC endpoint.
1713 */
1714 describeVpcEndpointServices(params: EC2.Types.DescribeVpcEndpointServicesRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServicesResult) => void): Request<EC2.Types.DescribeVpcEndpointServicesResult, AWSError>;
1715 /**
1716 * Describes available services to which you can create a VPC endpoint.
1717 */
1718 describeVpcEndpointServices(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointServicesResult) => void): Request<EC2.Types.DescribeVpcEndpointServicesResult, AWSError>;
1719 /**
1720 * Describes one or more of your VPC endpoints.
1721 */
1722 describeVpcEndpoints(params: EC2.Types.DescribeVpcEndpointsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointsResult) => void): Request<EC2.Types.DescribeVpcEndpointsResult, AWSError>;
1723 /**
1724 * Describes one or more of your VPC endpoints.
1725 */
1726 describeVpcEndpoints(callback?: (err: AWSError, data: EC2.Types.DescribeVpcEndpointsResult) => void): Request<EC2.Types.DescribeVpcEndpointsResult, AWSError>;
1727 /**
1728 * Describes one or more of your VPC peering connections.
1729 */
1730 describeVpcPeeringConnections(params: EC2.Types.DescribeVpcPeeringConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
1731 /**
1732 * Describes one or more of your VPC peering connections.
1733 */
1734 describeVpcPeeringConnections(callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
1735 /**
1736 * Describes one or more of your VPCs.
1737 */
1738 describeVpcs(params: EC2.Types.DescribeVpcsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
1739 /**
1740 * Describes one or more of your VPCs.
1741 */
1742 describeVpcs(callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
1743 /**
1744 * Describes one or more of your VPN connections. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
1745 */
1746 describeVpnConnections(params: EC2.Types.DescribeVpnConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
1747 /**
1748 * Describes one or more of your VPN connections. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
1749 */
1750 describeVpnConnections(callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
1751 /**
1752 * Describes one or more of your virtual private gateways. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
1753 */
1754 describeVpnGateways(params: EC2.Types.DescribeVpnGatewaysRequest, callback?: (err: AWSError, data: EC2.Types.DescribeVpnGatewaysResult) => void): Request<EC2.Types.DescribeVpnGatewaysResult, AWSError>;
1755 /**
1756 * Describes one or more of your virtual private gateways. For more information, see AWS Site-to-Site VPN in the AWS Site-to-Site VPN User Guide.
1757 */
1758 describeVpnGateways(callback?: (err: AWSError, data: EC2.Types.DescribeVpnGatewaysResult) => void): Request<EC2.Types.DescribeVpnGatewaysResult, AWSError>;
1759 /**
1760 * Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's stopped.
1761 */
1762 detachClassicLinkVpc(params: EC2.Types.DetachClassicLinkVpcRequest, callback?: (err: AWSError, data: EC2.Types.DetachClassicLinkVpcResult) => void): Request<EC2.Types.DetachClassicLinkVpcResult, AWSError>;
1763 /**
1764 * Unlinks (detaches) a linked EC2-Classic instance from a VPC. After the instance has been unlinked, the VPC security groups are no longer associated with it. An instance is automatically unlinked from a VPC when it's stopped.
1765 */
1766 detachClassicLinkVpc(callback?: (err: AWSError, data: EC2.Types.DetachClassicLinkVpcResult) => void): Request<EC2.Types.DetachClassicLinkVpcResult, AWSError>;
1767 /**
1768 * Detaches an internet gateway from a VPC, disabling connectivity between the internet and the VPC. The VPC must not contain any running instances with Elastic IP addresses or public IPv4 addresses.
1769 */
1770 detachInternetGateway(params: EC2.Types.DetachInternetGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1771 /**
1772 * Detaches an internet gateway from a VPC, disabling connectivity between the internet and the VPC. The VPC must not contain any running instances with Elastic IP addresses or public IPv4 addresses.
1773 */
1774 detachInternetGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1775 /**
1776 * Detaches a network interface from an instance.
1777 */
1778 detachNetworkInterface(params: EC2.Types.DetachNetworkInterfaceRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1779 /**
1780 * Detaches a network interface from an instance.
1781 */
1782 detachNetworkInterface(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1783 /**
1784 * Detaches an EBS volume from an instance. Make sure to unmount any file systems on the device within your operating system before detaching the volume. Failure to do so can result in the volume becoming stuck in the busy state while detaching. If this happens, detachment can be delayed indefinitely until you unmount the volume, force detachment, reboot the instance, or all three. If an EBS volume is the root device of an instance, it can't be detached while the instance is running. To detach the root volume, stop the instance first. When a volume with an AWS Marketplace product code is detached from an instance, the product code is no longer associated with the instance. For more information, see Detaching an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.
1785 */
1786 detachVolume(params: EC2.Types.DetachVolumeRequest, callback?: (err: AWSError, data: EC2.Types.VolumeAttachment) => void): Request<EC2.Types.VolumeAttachment, AWSError>;
1787 /**
1788 * Detaches an EBS volume from an instance. Make sure to unmount any file systems on the device within your operating system before detaching the volume. Failure to do so can result in the volume becoming stuck in the busy state while detaching. If this happens, detachment can be delayed indefinitely until you unmount the volume, force detachment, reboot the instance, or all three. If an EBS volume is the root device of an instance, it can't be detached while the instance is running. To detach the root volume, stop the instance first. When a volume with an AWS Marketplace product code is detached from an instance, the product code is no longer associated with the instance. For more information, see Detaching an Amazon EBS Volume in the Amazon Elastic Compute Cloud User Guide.
1789 */
1790 detachVolume(callback?: (err: AWSError, data: EC2.Types.VolumeAttachment) => void): Request<EC2.Types.VolumeAttachment, AWSError>;
1791 /**
1792 * Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the virtual private gateway (any attachments to the virtual private gateway are also described). You must wait for the attachment's state to switch to detached before you can delete the VPC or attach a different VPC to the virtual private gateway.
1793 */
1794 detachVpnGateway(params: EC2.Types.DetachVpnGatewayRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1795 /**
1796 * Detaches a virtual private gateway from a VPC. You do this if you're planning to turn off the VPC and not use it anymore. You can confirm a virtual private gateway has been completely detached from a VPC by describing the virtual private gateway (any attachments to the virtual private gateway are also described). You must wait for the attachment's state to switch to detached before you can delete the VPC or attach a different VPC to the virtual private gateway.
1797 */
1798 detachVpnGateway(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1799 /**
1800 * Disables the specified resource attachment from propagating routes to the specified propagation route table.
1801 */
1802 disableTransitGatewayRouteTablePropagation(params: EC2.Types.DisableTransitGatewayRouteTablePropagationRequest, callback?: (err: AWSError, data: EC2.Types.DisableTransitGatewayRouteTablePropagationResult) => void): Request<EC2.Types.DisableTransitGatewayRouteTablePropagationResult, AWSError>;
1803 /**
1804 * Disables the specified resource attachment from propagating routes to the specified propagation route table.
1805 */
1806 disableTransitGatewayRouteTablePropagation(callback?: (err: AWSError, data: EC2.Types.DisableTransitGatewayRouteTablePropagationResult) => void): Request<EC2.Types.DisableTransitGatewayRouteTablePropagationResult, AWSError>;
1807 /**
1808 * Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.
1809 */
1810 disableVgwRoutePropagation(params: EC2.Types.DisableVgwRoutePropagationRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1811 /**
1812 * Disables a virtual private gateway (VGW) from propagating routes to a specified route table of a VPC.
1813 */
1814 disableVgwRoutePropagation(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1815 /**
1816 * Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.
1817 */
1818 disableVpcClassicLink(params: EC2.Types.DisableVpcClassicLinkRequest, callback?: (err: AWSError, data: EC2.Types.DisableVpcClassicLinkResult) => void): Request<EC2.Types.DisableVpcClassicLinkResult, AWSError>;
1819 /**
1820 * Disables ClassicLink for a VPC. You cannot disable ClassicLink for a VPC that has EC2-Classic instances linked to it.
1821 */
1822 disableVpcClassicLink(callback?: (err: AWSError, data: EC2.Types.DisableVpcClassicLinkResult) => void): Request<EC2.Types.DisableVpcClassicLinkResult, AWSError>;
1823 /**
1824 * Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to public IP addresses when addressed between a linked EC2-Classic instance and instances in the VPC to which it's linked. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.
1825 */
1826 disableVpcClassicLinkDnsSupport(params: EC2.Types.DisableVpcClassicLinkDnsSupportRequest, callback?: (err: AWSError, data: EC2.Types.DisableVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.DisableVpcClassicLinkDnsSupportResult, AWSError>;
1827 /**
1828 * Disables ClassicLink DNS support for a VPC. If disabled, DNS hostnames resolve to public IP addresses when addressed between a linked EC2-Classic instance and instances in the VPC to which it's linked. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.
1829 */
1830 disableVpcClassicLinkDnsSupport(callback?: (err: AWSError, data: EC2.Types.DisableVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.DisableVpcClassicLinkDnsSupportResult, AWSError>;
1831 /**
1832 * Disassociates an Elastic IP address from the instance or network interface it's associated with. An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide. This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.
1833 */
1834 disassociateAddress(params: EC2.Types.DisassociateAddressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1835 /**
1836 * Disassociates an Elastic IP address from the instance or network interface it's associated with. An Elastic IP address is for use in either the EC2-Classic platform or in a VPC. For more information, see Elastic IP Addresses in the Amazon Elastic Compute Cloud User Guide. This is an idempotent operation. If you perform the operation more than once, Amazon EC2 doesn't return an error.
1837 */
1838 disassociateAddress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1839 /**
1840 * Disassociates a target network from the specified Client VPN endpoint. When you disassociate the last target network from a Client VPN, the following happens: The route that was automatically added for the VPC is deleted All active client connections are terminated New client connections are disallowed The Client VPN endpoint's status changes to pending-associate
1841 */
1842 disassociateClientVpnTargetNetwork(params: EC2.Types.DisassociateClientVpnTargetNetworkRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateClientVpnTargetNetworkResult) => void): Request<EC2.Types.DisassociateClientVpnTargetNetworkResult, AWSError>;
1843 /**
1844 * Disassociates a target network from the specified Client VPN endpoint. When you disassociate the last target network from a Client VPN, the following happens: The route that was automatically added for the VPC is deleted All active client connections are terminated New client connections are disallowed The Client VPN endpoint's status changes to pending-associate
1845 */
1846 disassociateClientVpnTargetNetwork(callback?: (err: AWSError, data: EC2.Types.DisassociateClientVpnTargetNetworkResult) => void): Request<EC2.Types.DisassociateClientVpnTargetNetworkResult, AWSError>;
1847 /**
1848 * Disassociates an IAM instance profile from a running or stopped instance. Use DescribeIamInstanceProfileAssociations to get the association ID.
1849 */
1850 disassociateIamInstanceProfile(params: EC2.Types.DisassociateIamInstanceProfileRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateIamInstanceProfileResult) => void): Request<EC2.Types.DisassociateIamInstanceProfileResult, AWSError>;
1851 /**
1852 * Disassociates an IAM instance profile from a running or stopped instance. Use DescribeIamInstanceProfileAssociations to get the association ID.
1853 */
1854 disassociateIamInstanceProfile(callback?: (err: AWSError, data: EC2.Types.DisassociateIamInstanceProfileResult) => void): Request<EC2.Types.DisassociateIamInstanceProfileResult, AWSError>;
1855 /**
1856 * Disassociates a subnet from a route table. After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.
1857 */
1858 disassociateRouteTable(params: EC2.Types.DisassociateRouteTableRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1859 /**
1860 * Disassociates a subnet from a route table. After you perform this action, the subnet no longer uses the routes in the route table. Instead, it uses the routes in the VPC's main route table. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide.
1861 */
1862 disassociateRouteTable(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1863 /**
1864 * Disassociates a CIDR block from a subnet. Currently, you can disassociate an IPv6 CIDR block only. You must detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate it.
1865 */
1866 disassociateSubnetCidrBlock(params: EC2.Types.DisassociateSubnetCidrBlockRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateSubnetCidrBlockResult) => void): Request<EC2.Types.DisassociateSubnetCidrBlockResult, AWSError>;
1867 /**
1868 * Disassociates a CIDR block from a subnet. Currently, you can disassociate an IPv6 CIDR block only. You must detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate it.
1869 */
1870 disassociateSubnetCidrBlock(callback?: (err: AWSError, data: EC2.Types.DisassociateSubnetCidrBlockResult) => void): Request<EC2.Types.DisassociateSubnetCidrBlockResult, AWSError>;
1871 /**
1872 * Disassociates a resource attachment from a transit gateway route table.
1873 */
1874 disassociateTransitGatewayRouteTable(params: EC2.Types.DisassociateTransitGatewayRouteTableRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateTransitGatewayRouteTableResult) => void): Request<EC2.Types.DisassociateTransitGatewayRouteTableResult, AWSError>;
1875 /**
1876 * Disassociates a resource attachment from a transit gateway route table.
1877 */
1878 disassociateTransitGatewayRouteTable(callback?: (err: AWSError, data: EC2.Types.DisassociateTransitGatewayRouteTableResult) => void): Request<EC2.Types.DisassociateTransitGatewayRouteTableResult, AWSError>;
1879 /**
1880 * Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you must specify its association ID. You can get the association ID by using DescribeVpcs. You must detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate it. You cannot disassociate the CIDR block with which you originally created the VPC (the primary CIDR block).
1881 */
1882 disassociateVpcCidrBlock(params: EC2.Types.DisassociateVpcCidrBlockRequest, callback?: (err: AWSError, data: EC2.Types.DisassociateVpcCidrBlockResult) => void): Request<EC2.Types.DisassociateVpcCidrBlockResult, AWSError>;
1883 /**
1884 * Disassociates a CIDR block from a VPC. To disassociate the CIDR block, you must specify its association ID. You can get the association ID by using DescribeVpcs. You must detach or delete all gateways and resources that are associated with the CIDR block before you can disassociate it. You cannot disassociate the CIDR block with which you originally created the VPC (the primary CIDR block).
1885 */
1886 disassociateVpcCidrBlock(callback?: (err: AWSError, data: EC2.Types.DisassociateVpcCidrBlockResult) => void): Request<EC2.Types.DisassociateVpcCidrBlockResult, AWSError>;
1887 /**
1888 * Enables the specified attachment to propagate routes to the specified propagation route table.
1889 */
1890 enableTransitGatewayRouteTablePropagation(params: EC2.Types.EnableTransitGatewayRouteTablePropagationRequest, callback?: (err: AWSError, data: EC2.Types.EnableTransitGatewayRouteTablePropagationResult) => void): Request<EC2.Types.EnableTransitGatewayRouteTablePropagationResult, AWSError>;
1891 /**
1892 * Enables the specified attachment to propagate routes to the specified propagation route table.
1893 */
1894 enableTransitGatewayRouteTablePropagation(callback?: (err: AWSError, data: EC2.Types.EnableTransitGatewayRouteTablePropagationResult) => void): Request<EC2.Types.EnableTransitGatewayRouteTablePropagationResult, AWSError>;
1895 /**
1896 * Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.
1897 */
1898 enableVgwRoutePropagation(params: EC2.Types.EnableVgwRoutePropagationRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1899 /**
1900 * Enables a virtual private gateway (VGW) to propagate routes to the specified route table of a VPC.
1901 */
1902 enableVgwRoutePropagation(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1903 /**
1904 * Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.
1905 */
1906 enableVolumeIO(params: EC2.Types.EnableVolumeIORequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1907 /**
1908 * Enables I/O operations for a volume that had I/O operations disabled because the data on the volume was potentially inconsistent.
1909 */
1910 enableVolumeIO(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
1911 /**
1912 * Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC route tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.
1913 */
1914 enableVpcClassicLink(params: EC2.Types.EnableVpcClassicLinkRequest, callback?: (err: AWSError, data: EC2.Types.EnableVpcClassicLinkResult) => void): Request<EC2.Types.EnableVpcClassicLinkResult, AWSError>;
1915 /**
1916 * Enables a VPC for ClassicLink. You can then link EC2-Classic instances to your ClassicLink-enabled VPC to allow communication over private IP addresses. You cannot enable your VPC for ClassicLink if any of your VPC route tables have existing routes for address ranges within the 10.0.0.0/8 IP address range, excluding local routes for VPCs in the 10.0.0.0/16 and 10.1.0.0/16 IP address ranges. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.
1917 */
1918 enableVpcClassicLink(callback?: (err: AWSError, data: EC2.Types.EnableVpcClassicLinkResult) => void): Request<EC2.Types.EnableVpcClassicLinkResult, AWSError>;
1919 /**
1920 * Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.
1921 */
1922 enableVpcClassicLinkDnsSupport(params: EC2.Types.EnableVpcClassicLinkDnsSupportRequest, callback?: (err: AWSError, data: EC2.Types.EnableVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.EnableVpcClassicLinkDnsSupportResult, AWSError>;
1923 /**
1924 * Enables a VPC to support DNS hostname resolution for ClassicLink. If enabled, the DNS hostname of a linked EC2-Classic instance resolves to its private IP address when addressed from an instance in the VPC to which it's linked. Similarly, the DNS hostname of an instance in a VPC resolves to its private IP address when addressed from a linked EC2-Classic instance. For more information, see ClassicLink in the Amazon Elastic Compute Cloud User Guide.
1925 */
1926 enableVpcClassicLinkDnsSupport(callback?: (err: AWSError, data: EC2.Types.EnableVpcClassicLinkDnsSupportResult) => void): Request<EC2.Types.EnableVpcClassicLinkDnsSupportResult, AWSError>;
1927 /**
1928 * Downloads the client certificate revocation list for the specified Client VPN endpoint.
1929 */
1930 exportClientVpnClientCertificateRevocationList(params: EC2.Types.ExportClientVpnClientCertificateRevocationListRequest, callback?: (err: AWSError, data: EC2.Types.ExportClientVpnClientCertificateRevocationListResult) => void): Request<EC2.Types.ExportClientVpnClientCertificateRevocationListResult, AWSError>;
1931 /**
1932 * Downloads the client certificate revocation list for the specified Client VPN endpoint.
1933 */
1934 exportClientVpnClientCertificateRevocationList(callback?: (err: AWSError, data: EC2.Types.ExportClientVpnClientCertificateRevocationListResult) => void): Request<EC2.Types.ExportClientVpnClientCertificateRevocationListResult, AWSError>;
1935 /**
1936 * Downloads the contents of the Client VPN endpoint configuration file for the specified Client VPN endpoint. The Client VPN endpoint configuration file includes the Client VPN endpoint and certificate information clients need to establish a connection with the Client VPN endpoint.
1937 */
1938 exportClientVpnClientConfiguration(params: EC2.Types.ExportClientVpnClientConfigurationRequest, callback?: (err: AWSError, data: EC2.Types.ExportClientVpnClientConfigurationResult) => void): Request<EC2.Types.ExportClientVpnClientConfigurationResult, AWSError>;
1939 /**
1940 * Downloads the contents of the Client VPN endpoint configuration file for the specified Client VPN endpoint. The Client VPN endpoint configuration file includes the Client VPN endpoint and certificate information clients need to establish a connection with the Client VPN endpoint.
1941 */
1942 exportClientVpnClientConfiguration(callback?: (err: AWSError, data: EC2.Types.ExportClientVpnClientConfigurationResult) => void): Request<EC2.Types.ExportClientVpnClientConfigurationResult, AWSError>;
1943 /**
1944 * Exports routes from the specified transit gateway route table to the specified S3 bucket. By default, all routes are exported. Alternatively, you can filter by CIDR range.
1945 */
1946 exportTransitGatewayRoutes(params: EC2.Types.ExportTransitGatewayRoutesRequest, callback?: (err: AWSError, data: EC2.Types.ExportTransitGatewayRoutesResult) => void): Request<EC2.Types.ExportTransitGatewayRoutesResult, AWSError>;
1947 /**
1948 * Exports routes from the specified transit gateway route table to the specified S3 bucket. By default, all routes are exported. Alternatively, you can filter by CIDR range.
1949 */
1950 exportTransitGatewayRoutes(callback?: (err: AWSError, data: EC2.Types.ExportTransitGatewayRoutesResult) => void): Request<EC2.Types.ExportTransitGatewayRoutesResult, AWSError>;
1951 /**
1952 * Gets the console output for the specified instance. For Linux instances, the instance console output displays the exact console output that would normally be displayed on a physical monitor attached to a computer. For Windows instances, the instance console output includes the last three system event log errors. By default, the console output returns buffered information that was posted shortly after an instance transition state (start, stop, reboot, or terminate). This information is available for at least one hour after the most recent post. Only the most recent 64 KB of console output is available. You can optionally retrieve the latest serial console output at any time during the instance lifecycle. This option is supported on instance types that use the Nitro hypervisor. For more information, see Instance Console Output in the Amazon Elastic Compute Cloud User Guide.
1953 */
1954 getConsoleOutput(params: EC2.Types.GetConsoleOutputRequest, callback?: (err: AWSError, data: EC2.Types.GetConsoleOutputResult) => void): Request<EC2.Types.GetConsoleOutputResult, AWSError>;
1955 /**
1956 * Gets the console output for the specified instance. For Linux instances, the instance console output displays the exact console output that would normally be displayed on a physical monitor attached to a computer. For Windows instances, the instance console output includes the last three system event log errors. By default, the console output returns buffered information that was posted shortly after an instance transition state (start, stop, reboot, or terminate). This information is available for at least one hour after the most recent post. Only the most recent 64 KB of console output is available. You can optionally retrieve the latest serial console output at any time during the instance lifecycle. This option is supported on instance types that use the Nitro hypervisor. For more information, see Instance Console Output in the Amazon Elastic Compute Cloud User Guide.
1957 */
1958 getConsoleOutput(callback?: (err: AWSError, data: EC2.Types.GetConsoleOutputResult) => void): Request<EC2.Types.GetConsoleOutputResult, AWSError>;
1959 /**
1960 * Retrieve a JPG-format screenshot of a running instance to help with troubleshooting. The returned content is Base64-encoded.
1961 */
1962 getConsoleScreenshot(params: EC2.Types.GetConsoleScreenshotRequest, callback?: (err: AWSError, data: EC2.Types.GetConsoleScreenshotResult) => void): Request<EC2.Types.GetConsoleScreenshotResult, AWSError>;
1963 /**
1964 * Retrieve a JPG-format screenshot of a running instance to help with troubleshooting. The returned content is Base64-encoded.
1965 */
1966 getConsoleScreenshot(callback?: (err: AWSError, data: EC2.Types.GetConsoleScreenshotResult) => void): Request<EC2.Types.GetConsoleScreenshotResult, AWSError>;
1967 /**
1968 * Preview a reservation purchase with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation. This is a preview of the PurchaseHostReservation action and does not result in the offering being purchased.
1969 */
1970 getHostReservationPurchasePreview(params: EC2.Types.GetHostReservationPurchasePreviewRequest, callback?: (err: AWSError, data: EC2.Types.GetHostReservationPurchasePreviewResult) => void): Request<EC2.Types.GetHostReservationPurchasePreviewResult, AWSError>;
1971 /**
1972 * Preview a reservation purchase with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation. This is a preview of the PurchaseHostReservation action and does not result in the offering being purchased.
1973 */
1974 getHostReservationPurchasePreview(callback?: (err: AWSError, data: EC2.Types.GetHostReservationPurchasePreviewResult) => void): Request<EC2.Types.GetHostReservationPurchasePreviewResult, AWSError>;
1975 /**
1976 * Retrieves the configuration data of the specified instance. You can use this data to create a launch template.
1977 */
1978 getLaunchTemplateData(params: EC2.Types.GetLaunchTemplateDataRequest, callback?: (err: AWSError, data: EC2.Types.GetLaunchTemplateDataResult) => void): Request<EC2.Types.GetLaunchTemplateDataResult, AWSError>;
1979 /**
1980 * Retrieves the configuration data of the specified instance. You can use this data to create a launch template.
1981 */
1982 getLaunchTemplateData(callback?: (err: AWSError, data: EC2.Types.GetLaunchTemplateDataResult) => void): Request<EC2.Types.GetLaunchTemplateDataResult, AWSError>;
1983 /**
1984 * Retrieves the encrypted administrator password for a running Windows instance. The Windows password is generated at boot by the EC2Config service or EC2Launch scripts (Windows Server 2016 and later). This usually only happens the first time an instance is launched. For more information, see EC2Config and EC2Launch in the Amazon Elastic Compute Cloud User Guide. For the EC2Config service, the password is not generated for rebundled AMIs unless Ec2SetPassword is enabled before bundling. The password is encrypted using the key pair that you specified when you launched the instance. You must provide the corresponding key pair file. When you launch an instance, password generation and encryption may take a few minutes. If you try to retrieve the password before it's available, the output returns an empty string. We recommend that you wait up to 15 minutes after launching an instance before trying to retrieve the generated password.
1985 */
1986 getPasswordData(params: EC2.Types.GetPasswordDataRequest, callback?: (err: AWSError, data: EC2.Types.GetPasswordDataResult) => void): Request<EC2.Types.GetPasswordDataResult, AWSError>;
1987 /**
1988 * Retrieves the encrypted administrator password for a running Windows instance. The Windows password is generated at boot by the EC2Config service or EC2Launch scripts (Windows Server 2016 and later). This usually only happens the first time an instance is launched. For more information, see EC2Config and EC2Launch in the Amazon Elastic Compute Cloud User Guide. For the EC2Config service, the password is not generated for rebundled AMIs unless Ec2SetPassword is enabled before bundling. The password is encrypted using the key pair that you specified when you launched the instance. You must provide the corresponding key pair file. When you launch an instance, password generation and encryption may take a few minutes. If you try to retrieve the password before it's available, the output returns an empty string. We recommend that you wait up to 15 minutes after launching an instance before trying to retrieve the generated password.
1989 */
1990 getPasswordData(callback?: (err: AWSError, data: EC2.Types.GetPasswordDataResult) => void): Request<EC2.Types.GetPasswordDataResult, AWSError>;
1991 /**
1992 * Returns a quote and exchange information for exchanging one or more specified Convertible Reserved Instances for a new Convertible Reserved Instance. If the exchange cannot be performed, the reason is returned in the response. Use AcceptReservedInstancesExchangeQuote to perform the exchange.
1993 */
1994 getReservedInstancesExchangeQuote(params: EC2.Types.GetReservedInstancesExchangeQuoteRequest, callback?: (err: AWSError, data: EC2.Types.GetReservedInstancesExchangeQuoteResult) => void): Request<EC2.Types.GetReservedInstancesExchangeQuoteResult, AWSError>;
1995 /**
1996 * Returns a quote and exchange information for exchanging one or more specified Convertible Reserved Instances for a new Convertible Reserved Instance. If the exchange cannot be performed, the reason is returned in the response. Use AcceptReservedInstancesExchangeQuote to perform the exchange.
1997 */
1998 getReservedInstancesExchangeQuote(callback?: (err: AWSError, data: EC2.Types.GetReservedInstancesExchangeQuoteResult) => void): Request<EC2.Types.GetReservedInstancesExchangeQuoteResult, AWSError>;
1999 /**
2000 * Lists the route tables to which the specified resource attachment propagates routes.
2001 */
2002 getTransitGatewayAttachmentPropagations(params: EC2.Types.GetTransitGatewayAttachmentPropagationsRequest, callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayAttachmentPropagationsResult) => void): Request<EC2.Types.GetTransitGatewayAttachmentPropagationsResult, AWSError>;
2003 /**
2004 * Lists the route tables to which the specified resource attachment propagates routes.
2005 */
2006 getTransitGatewayAttachmentPropagations(callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayAttachmentPropagationsResult) => void): Request<EC2.Types.GetTransitGatewayAttachmentPropagationsResult, AWSError>;
2007 /**
2008 * Gets information about the associations for the specified transit gateway route table.
2009 */
2010 getTransitGatewayRouteTableAssociations(params: EC2.Types.GetTransitGatewayRouteTableAssociationsRequest, callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayRouteTableAssociationsResult) => void): Request<EC2.Types.GetTransitGatewayRouteTableAssociationsResult, AWSError>;
2011 /**
2012 * Gets information about the associations for the specified transit gateway route table.
2013 */
2014 getTransitGatewayRouteTableAssociations(callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayRouteTableAssociationsResult) => void): Request<EC2.Types.GetTransitGatewayRouteTableAssociationsResult, AWSError>;
2015 /**
2016 * Gets information about the route table propagations for the specified transit gateway route table.
2017 */
2018 getTransitGatewayRouteTablePropagations(params: EC2.Types.GetTransitGatewayRouteTablePropagationsRequest, callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayRouteTablePropagationsResult) => void): Request<EC2.Types.GetTransitGatewayRouteTablePropagationsResult, AWSError>;
2019 /**
2020 * Gets information about the route table propagations for the specified transit gateway route table.
2021 */
2022 getTransitGatewayRouteTablePropagations(callback?: (err: AWSError, data: EC2.Types.GetTransitGatewayRouteTablePropagationsResult) => void): Request<EC2.Types.GetTransitGatewayRouteTablePropagationsResult, AWSError>;
2023 /**
2024 * Uploads a client certificate revocation list to the specified Client VPN endpoint. Uploading a client certificate revocation list overwrites the existing client certificate revocation list. Uploading a client certificate revocation list resets existing client connections.
2025 */
2026 importClientVpnClientCertificateRevocationList(params: EC2.Types.ImportClientVpnClientCertificateRevocationListRequest, callback?: (err: AWSError, data: EC2.Types.ImportClientVpnClientCertificateRevocationListResult) => void): Request<EC2.Types.ImportClientVpnClientCertificateRevocationListResult, AWSError>;
2027 /**
2028 * Uploads a client certificate revocation list to the specified Client VPN endpoint. Uploading a client certificate revocation list overwrites the existing client certificate revocation list. Uploading a client certificate revocation list resets existing client connections.
2029 */
2030 importClientVpnClientCertificateRevocationList(callback?: (err: AWSError, data: EC2.Types.ImportClientVpnClientCertificateRevocationListResult) => void): Request<EC2.Types.ImportClientVpnClientCertificateRevocationListResult, AWSError>;
2031 /**
2032 * Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI). For more information, see Importing a VM as an Image Using VM Import/Export in the VM Import/Export User Guide.
2033 */
2034 importImage(params: EC2.Types.ImportImageRequest, callback?: (err: AWSError, data: EC2.Types.ImportImageResult) => void): Request<EC2.Types.ImportImageResult, AWSError>;
2035 /**
2036 * Import single or multi-volume disk images or EBS snapshots into an Amazon Machine Image (AMI). For more information, see Importing a VM as an Image Using VM Import/Export in the VM Import/Export User Guide.
2037 */
2038 importImage(callback?: (err: AWSError, data: EC2.Types.ImportImageResult) => void): Request<EC2.Types.ImportImageResult, AWSError>;
2039 /**
2040 * Creates an import instance task using metadata from the specified disk image. ImportInstance only supports single-volume VMs. To import multi-volume VMs, use ImportImage. For more information, see Importing a Virtual Machine Using the Amazon EC2 CLI. For information about the import manifest referenced by this API action, see VM Import Manifest.
2041 */
2042 importInstance(params: EC2.Types.ImportInstanceRequest, callback?: (err: AWSError, data: EC2.Types.ImportInstanceResult) => void): Request<EC2.Types.ImportInstanceResult, AWSError>;
2043 /**
2044 * Creates an import instance task using metadata from the specified disk image. ImportInstance only supports single-volume VMs. To import multi-volume VMs, use ImportImage. For more information, see Importing a Virtual Machine Using the Amazon EC2 CLI. For information about the import manifest referenced by this API action, see VM Import Manifest.
2045 */
2046 importInstance(callback?: (err: AWSError, data: EC2.Types.ImportInstanceResult) => void): Request<EC2.Types.ImportInstanceResult, AWSError>;
2047 /**
2048 * Imports the public key from an RSA key pair that you created with a third-party tool. Compare this with CreateKeyPair, in which AWS creates the key pair and gives the keys to you (AWS keeps a copy of the public key). With ImportKeyPair, you create the key pair and give AWS just the public key. The private key is never transferred between you and AWS. For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.
2049 */
2050 importKeyPair(params: EC2.Types.ImportKeyPairRequest, callback?: (err: AWSError, data: EC2.Types.ImportKeyPairResult) => void): Request<EC2.Types.ImportKeyPairResult, AWSError>;
2051 /**
2052 * Imports the public key from an RSA key pair that you created with a third-party tool. Compare this with CreateKeyPair, in which AWS creates the key pair and gives the keys to you (AWS keeps a copy of the public key). With ImportKeyPair, you create the key pair and give AWS just the public key. The private key is never transferred between you and AWS. For more information about key pairs, see Key Pairs in the Amazon Elastic Compute Cloud User Guide.
2053 */
2054 importKeyPair(callback?: (err: AWSError, data: EC2.Types.ImportKeyPairResult) => void): Request<EC2.Types.ImportKeyPairResult, AWSError>;
2055 /**
2056 * Imports a disk into an EBS snapshot.
2057 */
2058 importSnapshot(params: EC2.Types.ImportSnapshotRequest, callback?: (err: AWSError, data: EC2.Types.ImportSnapshotResult) => void): Request<EC2.Types.ImportSnapshotResult, AWSError>;
2059 /**
2060 * Imports a disk into an EBS snapshot.
2061 */
2062 importSnapshot(callback?: (err: AWSError, data: EC2.Types.ImportSnapshotResult) => void): Request<EC2.Types.ImportSnapshotResult, AWSError>;
2063 /**
2064 * Creates an import volume task using metadata from the specified disk image.For more information, see Importing Disks to Amazon EBS. For information about the import manifest referenced by this API action, see VM Import Manifest.
2065 */
2066 importVolume(params: EC2.Types.ImportVolumeRequest, callback?: (err: AWSError, data: EC2.Types.ImportVolumeResult) => void): Request<EC2.Types.ImportVolumeResult, AWSError>;
2067 /**
2068 * Creates an import volume task using metadata from the specified disk image.For more information, see Importing Disks to Amazon EBS. For information about the import manifest referenced by this API action, see VM Import Manifest.
2069 */
2070 importVolume(callback?: (err: AWSError, data: EC2.Types.ImportVolumeResult) => void): Request<EC2.Types.ImportVolumeResult, AWSError>;
2071 /**
2072 * Modifies a Capacity Reservation's capacity and the conditions under which it is to be released. You cannot change a Capacity Reservation's instance type, EBS optimization, instance store settings, platform, Availability Zone, or instance eligibility. If you need to modify any of these attributes, we recommend that you cancel the Capacity Reservation, and then create a new one with the required attributes.
2073 */
2074 modifyCapacityReservation(params: EC2.Types.ModifyCapacityReservationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyCapacityReservationResult) => void): Request<EC2.Types.ModifyCapacityReservationResult, AWSError>;
2075 /**
2076 * Modifies a Capacity Reservation's capacity and the conditions under which it is to be released. You cannot change a Capacity Reservation's instance type, EBS optimization, instance store settings, platform, Availability Zone, or instance eligibility. If you need to modify any of these attributes, we recommend that you cancel the Capacity Reservation, and then create a new one with the required attributes.
2077 */
2078 modifyCapacityReservation(callback?: (err: AWSError, data: EC2.Types.ModifyCapacityReservationResult) => void): Request<EC2.Types.ModifyCapacityReservationResult, AWSError>;
2079 /**
2080 * Modifies the specified Client VPN endpoint. You can only modify an endpoint's server certificate information, client connection logging information, DNS server, and description. Modifying the DNS server resets existing client connections.
2081 */
2082 modifyClientVpnEndpoint(params: EC2.Types.ModifyClientVpnEndpointRequest, callback?: (err: AWSError, data: EC2.Types.ModifyClientVpnEndpointResult) => void): Request<EC2.Types.ModifyClientVpnEndpointResult, AWSError>;
2083 /**
2084 * Modifies the specified Client VPN endpoint. You can only modify an endpoint's server certificate information, client connection logging information, DNS server, and description. Modifying the DNS server resets existing client connections.
2085 */
2086 modifyClientVpnEndpoint(callback?: (err: AWSError, data: EC2.Types.ModifyClientVpnEndpointResult) => void): Request<EC2.Types.ModifyClientVpnEndpointResult, AWSError>;
2087 /**
2088 * Modifies the specified EC2 Fleet. While the EC2 Fleet is being modified, it is in the modifying state.
2089 */
2090 modifyFleet(params: EC2.Types.ModifyFleetRequest, callback?: (err: AWSError, data: EC2.Types.ModifyFleetResult) => void): Request<EC2.Types.ModifyFleetResult, AWSError>;
2091 /**
2092 * Modifies the specified EC2 Fleet. While the EC2 Fleet is being modified, it is in the modifying state.
2093 */
2094 modifyFleet(callback?: (err: AWSError, data: EC2.Types.ModifyFleetResult) => void): Request<EC2.Types.ModifyFleetResult, AWSError>;
2095 /**
2096 * Modifies the specified attribute of the specified Amazon FPGA Image (AFI).
2097 */
2098 modifyFpgaImageAttribute(params: EC2.Types.ModifyFpgaImageAttributeRequest, callback?: (err: AWSError, data: EC2.Types.ModifyFpgaImageAttributeResult) => void): Request<EC2.Types.ModifyFpgaImageAttributeResult, AWSError>;
2099 /**
2100 * Modifies the specified attribute of the specified Amazon FPGA Image (AFI).
2101 */
2102 modifyFpgaImageAttribute(callback?: (err: AWSError, data: EC2.Types.ModifyFpgaImageAttributeResult) => void): Request<EC2.Types.ModifyFpgaImageAttributeResult, AWSError>;
2103 /**
2104 * Modify the auto-placement setting of a Dedicated Host. When auto-placement is enabled, any instances that you launch with a tenancy of host but without a specific host ID are placed onto any available Dedicated Host in your account that has auto-placement enabled. When auto-placement is disabled, you need to provide a host ID to have the instance launch onto a specific host. If no host ID is provided, the instance is launched onto a suitable host with auto-placement enabled.
2105 */
2106 modifyHosts(params: EC2.Types.ModifyHostsRequest, callback?: (err: AWSError, data: EC2.Types.ModifyHostsResult) => void): Request<EC2.Types.ModifyHostsResult, AWSError>;
2107 /**
2108 * Modify the auto-placement setting of a Dedicated Host. When auto-placement is enabled, any instances that you launch with a tenancy of host but without a specific host ID are placed onto any available Dedicated Host in your account that has auto-placement enabled. When auto-placement is disabled, you need to provide a host ID to have the instance launch onto a specific host. If no host ID is provided, the instance is launched onto a suitable host with auto-placement enabled.
2109 */
2110 modifyHosts(callback?: (err: AWSError, data: EC2.Types.ModifyHostsResult) => void): Request<EC2.Types.ModifyHostsResult, AWSError>;
2111 /**
2112 * Modifies the ID format for the specified resource on a per-region basis. You can specify that resources should receive longer IDs (17-character IDs) when they are created. This request can only be used to modify longer ID settings for resource types that are within the opt-in period. Resources currently in their opt-in period include: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | route-table | route-table-association | security-group | subnet | subnet-cidr-block-association | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. This setting applies to the IAM user who makes the request; it does not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user. If you're using this action as the root user, then these settings apply to the entire account, unless an IAM user explicitly overrides these settings for themselves. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide. Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.
2113 */
2114 modifyIdFormat(params: EC2.Types.ModifyIdFormatRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2115 /**
2116 * Modifies the ID format for the specified resource on a per-region basis. You can specify that resources should receive longer IDs (17-character IDs) when they are created. This request can only be used to modify longer ID settings for resource types that are within the opt-in period. Resources currently in their opt-in period include: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | route-table | route-table-association | security-group | subnet | subnet-cidr-block-association | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. This setting applies to the IAM user who makes the request; it does not apply to the entire AWS account. By default, an IAM user defaults to the same settings as the root user. If you're using this action as the root user, then these settings apply to the entire account, unless an IAM user explicitly overrides these settings for themselves. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide. Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.
2117 */
2118 modifyIdFormat(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2119 /**
2120 * Modifies the ID format of a resource for a specified IAM user, IAM role, or the root user for an account; or all IAM users, IAM roles, and the root user for an account. You can specify that resources should receive longer IDs (17-character IDs) when they are created. This request can only be used to modify longer ID settings for resource types that are within the opt-in period. Resources currently in their opt-in period include: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | route-table | route-table-association | security-group | subnet | subnet-cidr-block-association | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide. This setting applies to the principal specified in the request; it does not apply to the principal that makes the request. Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.
2121 */
2122 modifyIdentityIdFormat(params: EC2.Types.ModifyIdentityIdFormatRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2123 /**
2124 * Modifies the ID format of a resource for a specified IAM user, IAM role, or the root user for an account; or all IAM users, IAM roles, and the root user for an account. You can specify that resources should receive longer IDs (17-character IDs) when they are created. This request can only be used to modify longer ID settings for resource types that are within the opt-in period. Resources currently in their opt-in period include: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | route-table | route-table-association | security-group | subnet | subnet-cidr-block-association | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. For more information, see Resource IDs in the Amazon Elastic Compute Cloud User Guide. This setting applies to the principal specified in the request; it does not apply to the principal that makes the request. Resources created with longer IDs are visible to all IAM roles and users, regardless of these settings and provided that they have permission to use the relevant Describe command for the resource type.
2125 */
2126 modifyIdentityIdFormat(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2127 /**
2128 * Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time. You can use the Attribute parameter to specify the attribute or one of the following parameters: Description, LaunchPermission, or ProductCode. AWS Marketplace product codes cannot be modified. Images with an AWS Marketplace product code cannot be made public. To enable the SriovNetSupport enhanced networking attribute of an image, enable SriovNetSupport on an instance and create an AMI from the instance.
2129 */
2130 modifyImageAttribute(params: EC2.Types.ModifyImageAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2131 /**
2132 * Modifies the specified attribute of the specified AMI. You can specify only one attribute at a time. You can use the Attribute parameter to specify the attribute or one of the following parameters: Description, LaunchPermission, or ProductCode. AWS Marketplace product codes cannot be modified. Images with an AWS Marketplace product code cannot be made public. To enable the SriovNetSupport enhanced networking attribute of an image, enable SriovNetSupport on an instance and create an AMI from the instance.
2133 */
2134 modifyImageAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2135 /**
2136 * Modifies the specified attribute of the specified instance. You can specify only one attribute at a time. Note: Using this action to change the security groups associated with an elastic network interface (ENI) attached to an instance in a VPC can result in an error if the instance has more than one ENI. To change the security groups associated with an ENI attached to an instance that has multiple ENIs, we recommend that you use the ModifyNetworkInterfaceAttribute action. To modify some attributes, the instance must be stopped. For more information, see Modifying Attributes of a Stopped Instance in the Amazon Elastic Compute Cloud User Guide.
2137 */
2138 modifyInstanceAttribute(params: EC2.Types.ModifyInstanceAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2139 /**
2140 * Modifies the specified attribute of the specified instance. You can specify only one attribute at a time. Note: Using this action to change the security groups associated with an elastic network interface (ENI) attached to an instance in a VPC can result in an error if the instance has more than one ENI. To change the security groups associated with an ENI attached to an instance that has multiple ENIs, we recommend that you use the ModifyNetworkInterfaceAttribute action. To modify some attributes, the instance must be stopped. For more information, see Modifying Attributes of a Stopped Instance in the Amazon Elastic Compute Cloud User Guide.
2141 */
2142 modifyInstanceAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2143 /**
2144 * Modifies the Capacity Reservation settings for a stopped instance. Use this action to configure an instance to target a specific Capacity Reservation, run in any open Capacity Reservation with matching attributes, or run On-Demand Instance capacity.
2145 */
2146 modifyInstanceCapacityReservationAttributes(params: EC2.Types.ModifyInstanceCapacityReservationAttributesRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstanceCapacityReservationAttributesResult) => void): Request<EC2.Types.ModifyInstanceCapacityReservationAttributesResult, AWSError>;
2147 /**
2148 * Modifies the Capacity Reservation settings for a stopped instance. Use this action to configure an instance to target a specific Capacity Reservation, run in any open Capacity Reservation with matching attributes, or run On-Demand Instance capacity.
2149 */
2150 modifyInstanceCapacityReservationAttributes(callback?: (err: AWSError, data: EC2.Types.ModifyInstanceCapacityReservationAttributesResult) => void): Request<EC2.Types.ModifyInstanceCapacityReservationAttributesResult, AWSError>;
2151 /**
2152 * Modifies the credit option for CPU usage on a running or stopped T2 or T3 instance. The credit options are standard and unlimited. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
2153 */
2154 modifyInstanceCreditSpecification(params: EC2.Types.ModifyInstanceCreditSpecificationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstanceCreditSpecificationResult) => void): Request<EC2.Types.ModifyInstanceCreditSpecificationResult, AWSError>;
2155 /**
2156 * Modifies the credit option for CPU usage on a running or stopped T2 or T3 instance. The credit options are standard and unlimited. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide.
2157 */
2158 modifyInstanceCreditSpecification(callback?: (err: AWSError, data: EC2.Types.ModifyInstanceCreditSpecificationResult) => void): Request<EC2.Types.ModifyInstanceCreditSpecificationResult, AWSError>;
2159 /**
2160 * Modifies the start time for a scheduled Amazon EC2 instance event.
2161 */
2162 modifyInstanceEventStartTime(params: EC2.Types.ModifyInstanceEventStartTimeRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstanceEventStartTimeResult) => void): Request<EC2.Types.ModifyInstanceEventStartTimeResult, AWSError>;
2163 /**
2164 * Modifies the start time for a scheduled Amazon EC2 instance event.
2165 */
2166 modifyInstanceEventStartTime(callback?: (err: AWSError, data: EC2.Types.ModifyInstanceEventStartTimeResult) => void): Request<EC2.Types.ModifyInstanceEventStartTimeResult, AWSError>;
2167 /**
2168 * Modifies the placement attributes for a specified instance. You can do the following: Modify the affinity between an instance and a Dedicated Host. When affinity is set to host and the instance is not associated with a specific Dedicated Host, the next time the instance is launched, it is automatically associated with the host on which it lands. If the instance is restarted or rebooted, this relationship persists. Change the Dedicated Host with which an instance is associated. Change the instance tenancy of an instance from host to dedicated, or from dedicated to host. Move an instance to or from a placement group. At least one attribute for affinity, host ID, tenancy, or placement group name must be specified in the request. Affinity and tenancy can be modified in the same request. To modify the host ID, tenancy, placement group, or partition for an instance, the instance must be in the stopped state.
2169 */
2170 modifyInstancePlacement(params: EC2.Types.ModifyInstancePlacementRequest, callback?: (err: AWSError, data: EC2.Types.ModifyInstancePlacementResult) => void): Request<EC2.Types.ModifyInstancePlacementResult, AWSError>;
2171 /**
2172 * Modifies the placement attributes for a specified instance. You can do the following: Modify the affinity between an instance and a Dedicated Host. When affinity is set to host and the instance is not associated with a specific Dedicated Host, the next time the instance is launched, it is automatically associated with the host on which it lands. If the instance is restarted or rebooted, this relationship persists. Change the Dedicated Host with which an instance is associated. Change the instance tenancy of an instance from host to dedicated, or from dedicated to host. Move an instance to or from a placement group. At least one attribute for affinity, host ID, tenancy, or placement group name must be specified in the request. Affinity and tenancy can be modified in the same request. To modify the host ID, tenancy, placement group, or partition for an instance, the instance must be in the stopped state.
2173 */
2174 modifyInstancePlacement(callback?: (err: AWSError, data: EC2.Types.ModifyInstancePlacementResult) => void): Request<EC2.Types.ModifyInstancePlacementResult, AWSError>;
2175 /**
2176 * Modifies a launch template. You can specify which version of the launch template to set as the default version. When launching an instance, the default version applies when a launch template version is not specified.
2177 */
2178 modifyLaunchTemplate(params: EC2.Types.ModifyLaunchTemplateRequest, callback?: (err: AWSError, data: EC2.Types.ModifyLaunchTemplateResult) => void): Request<EC2.Types.ModifyLaunchTemplateResult, AWSError>;
2179 /**
2180 * Modifies a launch template. You can specify which version of the launch template to set as the default version. When launching an instance, the default version applies when a launch template version is not specified.
2181 */
2182 modifyLaunchTemplate(callback?: (err: AWSError, data: EC2.Types.ModifyLaunchTemplateResult) => void): Request<EC2.Types.ModifyLaunchTemplateResult, AWSError>;
2183 /**
2184 * Modifies the specified network interface attribute. You can specify only one attribute at a time. You can use this action to attach and detach security groups from an existing EC2 instance.
2185 */
2186 modifyNetworkInterfaceAttribute(params: EC2.Types.ModifyNetworkInterfaceAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2187 /**
2188 * Modifies the specified network interface attribute. You can specify only one attribute at a time. You can use this action to attach and detach security groups from an existing EC2 instance.
2189 */
2190 modifyNetworkInterfaceAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2191 /**
2192 * Modifies the Availability Zone, instance count, instance type, or network platform (EC2-Classic or EC2-VPC) of your Reserved Instances. The Reserved Instances to be modified must be identical, except for Availability Zone, network platform, and instance type. For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.
2193 */
2194 modifyReservedInstances(params: EC2.Types.ModifyReservedInstancesRequest, callback?: (err: AWSError, data: EC2.Types.ModifyReservedInstancesResult) => void): Request<EC2.Types.ModifyReservedInstancesResult, AWSError>;
2195 /**
2196 * Modifies the Availability Zone, instance count, instance type, or network platform (EC2-Classic or EC2-VPC) of your Reserved Instances. The Reserved Instances to be modified must be identical, except for Availability Zone, network platform, and instance type. For more information, see Modifying Reserved Instances in the Amazon Elastic Compute Cloud User Guide.
2197 */
2198 modifyReservedInstances(callback?: (err: AWSError, data: EC2.Types.ModifyReservedInstancesResult) => void): Request<EC2.Types.ModifyReservedInstancesResult, AWSError>;
2199 /**
2200 * Adds or removes permission settings for the specified snapshot. You may add or remove specified AWS account IDs from a snapshot's list of create volume permissions, but you cannot do both in a single API call. If you need to both add and remove account IDs for a snapshot, you must use multiple API calls. Encrypted snapshots and snapshots with AWS Marketplace product codes cannot be made public. Snapshots encrypted with your default CMK cannot be shared with other accounts. For more information about modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.
2201 */
2202 modifySnapshotAttribute(params: EC2.Types.ModifySnapshotAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2203 /**
2204 * Adds or removes permission settings for the specified snapshot. You may add or remove specified AWS account IDs from a snapshot's list of create volume permissions, but you cannot do both in a single API call. If you need to both add and remove account IDs for a snapshot, you must use multiple API calls. Encrypted snapshots and snapshots with AWS Marketplace product codes cannot be made public. Snapshots encrypted with your default CMK cannot be shared with other accounts. For more information about modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.
2205 */
2206 modifySnapshotAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2207 /**
2208 * Modifies the specified Spot Fleet request. While the Spot Fleet request is being modified, it is in the modifying state. To scale up your Spot Fleet, increase its target capacity. The Spot Fleet launches the additional Spot Instances according to the allocation strategy for the Spot Fleet request. If the allocation strategy is lowestPrice, the Spot Fleet launches instances using the Spot pool with the lowest price. If the allocation strategy is diversified, the Spot Fleet distributes the instances across the Spot pools. To scale down your Spot Fleet, decrease its target capacity. First, the Spot Fleet cancels any open requests that exceed the new target capacity. You can request that the Spot Fleet terminate Spot Instances until the size of the fleet no longer exceeds the new target capacity. If the allocation strategy is lowestPrice, the Spot Fleet terminates the instances with the highest price per unit. If the allocation strategy is diversified, the Spot Fleet terminates instances across the Spot pools. Alternatively, you can request that the Spot Fleet keep the fleet at its current size, but not replace any Spot Instances that are interrupted or that you terminate manually. If you are finished with your Spot Fleet for now, but will use it again later, you can set the target capacity to 0.
2209 */
2210 modifySpotFleetRequest(params: EC2.Types.ModifySpotFleetRequestRequest, callback?: (err: AWSError, data: EC2.Types.ModifySpotFleetRequestResponse) => void): Request<EC2.Types.ModifySpotFleetRequestResponse, AWSError>;
2211 /**
2212 * Modifies the specified Spot Fleet request. While the Spot Fleet request is being modified, it is in the modifying state. To scale up your Spot Fleet, increase its target capacity. The Spot Fleet launches the additional Spot Instances according to the allocation strategy for the Spot Fleet request. If the allocation strategy is lowestPrice, the Spot Fleet launches instances using the Spot pool with the lowest price. If the allocation strategy is diversified, the Spot Fleet distributes the instances across the Spot pools. To scale down your Spot Fleet, decrease its target capacity. First, the Spot Fleet cancels any open requests that exceed the new target capacity. You can request that the Spot Fleet terminate Spot Instances until the size of the fleet no longer exceeds the new target capacity. If the allocation strategy is lowestPrice, the Spot Fleet terminates the instances with the highest price per unit. If the allocation strategy is diversified, the Spot Fleet terminates instances across the Spot pools. Alternatively, you can request that the Spot Fleet keep the fleet at its current size, but not replace any Spot Instances that are interrupted or that you terminate manually. If you are finished with your Spot Fleet for now, but will use it again later, you can set the target capacity to 0.
2213 */
2214 modifySpotFleetRequest(callback?: (err: AWSError, data: EC2.Types.ModifySpotFleetRequestResponse) => void): Request<EC2.Types.ModifySpotFleetRequestResponse, AWSError>;
2215 /**
2216 * Modifies a subnet attribute. You can only modify one attribute at a time.
2217 */
2218 modifySubnetAttribute(params: EC2.Types.ModifySubnetAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2219 /**
2220 * Modifies a subnet attribute. You can only modify one attribute at a time.
2221 */
2222 modifySubnetAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2223 /**
2224 * Modifies the specified VPC attachment.
2225 */
2226 modifyTransitGatewayVpcAttachment(params: EC2.Types.ModifyTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.ModifyTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.ModifyTransitGatewayVpcAttachmentResult, AWSError>;
2227 /**
2228 * Modifies the specified VPC attachment.
2229 */
2230 modifyTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.ModifyTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.ModifyTransitGatewayVpcAttachmentResult, AWSError>;
2231 /**
2232 * You can modify several parameters of an existing EBS volume, including volume size, volume type, and IOPS capacity. If your EBS volume is attached to a current-generation EC2 instance type, you may be able to apply these changes without stopping the instance or detaching the volume from it. For more information about modifying an EBS volume running Linux, see Modifying the Size, IOPS, or Type of an EBS Volume on Linux. For more information about modifying an EBS volume running Windows, see Modifying the Size, IOPS, or Type of an EBS Volume on Windows. When you complete a resize operation on your volume, you need to extend the volume's file-system size to take advantage of the new storage capacity. For information about extending a Linux file system, see Extending a Linux File System. For information about extending a Windows file system, see Extending a Windows File System. You can use CloudWatch Events to check the status of a modification to an EBS volume. For information about CloudWatch Events, see the Amazon CloudWatch Events User Guide. You can also track the status of a modification using the DescribeVolumesModifications API. For information about tracking status changes using either method, see Monitoring Volume Modifications. With previous-generation instance types, resizing an EBS volume may require detaching and reattaching the volume or stopping and restarting the instance. For more information, see Modifying the Size, IOPS, or Type of an EBS Volume on Linux and Modifying the Size, IOPS, or Type of an EBS Volume on Windows. If you reach the maximum volume modification rate per volume limit, you will need to wait at least six hours before applying further modifications to the affected EBS volume.
2233 */
2234 modifyVolume(params: EC2.Types.ModifyVolumeRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVolumeResult) => void): Request<EC2.Types.ModifyVolumeResult, AWSError>;
2235 /**
2236 * You can modify several parameters of an existing EBS volume, including volume size, volume type, and IOPS capacity. If your EBS volume is attached to a current-generation EC2 instance type, you may be able to apply these changes without stopping the instance or detaching the volume from it. For more information about modifying an EBS volume running Linux, see Modifying the Size, IOPS, or Type of an EBS Volume on Linux. For more information about modifying an EBS volume running Windows, see Modifying the Size, IOPS, or Type of an EBS Volume on Windows. When you complete a resize operation on your volume, you need to extend the volume's file-system size to take advantage of the new storage capacity. For information about extending a Linux file system, see Extending a Linux File System. For information about extending a Windows file system, see Extending a Windows File System. You can use CloudWatch Events to check the status of a modification to an EBS volume. For information about CloudWatch Events, see the Amazon CloudWatch Events User Guide. You can also track the status of a modification using the DescribeVolumesModifications API. For information about tracking status changes using either method, see Monitoring Volume Modifications. With previous-generation instance types, resizing an EBS volume may require detaching and reattaching the volume or stopping and restarting the instance. For more information, see Modifying the Size, IOPS, or Type of an EBS Volume on Linux and Modifying the Size, IOPS, or Type of an EBS Volume on Windows. If you reach the maximum volume modification rate per volume limit, you will need to wait at least six hours before applying further modifications to the affected EBS volume.
2237 */
2238 modifyVolume(callback?: (err: AWSError, data: EC2.Types.ModifyVolumeResult) => void): Request<EC2.Types.ModifyVolumeResult, AWSError>;
2239 /**
2240 * Modifies a volume attribute. By default, all I/O operations for the volume are suspended when the data on the volume is determined to be potentially inconsistent, to prevent undetectable, latent data corruption. The I/O access to the volume can be resumed by first enabling I/O access and then checking the data consistency on your volume. You can change the default behavior to resume I/O operations. We recommend that you change this only for boot volumes or for volumes that are stateless or disposable.
2241 */
2242 modifyVolumeAttribute(params: EC2.Types.ModifyVolumeAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2243 /**
2244 * Modifies a volume attribute. By default, all I/O operations for the volume are suspended when the data on the volume is determined to be potentially inconsistent, to prevent undetectable, latent data corruption. The I/O access to the volume can be resumed by first enabling I/O access and then checking the data consistency on your volume. You can change the default behavior to resume I/O operations. We recommend that you change this only for boot volumes or for volumes that are stateless or disposable.
2245 */
2246 modifyVolumeAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2247 /**
2248 * Modifies the specified attribute of the specified VPC.
2249 */
2250 modifyVpcAttribute(params: EC2.Types.ModifyVpcAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2251 /**
2252 * Modifies the specified attribute of the specified VPC.
2253 */
2254 modifyVpcAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2255 /**
2256 * Modifies attributes of a specified VPC endpoint. The attributes that you can modify depend on the type of VPC endpoint (interface or gateway). For more information, see VPC Endpoints in the Amazon Virtual Private Cloud User Guide.
2257 */
2258 modifyVpcEndpoint(params: EC2.Types.ModifyVpcEndpointRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointResult) => void): Request<EC2.Types.ModifyVpcEndpointResult, AWSError>;
2259 /**
2260 * Modifies attributes of a specified VPC endpoint. The attributes that you can modify depend on the type of VPC endpoint (interface or gateway). For more information, see VPC Endpoints in the Amazon Virtual Private Cloud User Guide.
2261 */
2262 modifyVpcEndpoint(callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointResult) => void): Request<EC2.Types.ModifyVpcEndpointResult, AWSError>;
2263 /**
2264 * Modifies a connection notification for VPC endpoint or VPC endpoint service. You can change the SNS topic for the notification, or the events for which to be notified.
2265 */
2266 modifyVpcEndpointConnectionNotification(params: EC2.Types.ModifyVpcEndpointConnectionNotificationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointConnectionNotificationResult) => void): Request<EC2.Types.ModifyVpcEndpointConnectionNotificationResult, AWSError>;
2267 /**
2268 * Modifies a connection notification for VPC endpoint or VPC endpoint service. You can change the SNS topic for the notification, or the events for which to be notified.
2269 */
2270 modifyVpcEndpointConnectionNotification(callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointConnectionNotificationResult) => void): Request<EC2.Types.ModifyVpcEndpointConnectionNotificationResult, AWSError>;
2271 /**
2272 * Modifies the attributes of your VPC endpoint service configuration. You can change the Network Load Balancers for your service, and you can specify whether acceptance is required for requests to connect to your endpoint service through an interface VPC endpoint.
2273 */
2274 modifyVpcEndpointServiceConfiguration(params: EC2.Types.ModifyVpcEndpointServiceConfigurationRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointServiceConfigurationResult) => void): Request<EC2.Types.ModifyVpcEndpointServiceConfigurationResult, AWSError>;
2275 /**
2276 * Modifies the attributes of your VPC endpoint service configuration. You can change the Network Load Balancers for your service, and you can specify whether acceptance is required for requests to connect to your endpoint service through an interface VPC endpoint.
2277 */
2278 modifyVpcEndpointServiceConfiguration(callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointServiceConfigurationResult) => void): Request<EC2.Types.ModifyVpcEndpointServiceConfigurationResult, AWSError>;
2279 /**
2280 * Modifies the permissions for your VPC endpoint service. You can add or remove permissions for service consumers (IAM users, IAM roles, and AWS accounts) to connect to your endpoint service. If you grant permissions to all principals, the service is public. Any users who know the name of a public service can send a request to attach an endpoint. If the service does not require manual approval, attachments are automatically approved.
2281 */
2282 modifyVpcEndpointServicePermissions(params: EC2.Types.ModifyVpcEndpointServicePermissionsRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointServicePermissionsResult) => void): Request<EC2.Types.ModifyVpcEndpointServicePermissionsResult, AWSError>;
2283 /**
2284 * Modifies the permissions for your VPC endpoint service. You can add or remove permissions for service consumers (IAM users, IAM roles, and AWS accounts) to connect to your endpoint service. If you grant permissions to all principals, the service is public. Any users who know the name of a public service can send a request to attach an endpoint. If the service does not require manual approval, attachments are automatically approved.
2285 */
2286 modifyVpcEndpointServicePermissions(callback?: (err: AWSError, data: EC2.Types.ModifyVpcEndpointServicePermissionsResult) => void): Request<EC2.Types.ModifyVpcEndpointServicePermissionsResult, AWSError>;
2287 /**
2288 * Modifies the VPC peering connection options on one side of a VPC peering connection. You can do the following: Enable/disable communication over the peering connection between an EC2-Classic instance that's linked to your VPC (using ClassicLink) and instances in the peer VPC. Enable/disable communication over the peering connection between instances in your VPC and an EC2-Classic instance that's linked to the peer VPC. Enable/disable the ability to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC. If the peered VPCs are in the same AWS account, you can enable DNS resolution for queries from the local VPC. This ensures that queries from the local VPC resolve to private IP addresses in the peer VPC. This option is not available if the peered VPCs are in different AWS accounts or different regions. For peered VPCs in different AWS accounts, each AWS account owner must initiate a separate request to modify the peering connection options. For inter-region peering connections, you must use the region for the requester VPC to modify the requester VPC peering options and the region for the accepter VPC to modify the accepter VPC peering options. To verify which VPCs are the accepter and the requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.
2289 */
2290 modifyVpcPeeringConnectionOptions(params: EC2.Types.ModifyVpcPeeringConnectionOptionsRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcPeeringConnectionOptionsResult) => void): Request<EC2.Types.ModifyVpcPeeringConnectionOptionsResult, AWSError>;
2291 /**
2292 * Modifies the VPC peering connection options on one side of a VPC peering connection. You can do the following: Enable/disable communication over the peering connection between an EC2-Classic instance that's linked to your VPC (using ClassicLink) and instances in the peer VPC. Enable/disable communication over the peering connection between instances in your VPC and an EC2-Classic instance that's linked to the peer VPC. Enable/disable the ability to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC. If the peered VPCs are in the same AWS account, you can enable DNS resolution for queries from the local VPC. This ensures that queries from the local VPC resolve to private IP addresses in the peer VPC. This option is not available if the peered VPCs are in different AWS accounts or different regions. For peered VPCs in different AWS accounts, each AWS account owner must initiate a separate request to modify the peering connection options. For inter-region peering connections, you must use the region for the requester VPC to modify the requester VPC peering options and the region for the accepter VPC to modify the accepter VPC peering options. To verify which VPCs are the accepter and the requester for a VPC peering connection, use the DescribeVpcPeeringConnections command.
2293 */
2294 modifyVpcPeeringConnectionOptions(callback?: (err: AWSError, data: EC2.Types.ModifyVpcPeeringConnectionOptionsResult) => void): Request<EC2.Types.ModifyVpcPeeringConnectionOptionsResult, AWSError>;
2295 /**
2296 * Modifies the instance tenancy attribute of the specified VPC. You can change the instance tenancy attribute of a VPC to default only. You cannot change the instance tenancy attribute to dedicated. After you modify the tenancy of the VPC, any new instances that you launch into the VPC have a tenancy of default, unless you specify otherwise during launch. The tenancy of any existing instances in the VPC is not affected. For more information, see Dedicated Instances in the Amazon Elastic Compute Cloud User Guide.
2297 */
2298 modifyVpcTenancy(params: EC2.Types.ModifyVpcTenancyRequest, callback?: (err: AWSError, data: EC2.Types.ModifyVpcTenancyResult) => void): Request<EC2.Types.ModifyVpcTenancyResult, AWSError>;
2299 /**
2300 * Modifies the instance tenancy attribute of the specified VPC. You can change the instance tenancy attribute of a VPC to default only. You cannot change the instance tenancy attribute to dedicated. After you modify the tenancy of the VPC, any new instances that you launch into the VPC have a tenancy of default, unless you specify otherwise during launch. The tenancy of any existing instances in the VPC is not affected. For more information, see Dedicated Instances in the Amazon Elastic Compute Cloud User Guide.
2301 */
2302 modifyVpcTenancy(callback?: (err: AWSError, data: EC2.Types.ModifyVpcTenancyResult) => void): Request<EC2.Types.ModifyVpcTenancyResult, AWSError>;
2303 /**
2304 * Enables detailed monitoring for a running instance. Otherwise, basic monitoring is enabled. For more information, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide. To disable detailed monitoring, see .
2305 */
2306 monitorInstances(params: EC2.Types.MonitorInstancesRequest, callback?: (err: AWSError, data: EC2.Types.MonitorInstancesResult) => void): Request<EC2.Types.MonitorInstancesResult, AWSError>;
2307 /**
2308 * Enables detailed monitoring for a running instance. Otherwise, basic monitoring is enabled. For more information, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide. To disable detailed monitoring, see .
2309 */
2310 monitorInstances(callback?: (err: AWSError, data: EC2.Types.MonitorInstancesResult) => void): Request<EC2.Types.MonitorInstancesResult, AWSError>;
2311 /**
2312 * Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The Elastic IP address must be allocated to your account for more than 24 hours, and it must not be associated with an instance. After the Elastic IP address is moved, it is no longer available for use in the EC2-Classic platform, unless you move it back using the RestoreAddressToClassic request. You cannot move an Elastic IP address that was originally allocated for use in the EC2-VPC platform to the EC2-Classic platform.
2313 */
2314 moveAddressToVpc(params: EC2.Types.MoveAddressToVpcRequest, callback?: (err: AWSError, data: EC2.Types.MoveAddressToVpcResult) => void): Request<EC2.Types.MoveAddressToVpcResult, AWSError>;
2315 /**
2316 * Moves an Elastic IP address from the EC2-Classic platform to the EC2-VPC platform. The Elastic IP address must be allocated to your account for more than 24 hours, and it must not be associated with an instance. After the Elastic IP address is moved, it is no longer available for use in the EC2-Classic platform, unless you move it back using the RestoreAddressToClassic request. You cannot move an Elastic IP address that was originally allocated for use in the EC2-VPC platform to the EC2-Classic platform.
2317 */
2318 moveAddressToVpc(callback?: (err: AWSError, data: EC2.Types.MoveAddressToVpcResult) => void): Request<EC2.Types.MoveAddressToVpcResult, AWSError>;
2319 /**
2320 * Provisions an address range for use with your AWS resources through bring your own IP addresses (BYOIP) and creates a corresponding address pool. After the address range is provisioned, it is ready to be advertised using AdvertiseByoipCidr. AWS verifies that you own the address range and are authorized to advertise it. You must ensure that the address range is registered to you and that you created an RPKI ROA to authorize Amazon ASNs 16509 and 14618 to advertise the address range. For more information, see Bring Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User Guide. Provisioning an address range is an asynchronous operation, so the call returns immediately, but the address range is not ready to use until its status changes from pending-provision to provisioned. To monitor the status of an address range, use DescribeByoipCidrs. To allocate an Elastic IP address from your address pool, use AllocateAddress with either the specific address from the address pool or the ID of the address pool.
2321 */
2322 provisionByoipCidr(params: EC2.Types.ProvisionByoipCidrRequest, callback?: (err: AWSError, data: EC2.Types.ProvisionByoipCidrResult) => void): Request<EC2.Types.ProvisionByoipCidrResult, AWSError>;
2323 /**
2324 * Provisions an address range for use with your AWS resources through bring your own IP addresses (BYOIP) and creates a corresponding address pool. After the address range is provisioned, it is ready to be advertised using AdvertiseByoipCidr. AWS verifies that you own the address range and are authorized to advertise it. You must ensure that the address range is registered to you and that you created an RPKI ROA to authorize Amazon ASNs 16509 and 14618 to advertise the address range. For more information, see Bring Your Own IP Addresses (BYOIP) in the Amazon Elastic Compute Cloud User Guide. Provisioning an address range is an asynchronous operation, so the call returns immediately, but the address range is not ready to use until its status changes from pending-provision to provisioned. To monitor the status of an address range, use DescribeByoipCidrs. To allocate an Elastic IP address from your address pool, use AllocateAddress with either the specific address from the address pool or the ID of the address pool.
2325 */
2326 provisionByoipCidr(callback?: (err: AWSError, data: EC2.Types.ProvisionByoipCidrResult) => void): Request<EC2.Types.ProvisionByoipCidrResult, AWSError>;
2327 /**
2328 * Purchase a reservation with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation. This action results in the specified reservation being purchased and charged to your account.
2329 */
2330 purchaseHostReservation(params: EC2.Types.PurchaseHostReservationRequest, callback?: (err: AWSError, data: EC2.Types.PurchaseHostReservationResult) => void): Request<EC2.Types.PurchaseHostReservationResult, AWSError>;
2331 /**
2332 * Purchase a reservation with configurations that match those of your Dedicated Host. You must have active Dedicated Hosts in your account before you purchase a reservation. This action results in the specified reservation being purchased and charged to your account.
2333 */
2334 purchaseHostReservation(callback?: (err: AWSError, data: EC2.Types.PurchaseHostReservationResult) => void): Request<EC2.Types.PurchaseHostReservationResult, AWSError>;
2335 /**
2336 * Purchases a Reserved Instance for use with your account. With Reserved Instances, you pay a lower hourly rate compared to On-Demand instance pricing. Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings that match your specifications. After you've purchased a Reserved Instance, you can check for your new Reserved Instance with DescribeReservedInstances. For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
2337 */
2338 purchaseReservedInstancesOffering(params: EC2.Types.PurchaseReservedInstancesOfferingRequest, callback?: (err: AWSError, data: EC2.Types.PurchaseReservedInstancesOfferingResult) => void): Request<EC2.Types.PurchaseReservedInstancesOfferingResult, AWSError>;
2339 /**
2340 * Purchases a Reserved Instance for use with your account. With Reserved Instances, you pay a lower hourly rate compared to On-Demand instance pricing. Use DescribeReservedInstancesOfferings to get a list of Reserved Instance offerings that match your specifications. After you've purchased a Reserved Instance, you can check for your new Reserved Instance with DescribeReservedInstances. For more information, see Reserved Instances and Reserved Instance Marketplace in the Amazon Elastic Compute Cloud User Guide.
2341 */
2342 purchaseReservedInstancesOffering(callback?: (err: AWSError, data: EC2.Types.PurchaseReservedInstancesOfferingResult) => void): Request<EC2.Types.PurchaseReservedInstancesOfferingResult, AWSError>;
2343 /**
2344 * Purchases one or more Scheduled Instances with the specified schedule. Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term. Before you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability to check for available schedules and obtain a purchase token. After you purchase a Scheduled Instance, you must call RunScheduledInstances during each scheduled time period. After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase.
2345 */
2346 purchaseScheduledInstances(params: EC2.Types.PurchaseScheduledInstancesRequest, callback?: (err: AWSError, data: EC2.Types.PurchaseScheduledInstancesResult) => void): Request<EC2.Types.PurchaseScheduledInstancesResult, AWSError>;
2347 /**
2348 * Purchases one or more Scheduled Instances with the specified schedule. Scheduled Instances enable you to purchase Amazon EC2 compute capacity by the hour for a one-year term. Before you can purchase a Scheduled Instance, you must call DescribeScheduledInstanceAvailability to check for available schedules and obtain a purchase token. After you purchase a Scheduled Instance, you must call RunScheduledInstances during each scheduled time period. After you purchase a Scheduled Instance, you can't cancel, modify, or resell your purchase.
2349 */
2350 purchaseScheduledInstances(callback?: (err: AWSError, data: EC2.Types.PurchaseScheduledInstancesResult) => void): Request<EC2.Types.PurchaseScheduledInstancesResult, AWSError>;
2351 /**
2352 * Requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instances. The operation succeeds if the instances are valid and belong to you. Requests to reboot terminated instances are ignored. If an instance does not cleanly shut down within four minutes, Amazon EC2 performs a hard reboot. For more information about troubleshooting, see Getting Console Output and Rebooting Instances in the Amazon Elastic Compute Cloud User Guide.
2353 */
2354 rebootInstances(params: EC2.Types.RebootInstancesRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2355 /**
2356 * Requests a reboot of one or more instances. This operation is asynchronous; it only queues a request to reboot the specified instances. The operation succeeds if the instances are valid and belong to you. Requests to reboot terminated instances are ignored. If an instance does not cleanly shut down within four minutes, Amazon EC2 performs a hard reboot. For more information about troubleshooting, see Getting Console Output and Rebooting Instances in the Amazon Elastic Compute Cloud User Guide.
2357 */
2358 rebootInstances(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2359 /**
2360 * Registers an AMI. When you're creating an AMI, this is the final step you must complete before you can launch an instance from the AMI. For more information about creating AMIs, see Creating Your Own AMIs in the Amazon Elastic Compute Cloud User Guide. For Amazon EBS-backed instances, CreateImage creates and registers the AMI in a single request, so you don't have to register the AMI yourself. You can also use RegisterImage to create an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. You specify the snapshot using the block device mapping. For more information, see Launching a Linux Instance from a Backup in the Amazon Elastic Compute Cloud User Guide. You can't register an image where a secondary (non-root) snapshot has AWS Marketplace product codes. Some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 billing product code associated with an AMI to verify the subscription status for package updates. Creating an AMI from an EBS snapshot does not maintain this billing code, and instances launched from such an AMI are not able to connect to package update infrastructure. If you purchase a Reserved Instance offering for one of these Linux distributions and launch instances using an AMI that does not contain the required billing code, your Reserved Instance is not applied to these instances. To create an AMI for operating systems that require a billing code, see CreateImage. If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance store volume invalidates its registration. If you make changes to an image, deregister the previous image and register the new image.
2361 */
2362 registerImage(params: EC2.Types.RegisterImageRequest, callback?: (err: AWSError, data: EC2.Types.RegisterImageResult) => void): Request<EC2.Types.RegisterImageResult, AWSError>;
2363 /**
2364 * Registers an AMI. When you're creating an AMI, this is the final step you must complete before you can launch an instance from the AMI. For more information about creating AMIs, see Creating Your Own AMIs in the Amazon Elastic Compute Cloud User Guide. For Amazon EBS-backed instances, CreateImage creates and registers the AMI in a single request, so you don't have to register the AMI yourself. You can also use RegisterImage to create an Amazon EBS-backed Linux AMI from a snapshot of a root device volume. You specify the snapshot using the block device mapping. For more information, see Launching a Linux Instance from a Backup in the Amazon Elastic Compute Cloud User Guide. You can't register an image where a secondary (non-root) snapshot has AWS Marketplace product codes. Some Linux distributions, such as Red Hat Enterprise Linux (RHEL) and SUSE Linux Enterprise Server (SLES), use the EC2 billing product code associated with an AMI to verify the subscription status for package updates. Creating an AMI from an EBS snapshot does not maintain this billing code, and instances launched from such an AMI are not able to connect to package update infrastructure. If you purchase a Reserved Instance offering for one of these Linux distributions and launch instances using an AMI that does not contain the required billing code, your Reserved Instance is not applied to these instances. To create an AMI for operating systems that require a billing code, see CreateImage. If needed, you can deregister an AMI at any time. Any modifications you make to an AMI backed by an instance store volume invalidates its registration. If you make changes to an image, deregister the previous image and register the new image.
2365 */
2366 registerImage(callback?: (err: AWSError, data: EC2.Types.RegisterImageResult) => void): Request<EC2.Types.RegisterImageResult, AWSError>;
2367 /**
2368 * Rejects a request to attach a VPC to a transit gateway. The VPC attachment must be in the pendingAcceptance state. Use DescribeTransitGatewayVpcAttachments to view your pending VPC attachment requests. Use AcceptTransitGatewayVpcAttachment to accept a VPC attachment request.
2369 */
2370 rejectTransitGatewayVpcAttachment(params: EC2.Types.RejectTransitGatewayVpcAttachmentRequest, callback?: (err: AWSError, data: EC2.Types.RejectTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.RejectTransitGatewayVpcAttachmentResult, AWSError>;
2371 /**
2372 * Rejects a request to attach a VPC to a transit gateway. The VPC attachment must be in the pendingAcceptance state. Use DescribeTransitGatewayVpcAttachments to view your pending VPC attachment requests. Use AcceptTransitGatewayVpcAttachment to accept a VPC attachment request.
2373 */
2374 rejectTransitGatewayVpcAttachment(callback?: (err: AWSError, data: EC2.Types.RejectTransitGatewayVpcAttachmentResult) => void): Request<EC2.Types.RejectTransitGatewayVpcAttachmentResult, AWSError>;
2375 /**
2376 * Rejects one or more VPC endpoint connection requests to your VPC endpoint service.
2377 */
2378 rejectVpcEndpointConnections(params: EC2.Types.RejectVpcEndpointConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.RejectVpcEndpointConnectionsResult) => void): Request<EC2.Types.RejectVpcEndpointConnectionsResult, AWSError>;
2379 /**
2380 * Rejects one or more VPC endpoint connection requests to your VPC endpoint service.
2381 */
2382 rejectVpcEndpointConnections(callback?: (err: AWSError, data: EC2.Types.RejectVpcEndpointConnectionsResult) => void): Request<EC2.Types.RejectVpcEndpointConnectionsResult, AWSError>;
2383 /**
2384 * Rejects a VPC peering connection request. The VPC peering connection must be in the pending-acceptance state. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests. To delete an active VPC peering connection, or to delete a VPC peering connection request that you initiated, use DeleteVpcPeeringConnection.
2385 */
2386 rejectVpcPeeringConnection(params: EC2.Types.RejectVpcPeeringConnectionRequest, callback?: (err: AWSError, data: EC2.Types.RejectVpcPeeringConnectionResult) => void): Request<EC2.Types.RejectVpcPeeringConnectionResult, AWSError>;
2387 /**
2388 * Rejects a VPC peering connection request. The VPC peering connection must be in the pending-acceptance state. Use the DescribeVpcPeeringConnections request to view your outstanding VPC peering connection requests. To delete an active VPC peering connection, or to delete a VPC peering connection request that you initiated, use DeleteVpcPeeringConnection.
2389 */
2390 rejectVpcPeeringConnection(callback?: (err: AWSError, data: EC2.Types.RejectVpcPeeringConnectionResult) => void): Request<EC2.Types.RejectVpcPeeringConnectionResult, AWSError>;
2391 /**
2392 * Releases the specified Elastic IP address. [EC2-Classic, default VPC] Releasing an Elastic IP address automatically disassociates it from any instance that it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress. [Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address before you can release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse). After releasing an Elastic IP address, it is released to the IP address pool. Be sure to update your DNS records and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address that you already released, you'll get an AuthFailure error if the address is already allocated to another AWS account. [EC2-VPC] After you release an Elastic IP address for use in a VPC, you might be able to recover it. For more information, see AllocateAddress.
2393 */
2394 releaseAddress(params: EC2.Types.ReleaseAddressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2395 /**
2396 * Releases the specified Elastic IP address. [EC2-Classic, default VPC] Releasing an Elastic IP address automatically disassociates it from any instance that it's associated with. To disassociate an Elastic IP address without releasing it, use DisassociateAddress. [Nondefault VPC] You must use DisassociateAddress to disassociate the Elastic IP address before you can release it. Otherwise, Amazon EC2 returns an error (InvalidIPAddress.InUse). After releasing an Elastic IP address, it is released to the IP address pool. Be sure to update your DNS records and any servers or devices that communicate with the address. If you attempt to release an Elastic IP address that you already released, you'll get an AuthFailure error if the address is already allocated to another AWS account. [EC2-VPC] After you release an Elastic IP address for use in a VPC, you might be able to recover it. For more information, see AllocateAddress.
2397 */
2398 releaseAddress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2399 /**
2400 * When you no longer want to use an On-Demand Dedicated Host it can be released. On-Demand billing is stopped and the host goes into released state. The host ID of Dedicated Hosts that have been released can no longer be specified in another request, for example, to modify the host. You must stop or terminate all instances on a host before it can be released. When Dedicated Hosts are released, it may take some time for them to stop counting toward your limit and you may receive capacity errors when trying to allocate new Dedicated Hosts. Wait a few minutes and then try again. Released hosts still appear in a DescribeHosts response.
2401 */
2402 releaseHosts(params: EC2.Types.ReleaseHostsRequest, callback?: (err: AWSError, data: EC2.Types.ReleaseHostsResult) => void): Request<EC2.Types.ReleaseHostsResult, AWSError>;
2403 /**
2404 * When you no longer want to use an On-Demand Dedicated Host it can be released. On-Demand billing is stopped and the host goes into released state. The host ID of Dedicated Hosts that have been released can no longer be specified in another request, for example, to modify the host. You must stop or terminate all instances on a host before it can be released. When Dedicated Hosts are released, it may take some time for them to stop counting toward your limit and you may receive capacity errors when trying to allocate new Dedicated Hosts. Wait a few minutes and then try again. Released hosts still appear in a DescribeHosts response.
2405 */
2406 releaseHosts(callback?: (err: AWSError, data: EC2.Types.ReleaseHostsResult) => void): Request<EC2.Types.ReleaseHostsResult, AWSError>;
2407 /**
2408 * Replaces an IAM instance profile for the specified running instance. You can use this action to change the IAM instance profile that's associated with an instance without having to disassociate the existing IAM instance profile first. Use DescribeIamInstanceProfileAssociations to get the association ID.
2409 */
2410 replaceIamInstanceProfileAssociation(params: EC2.Types.ReplaceIamInstanceProfileAssociationRequest, callback?: (err: AWSError, data: EC2.Types.ReplaceIamInstanceProfileAssociationResult) => void): Request<EC2.Types.ReplaceIamInstanceProfileAssociationResult, AWSError>;
2411 /**
2412 * Replaces an IAM instance profile for the specified running instance. You can use this action to change the IAM instance profile that's associated with an instance without having to disassociate the existing IAM instance profile first. Use DescribeIamInstanceProfileAssociations to get the association ID.
2413 */
2414 replaceIamInstanceProfileAssociation(callback?: (err: AWSError, data: EC2.Types.ReplaceIamInstanceProfileAssociationResult) => void): Request<EC2.Types.ReplaceIamInstanceProfileAssociationResult, AWSError>;
2415 /**
2416 * Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically associated with the default network ACL. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide. This is an idempotent operation.
2417 */
2418 replaceNetworkAclAssociation(params: EC2.Types.ReplaceNetworkAclAssociationRequest, callback?: (err: AWSError, data: EC2.Types.ReplaceNetworkAclAssociationResult) => void): Request<EC2.Types.ReplaceNetworkAclAssociationResult, AWSError>;
2419 /**
2420 * Changes which network ACL a subnet is associated with. By default when you create a subnet, it's automatically associated with the default network ACL. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide. This is an idempotent operation.
2421 */
2422 replaceNetworkAclAssociation(callback?: (err: AWSError, data: EC2.Types.ReplaceNetworkAclAssociationResult) => void): Request<EC2.Types.ReplaceNetworkAclAssociationResult, AWSError>;
2423 /**
2424 * Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
2425 */
2426 replaceNetworkAclEntry(params: EC2.Types.ReplaceNetworkAclEntryRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2427 /**
2428 * Replaces an entry (rule) in a network ACL. For more information, see Network ACLs in the Amazon Virtual Private Cloud User Guide.
2429 */
2430 replaceNetworkAclEntry(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2431 /**
2432 * Replaces an existing route within a route table in a VPC. You must provide only one of the following: internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, or egress-only internet gateway. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
2433 */
2434 replaceRoute(params: EC2.Types.ReplaceRouteRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2435 /**
2436 * Replaces an existing route within a route table in a VPC. You must provide only one of the following: internet gateway or virtual private gateway, NAT instance, NAT gateway, VPC peering connection, network interface, or egress-only internet gateway. For more information, see Route Tables in the Amazon Virtual Private Cloud User Guide.
2437 */
2438 replaceRoute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2439 /**
2440 * Changes the route table associated with a given subnet in a VPC. After the operation completes, the subnet uses the routes in the new route table it's associated with. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide. You can also use ReplaceRouteTableAssociation to change which table is the main route table in the VPC. You just specify the main route table's association ID and the route table to be the new main route table.
2441 */
2442 replaceRouteTableAssociation(params: EC2.Types.ReplaceRouteTableAssociationRequest, callback?: (err: AWSError, data: EC2.Types.ReplaceRouteTableAssociationResult) => void): Request<EC2.Types.ReplaceRouteTableAssociationResult, AWSError>;
2443 /**
2444 * Changes the route table associated with a given subnet in a VPC. After the operation completes, the subnet uses the routes in the new route table it's associated with. For more information about route tables, see Route Tables in the Amazon Virtual Private Cloud User Guide. You can also use ReplaceRouteTableAssociation to change which table is the main route table in the VPC. You just specify the main route table's association ID and the route table to be the new main route table.
2445 */
2446 replaceRouteTableAssociation(callback?: (err: AWSError, data: EC2.Types.ReplaceRouteTableAssociationResult) => void): Request<EC2.Types.ReplaceRouteTableAssociationResult, AWSError>;
2447 /**
2448 * Replaces the specified route in the specified transit gateway route table.
2449 */
2450 replaceTransitGatewayRoute(params: EC2.Types.ReplaceTransitGatewayRouteRequest, callback?: (err: AWSError, data: EC2.Types.ReplaceTransitGatewayRouteResult) => void): Request<EC2.Types.ReplaceTransitGatewayRouteResult, AWSError>;
2451 /**
2452 * Replaces the specified route in the specified transit gateway route table.
2453 */
2454 replaceTransitGatewayRoute(callback?: (err: AWSError, data: EC2.Types.ReplaceTransitGatewayRouteResult) => void): Request<EC2.Types.ReplaceTransitGatewayRouteResult, AWSError>;
2455 /**
2456 * Submits feedback about the status of an instance. The instance must be in the running state. If your experience with the instance differs from the instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon EC2 collects this information to improve the accuracy of status checks. Use of this action does not change the value returned by DescribeInstanceStatus.
2457 */
2458 reportInstanceStatus(params: EC2.Types.ReportInstanceStatusRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2459 /**
2460 * Submits feedback about the status of an instance. The instance must be in the running state. If your experience with the instance differs from the instance status returned by DescribeInstanceStatus, use ReportInstanceStatus to report your experience with the instance. Amazon EC2 collects this information to improve the accuracy of status checks. Use of this action does not change the value returned by DescribeInstanceStatus.
2461 */
2462 reportInstanceStatus(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2463 /**
2464 * Creates a Spot Fleet request. The Spot Fleet request specifies the total target capacity and the On-Demand target capacity. Amazon EC2 calculates the difference between the total capacity and On-Demand capacity, and launches the difference as Spot capacity. You can submit a single request that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet. By default, the Spot Fleet requests Spot Instances in the Spot pool where the price per unit is the lowest. Each launch specification can include its own instance weighting that reflects the value of the instance type to your application workload. Alternatively, you can specify that the Spot Fleet distribute the target capacity across the Spot pools included in its launch specifications. By ensuring that the Spot Instances in your Spot Fleet are in different Spot pools, you can improve the availability of your fleet. You can specify tags for the Spot Instances. You cannot tag other resource types in a Spot Fleet request because only the instance resource type is supported. For more information, see Spot Fleet Requests in the Amazon EC2 User Guide for Linux Instances.
2465 */
2466 requestSpotFleet(params: EC2.Types.RequestSpotFleetRequest, callback?: (err: AWSError, data: EC2.Types.RequestSpotFleetResponse) => void): Request<EC2.Types.RequestSpotFleetResponse, AWSError>;
2467 /**
2468 * Creates a Spot Fleet request. The Spot Fleet request specifies the total target capacity and the On-Demand target capacity. Amazon EC2 calculates the difference between the total capacity and On-Demand capacity, and launches the difference as Spot capacity. You can submit a single request that includes multiple launch specifications that vary by instance type, AMI, Availability Zone, or subnet. By default, the Spot Fleet requests Spot Instances in the Spot pool where the price per unit is the lowest. Each launch specification can include its own instance weighting that reflects the value of the instance type to your application workload. Alternatively, you can specify that the Spot Fleet distribute the target capacity across the Spot pools included in its launch specifications. By ensuring that the Spot Instances in your Spot Fleet are in different Spot pools, you can improve the availability of your fleet. You can specify tags for the Spot Instances. You cannot tag other resource types in a Spot Fleet request because only the instance resource type is supported. For more information, see Spot Fleet Requests in the Amazon EC2 User Guide for Linux Instances.
2469 */
2470 requestSpotFleet(callback?: (err: AWSError, data: EC2.Types.RequestSpotFleetResponse) => void): Request<EC2.Types.RequestSpotFleetResponse, AWSError>;
2471 /**
2472 * Creates a Spot Instance request. For more information, see Spot Instance Requests in the Amazon EC2 User Guide for Linux Instances.
2473 */
2474 requestSpotInstances(params: EC2.Types.RequestSpotInstancesRequest, callback?: (err: AWSError, data: EC2.Types.RequestSpotInstancesResult) => void): Request<EC2.Types.RequestSpotInstancesResult, AWSError>;
2475 /**
2476 * Creates a Spot Instance request. For more information, see Spot Instance Requests in the Amazon EC2 User Guide for Linux Instances.
2477 */
2478 requestSpotInstances(callback?: (err: AWSError, data: EC2.Types.RequestSpotInstancesResult) => void): Request<EC2.Types.RequestSpotInstancesResult, AWSError>;
2479 /**
2480 * Resets the specified attribute of the specified Amazon FPGA Image (AFI) to its default value. You can only reset the load permission attribute.
2481 */
2482 resetFpgaImageAttribute(params: EC2.Types.ResetFpgaImageAttributeRequest, callback?: (err: AWSError, data: EC2.Types.ResetFpgaImageAttributeResult) => void): Request<EC2.Types.ResetFpgaImageAttributeResult, AWSError>;
2483 /**
2484 * Resets the specified attribute of the specified Amazon FPGA Image (AFI) to its default value. You can only reset the load permission attribute.
2485 */
2486 resetFpgaImageAttribute(callback?: (err: AWSError, data: EC2.Types.ResetFpgaImageAttributeResult) => void): Request<EC2.Types.ResetFpgaImageAttributeResult, AWSError>;
2487 /**
2488 * Resets an attribute of an AMI to its default value. The productCodes attribute can't be reset.
2489 */
2490 resetImageAttribute(params: EC2.Types.ResetImageAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2491 /**
2492 * Resets an attribute of an AMI to its default value. The productCodes attribute can't be reset.
2493 */
2494 resetImageAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2495 /**
2496 * Resets an attribute of an instance to its default value. To reset the kernel or ramdisk, the instance must be in a stopped state. To reset the sourceDestCheck, the instance can be either running or stopped. The sourceDestCheck attribute controls whether source/destination checking is enabled. The default value is true, which means checking is enabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.
2497 */
2498 resetInstanceAttribute(params: EC2.Types.ResetInstanceAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2499 /**
2500 * Resets an attribute of an instance to its default value. To reset the kernel or ramdisk, the instance must be in a stopped state. To reset the sourceDestCheck, the instance can be either running or stopped. The sourceDestCheck attribute controls whether source/destination checking is enabled. The default value is true, which means checking is enabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.
2501 */
2502 resetInstanceAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2503 /**
2504 * Resets a network interface attribute. You can specify only one attribute at a time.
2505 */
2506 resetNetworkInterfaceAttribute(params: EC2.Types.ResetNetworkInterfaceAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2507 /**
2508 * Resets a network interface attribute. You can specify only one attribute at a time.
2509 */
2510 resetNetworkInterfaceAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2511 /**
2512 * Resets permission settings for the specified snapshot. For more information about modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.
2513 */
2514 resetSnapshotAttribute(params: EC2.Types.ResetSnapshotAttributeRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2515 /**
2516 * Resets permission settings for the specified snapshot. For more information about modifying snapshot permissions, see Sharing Snapshots in the Amazon Elastic Compute Cloud User Guide.
2517 */
2518 resetSnapshotAttribute(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2519 /**
2520 * Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP address must not be associated with an instance or network interface.
2521 */
2522 restoreAddressToClassic(params: EC2.Types.RestoreAddressToClassicRequest, callback?: (err: AWSError, data: EC2.Types.RestoreAddressToClassicResult) => void): Request<EC2.Types.RestoreAddressToClassicResult, AWSError>;
2523 /**
2524 * Restores an Elastic IP address that was previously moved to the EC2-VPC platform back to the EC2-Classic platform. You cannot move an Elastic IP address that was originally allocated for use in EC2-VPC. The Elastic IP address must not be associated with an instance or network interface.
2525 */
2526 restoreAddressToClassic(callback?: (err: AWSError, data: EC2.Types.RestoreAddressToClassicResult) => void): Request<EC2.Types.RestoreAddressToClassicResult, AWSError>;
2527 /**
2528 * Removes an ingress authorization rule from a Client VPN endpoint.
2529 */
2530 revokeClientVpnIngress(params: EC2.Types.RevokeClientVpnIngressRequest, callback?: (err: AWSError, data: EC2.Types.RevokeClientVpnIngressResult) => void): Request<EC2.Types.RevokeClientVpnIngressResult, AWSError>;
2531 /**
2532 * Removes an ingress authorization rule from a Client VPN endpoint.
2533 */
2534 revokeClientVpnIngress(callback?: (err: AWSError, data: EC2.Types.RevokeClientVpnIngressResult) => void): Request<EC2.Types.RevokeClientVpnIngressResult, AWSError>;
2535 /**
2536 * [EC2-VPC only] Removes one or more egress rules from a security group for EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. To remove a rule, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule consists of the protocol and the IPv4 or IPv6 CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not have to specify the description to revoke the rule. Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.
2537 */
2538 revokeSecurityGroupEgress(params: EC2.Types.RevokeSecurityGroupEgressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2539 /**
2540 * [EC2-VPC only] Removes one or more egress rules from a security group for EC2-VPC. This action doesn't apply to security groups for use in EC2-Classic. To remove a rule, the values that you specify (for example, ports) must match the existing rule's values exactly. Each rule consists of the protocol and the IPv4 or IPv6 CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not have to specify the description to revoke the rule. Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.
2541 */
2542 revokeSecurityGroupEgress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2543 /**
2544 * Removes one or more ingress rules from a security group. To remove a rule, the values that you specify (for example, ports) must match the existing rule's values exactly. [EC2-Classic security groups only] If the values you specify do not match the existing rule's values, no error is returned. Use DescribeSecurityGroups to verify that the rule has been removed. Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not have to specify the description to revoke the rule. Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.
2545 */
2546 revokeSecurityGroupIngress(params: EC2.Types.RevokeSecurityGroupIngressRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2547 /**
2548 * Removes one or more ingress rules from a security group. To remove a rule, the values that you specify (for example, ports) must match the existing rule's values exactly. [EC2-Classic security groups only] If the values you specify do not match the existing rule's values, no error is returned. Use DescribeSecurityGroups to verify that the rule has been removed. Each rule consists of the protocol and the CIDR range or source security group. For the TCP and UDP protocols, you must also specify the destination port or range of ports. For the ICMP protocol, you must also specify the ICMP type and code. If the security group rule has a description, you do not have to specify the description to revoke the rule. Rule changes are propagated to instances within the security group as quickly as possible. However, a small delay might occur.
2549 */
2550 revokeSecurityGroupIngress(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2551 /**
2552 * Launches the specified number of instances using an AMI for which you have permissions. You can specify a number of options, or leave the default options. The following rules apply: [EC2-VPC] If you don't specify a subnet ID, we choose a default subnet from your default VPC for you. If you don't have a default VPC, you must specify a subnet ID in the request. [EC2-Classic] If don't specify an Availability Zone, we choose one for you. Some instance types must be launched into a VPC. If you do not have a default VPC, or if you do not specify a subnet ID, the request fails. For more information, see Instance Types Available Only in a VPC. [EC2-VPC] All instances have a network interface with a primary private IPv4 address. If you don't specify this address, we choose one from the IPv4 range of your subnet. Not all instance types support IPv6 addresses. For more information, see Instance Types. If you don't specify a security group ID, we use the default security group. For more information, see Security Groups. If any of the AMIs have a product code attached for which the user has not subscribed, the request fails. You can create a launch template, which is a resource that contains the parameters to launch an instance. When you launch an instance using RunInstances, you can specify the launch template instead of specifying the launch parameters. To ensure faster instance launches, break up large requests into smaller batches. For example, create five separate launch requests for 100 instances each instead of one launch request for 500 instances. An instance is ready for you to use when it's in the running state. You can check the state of your instance using DescribeInstances. You can tag instances and EBS volumes during launch, after launch, or both. For more information, see CreateTags and Tagging Your Amazon EC2 Resources. Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key Pairs in the Amazon Elastic Compute Cloud User Guide. For troubleshooting, see What To Do If An Instance Immediately Terminates, and Troubleshooting Connecting to Your Instance in the Amazon Elastic Compute Cloud User Guide.
2553 */
2554 runInstances(params: EC2.Types.RunInstancesRequest, callback?: (err: AWSError, data: EC2.Types.Reservation) => void): Request<EC2.Types.Reservation, AWSError>;
2555 /**
2556 * Launches the specified number of instances using an AMI for which you have permissions. You can specify a number of options, or leave the default options. The following rules apply: [EC2-VPC] If you don't specify a subnet ID, we choose a default subnet from your default VPC for you. If you don't have a default VPC, you must specify a subnet ID in the request. [EC2-Classic] If don't specify an Availability Zone, we choose one for you. Some instance types must be launched into a VPC. If you do not have a default VPC, or if you do not specify a subnet ID, the request fails. For more information, see Instance Types Available Only in a VPC. [EC2-VPC] All instances have a network interface with a primary private IPv4 address. If you don't specify this address, we choose one from the IPv4 range of your subnet. Not all instance types support IPv6 addresses. For more information, see Instance Types. If you don't specify a security group ID, we use the default security group. For more information, see Security Groups. If any of the AMIs have a product code attached for which the user has not subscribed, the request fails. You can create a launch template, which is a resource that contains the parameters to launch an instance. When you launch an instance using RunInstances, you can specify the launch template instead of specifying the launch parameters. To ensure faster instance launches, break up large requests into smaller batches. For example, create five separate launch requests for 100 instances each instead of one launch request for 500 instances. An instance is ready for you to use when it's in the running state. You can check the state of your instance using DescribeInstances. You can tag instances and EBS volumes during launch, after launch, or both. For more information, see CreateTags and Tagging Your Amazon EC2 Resources. Linux instances have access to the public key of the key pair at boot. You can use this key to provide secure access to the instance. Amazon EC2 public images use this feature to provide secure access without passwords. For more information, see Key Pairs in the Amazon Elastic Compute Cloud User Guide. For troubleshooting, see What To Do If An Instance Immediately Terminates, and Troubleshooting Connecting to Your Instance in the Amazon Elastic Compute Cloud User Guide.
2557 */
2558 runInstances(callback?: (err: AWSError, data: EC2.Types.Reservation) => void): Request<EC2.Types.Reservation, AWSError>;
2559 /**
2560 * Launches the specified Scheduled Instances. Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances. You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances in the Amazon Elastic Compute Cloud User Guide.
2561 */
2562 runScheduledInstances(params: EC2.Types.RunScheduledInstancesRequest, callback?: (err: AWSError, data: EC2.Types.RunScheduledInstancesResult) => void): Request<EC2.Types.RunScheduledInstancesResult, AWSError>;
2563 /**
2564 * Launches the specified Scheduled Instances. Before you can launch a Scheduled Instance, you must purchase it and obtain an identifier using PurchaseScheduledInstances. You must launch a Scheduled Instance during its scheduled time period. You can't stop or reboot a Scheduled Instance, but you can terminate it as needed. If you terminate a Scheduled Instance before the current scheduled time period ends, you can launch it again after a few minutes. For more information, see Scheduled Instances in the Amazon Elastic Compute Cloud User Guide.
2565 */
2566 runScheduledInstances(callback?: (err: AWSError, data: EC2.Types.RunScheduledInstancesResult) => void): Request<EC2.Types.RunScheduledInstancesResult, AWSError>;
2567 /**
2568 * Searches for routes in the specified transit gateway route table.
2569 */
2570 searchTransitGatewayRoutes(params: EC2.Types.SearchTransitGatewayRoutesRequest, callback?: (err: AWSError, data: EC2.Types.SearchTransitGatewayRoutesResult) => void): Request<EC2.Types.SearchTransitGatewayRoutesResult, AWSError>;
2571 /**
2572 * Searches for routes in the specified transit gateway route table.
2573 */
2574 searchTransitGatewayRoutes(callback?: (err: AWSError, data: EC2.Types.SearchTransitGatewayRoutesResult) => void): Request<EC2.Types.SearchTransitGatewayRoutesResult, AWSError>;
2575 /**
2576 * Starts an Amazon EBS-backed instance that you've previously stopped. Instances that use Amazon EBS volumes as their root devices can be quickly stopped and started. When an instance is stopped, the compute resources are released and you are not billed for instance usage. However, your root partition Amazon EBS volume remains and continues to persist your data, and you are charged for Amazon EBS volume usage. You can restart your instance at any time. Every time you start your Windows instance, Amazon EC2 charges you for a full instance hour. If you stop and restart your Windows instance, a new instance hour begins and Amazon EC2 charges you for another full instance hour even if you are still within the same 60-minute period when it was stopped. Every time you start your Linux instance, Amazon EC2 charges a one-minute minimum for instance usage, and thereafter charges per second for instance usage. Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM. Performing this operation on an instance that uses an instance store as its root device returns an error. For more information, see Stopping Instances in the Amazon Elastic Compute Cloud User Guide.
2577 */
2578 startInstances(params: EC2.Types.StartInstancesRequest, callback?: (err: AWSError, data: EC2.Types.StartInstancesResult) => void): Request<EC2.Types.StartInstancesResult, AWSError>;
2579 /**
2580 * Starts an Amazon EBS-backed instance that you've previously stopped. Instances that use Amazon EBS volumes as their root devices can be quickly stopped and started. When an instance is stopped, the compute resources are released and you are not billed for instance usage. However, your root partition Amazon EBS volume remains and continues to persist your data, and you are charged for Amazon EBS volume usage. You can restart your instance at any time. Every time you start your Windows instance, Amazon EC2 charges you for a full instance hour. If you stop and restart your Windows instance, a new instance hour begins and Amazon EC2 charges you for another full instance hour even if you are still within the same 60-minute period when it was stopped. Every time you start your Linux instance, Amazon EC2 charges a one-minute minimum for instance usage, and thereafter charges per second for instance usage. Before stopping an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM. Performing this operation on an instance that uses an instance store as its root device returns an error. For more information, see Stopping Instances in the Amazon Elastic Compute Cloud User Guide.
2581 */
2582 startInstances(callback?: (err: AWSError, data: EC2.Types.StartInstancesResult) => void): Request<EC2.Types.StartInstancesResult, AWSError>;
2583 /**
2584 * Stops an Amazon EBS-backed instance. You can use the Stop action to hibernate an instance if the instance is enabled for hibernation and it meets the hibernation prerequisites. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide. We don't charge usage for a stopped instance, or data transfer fees; however, your root partition Amazon EBS volume remains and continues to persist your data, and you are charged for Amazon EBS volume usage. Every time you start your Windows instance, Amazon EC2 charges you for a full instance hour. If you stop and restart your Windows instance, a new instance hour begins and Amazon EC2 charges you for another full instance hour even if you are still within the same 60-minute period when it was stopped. Every time you start your Linux instance, Amazon EC2 charges a one-minute minimum for instance usage, and thereafter charges per second for instance usage. You can't start, stop, or hibernate Spot Instances, and you can't stop or hibernate instance store-backed instances. For information about using hibernation for Spot Instances, see Hibernating Interrupted Spot Instances in the Amazon Elastic Compute Cloud User Guide. When you stop or hibernate an instance, we shut it down. You can restart your instance at any time. Before stopping or hibernating an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM, but hibernating an instance does preserve data stored in RAM. If an instance cannot hibernate successfully, a normal shutdown occurs. Stopping and hibernating an instance is different to rebooting or terminating it. For example, when you stop or hibernate an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, the root device and any other devices attached during the instance launch are automatically deleted. For more information about the differences between rebooting, stopping, hibernating, and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide. When you stop an instance, we attempt to shut it down forcibly after a short while. If your instance appears stuck in the stopping state after a period of time, there may be an issue with the underlying host computer. For more information, see Troubleshooting Stopping Your Instance in the Amazon Elastic Compute Cloud User Guide.
2585 */
2586 stopInstances(params: EC2.Types.StopInstancesRequest, callback?: (err: AWSError, data: EC2.Types.StopInstancesResult) => void): Request<EC2.Types.StopInstancesResult, AWSError>;
2587 /**
2588 * Stops an Amazon EBS-backed instance. You can use the Stop action to hibernate an instance if the instance is enabled for hibernation and it meets the hibernation prerequisites. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide. We don't charge usage for a stopped instance, or data transfer fees; however, your root partition Amazon EBS volume remains and continues to persist your data, and you are charged for Amazon EBS volume usage. Every time you start your Windows instance, Amazon EC2 charges you for a full instance hour. If you stop and restart your Windows instance, a new instance hour begins and Amazon EC2 charges you for another full instance hour even if you are still within the same 60-minute period when it was stopped. Every time you start your Linux instance, Amazon EC2 charges a one-minute minimum for instance usage, and thereafter charges per second for instance usage. You can't start, stop, or hibernate Spot Instances, and you can't stop or hibernate instance store-backed instances. For information about using hibernation for Spot Instances, see Hibernating Interrupted Spot Instances in the Amazon Elastic Compute Cloud User Guide. When you stop or hibernate an instance, we shut it down. You can restart your instance at any time. Before stopping or hibernating an instance, make sure it is in a state from which it can be restarted. Stopping an instance does not preserve data stored in RAM, but hibernating an instance does preserve data stored in RAM. If an instance cannot hibernate successfully, a normal shutdown occurs. Stopping and hibernating an instance is different to rebooting or terminating it. For example, when you stop or hibernate an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, the root device and any other devices attached during the instance launch are automatically deleted. For more information about the differences between rebooting, stopping, hibernating, and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide. When you stop an instance, we attempt to shut it down forcibly after a short while. If your instance appears stuck in the stopping state after a period of time, there may be an issue with the underlying host computer. For more information, see Troubleshooting Stopping Your Instance in the Amazon Elastic Compute Cloud User Guide.
2589 */
2590 stopInstances(callback?: (err: AWSError, data: EC2.Types.StopInstancesResult) => void): Request<EC2.Types.StopInstancesResult, AWSError>;
2591 /**
2592 * Terminates active Client VPN endpoint connections. This action can be used to terminate a specific client connection, or up to five connections established by a specific user.
2593 */
2594 terminateClientVpnConnections(params: EC2.Types.TerminateClientVpnConnectionsRequest, callback?: (err: AWSError, data: EC2.Types.TerminateClientVpnConnectionsResult) => void): Request<EC2.Types.TerminateClientVpnConnectionsResult, AWSError>;
2595 /**
2596 * Terminates active Client VPN endpoint connections. This action can be used to terminate a specific client connection, or up to five connections established by a specific user.
2597 */
2598 terminateClientVpnConnections(callback?: (err: AWSError, data: EC2.Types.TerminateClientVpnConnectionsResult) => void): Request<EC2.Types.TerminateClientVpnConnectionsResult, AWSError>;
2599 /**
2600 * Shuts down one or more instances. This operation is idempotent; if you terminate an instance more than once, each call succeeds. If you specify multiple instances and the request fails (for example, because of a single incorrect instance ID), none of the instances are terminated. Terminated instances remain visible after termination (for approximately one hour). By default, Amazon EC2 deletes all EBS volumes that were attached when the instance launched. Volumes attached after instance launch continue running. You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, any attached EBS volumes with the DeleteOnTermination block device mapping parameter set to true are automatically deleted. For more information about the differences between stopping and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide. For more information about troubleshooting, see Troubleshooting Terminating Your Instance in the Amazon Elastic Compute Cloud User Guide.
2601 */
2602 terminateInstances(params: EC2.Types.TerminateInstancesRequest, callback?: (err: AWSError, data: EC2.Types.TerminateInstancesResult) => void): Request<EC2.Types.TerminateInstancesResult, AWSError>;
2603 /**
2604 * Shuts down one or more instances. This operation is idempotent; if you terminate an instance more than once, each call succeeds. If you specify multiple instances and the request fails (for example, because of a single incorrect instance ID), none of the instances are terminated. Terminated instances remain visible after termination (for approximately one hour). By default, Amazon EC2 deletes all EBS volumes that were attached when the instance launched. Volumes attached after instance launch continue running. You can stop, start, and terminate EBS-backed instances. You can only terminate instance store-backed instances. What happens to an instance differs if you stop it or terminate it. For example, when you stop an instance, the root device and any other devices attached to the instance persist. When you terminate an instance, any attached EBS volumes with the DeleteOnTermination block device mapping parameter set to true are automatically deleted. For more information about the differences between stopping and terminating instances, see Instance Lifecycle in the Amazon Elastic Compute Cloud User Guide. For more information about troubleshooting, see Troubleshooting Terminating Your Instance in the Amazon Elastic Compute Cloud User Guide.
2605 */
2606 terminateInstances(callback?: (err: AWSError, data: EC2.Types.TerminateInstancesResult) => void): Request<EC2.Types.TerminateInstancesResult, AWSError>;
2607 /**
2608 * Unassigns one or more IPv6 addresses from a network interface.
2609 */
2610 unassignIpv6Addresses(params: EC2.Types.UnassignIpv6AddressesRequest, callback?: (err: AWSError, data: EC2.Types.UnassignIpv6AddressesResult) => void): Request<EC2.Types.UnassignIpv6AddressesResult, AWSError>;
2611 /**
2612 * Unassigns one or more IPv6 addresses from a network interface.
2613 */
2614 unassignIpv6Addresses(callback?: (err: AWSError, data: EC2.Types.UnassignIpv6AddressesResult) => void): Request<EC2.Types.UnassignIpv6AddressesResult, AWSError>;
2615 /**
2616 * Unassigns one or more secondary private IP addresses from a network interface.
2617 */
2618 unassignPrivateIpAddresses(params: EC2.Types.UnassignPrivateIpAddressesRequest, callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2619 /**
2620 * Unassigns one or more secondary private IP addresses from a network interface.
2621 */
2622 unassignPrivateIpAddresses(callback?: (err: AWSError, data: {}) => void): Request<{}, AWSError>;
2623 /**
2624 * Disables detailed monitoring for a running instance. For more information, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.
2625 */
2626 unmonitorInstances(params: EC2.Types.UnmonitorInstancesRequest, callback?: (err: AWSError, data: EC2.Types.UnmonitorInstancesResult) => void): Request<EC2.Types.UnmonitorInstancesResult, AWSError>;
2627 /**
2628 * Disables detailed monitoring for a running instance. For more information, see Monitoring Your Instances and Volumes in the Amazon Elastic Compute Cloud User Guide.
2629 */
2630 unmonitorInstances(callback?: (err: AWSError, data: EC2.Types.UnmonitorInstancesResult) => void): Request<EC2.Types.UnmonitorInstancesResult, AWSError>;
2631 /**
2632 * [EC2-VPC only] Updates the description of an egress (outbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You specify the description as part of the IP permissions structure. You can remove a description for a security group rule by omitting the description parameter in the request.
2633 */
2634 updateSecurityGroupRuleDescriptionsEgress(params: EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressRequest, callback?: (err: AWSError, data: EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressResult) => void): Request<EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressResult, AWSError>;
2635 /**
2636 * [EC2-VPC only] Updates the description of an egress (outbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You specify the description as part of the IP permissions structure. You can remove a description for a security group rule by omitting the description parameter in the request.
2637 */
2638 updateSecurityGroupRuleDescriptionsEgress(callback?: (err: AWSError, data: EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressResult) => void): Request<EC2.Types.UpdateSecurityGroupRuleDescriptionsEgressResult, AWSError>;
2639 /**
2640 * Updates the description of an ingress (inbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You specify the description as part of the IP permissions structure. You can remove a description for a security group rule by omitting the description parameter in the request.
2641 */
2642 updateSecurityGroupRuleDescriptionsIngress(params: EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressRequest, callback?: (err: AWSError, data: EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressResult) => void): Request<EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressResult, AWSError>;
2643 /**
2644 * Updates the description of an ingress (inbound) security group rule. You can replace an existing description, or add a description to a rule that did not have one previously. You specify the description as part of the IP permissions structure. You can remove a description for a security group rule by omitting the description parameter in the request.
2645 */
2646 updateSecurityGroupRuleDescriptionsIngress(callback?: (err: AWSError, data: EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressResult) => void): Request<EC2.Types.UpdateSecurityGroupRuleDescriptionsIngressResult, AWSError>;
2647 /**
2648 * Stops advertising an IPv4 address range that is provisioned as an address pool. You can perform this operation at most once every 10 seconds, even if you specify different address ranges each time. It can take a few minutes before traffic to the specified addresses stops routing to AWS because of BGP propagation delays.
2649 */
2650 withdrawByoipCidr(params: EC2.Types.WithdrawByoipCidrRequest, callback?: (err: AWSError, data: EC2.Types.WithdrawByoipCidrResult) => void): Request<EC2.Types.WithdrawByoipCidrResult, AWSError>;
2651 /**
2652 * Stops advertising an IPv4 address range that is provisioned as an address pool. You can perform this operation at most once every 10 seconds, even if you specify different address ranges each time. It can take a few minutes before traffic to the specified addresses stops routing to AWS because of BGP propagation delays.
2653 */
2654 withdrawByoipCidr(callback?: (err: AWSError, data: EC2.Types.WithdrawByoipCidrResult) => void): Request<EC2.Types.WithdrawByoipCidrResult, AWSError>;
2655 /**
2656 * Waits for the instanceExists state by periodically calling the underlying EC2.describeInstancesoperation every 5 seconds (at most 40 times).
2657 */
2658 waitFor(state: "instanceExists", params: EC2.Types.DescribeInstancesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
2659 /**
2660 * Waits for the instanceExists state by periodically calling the underlying EC2.describeInstancesoperation every 5 seconds (at most 40 times).
2661 */
2662 waitFor(state: "instanceExists", callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
2663 /**
2664 * Waits for the bundleTaskComplete state by periodically calling the underlying EC2.describeBundleTasksoperation every 15 seconds (at most 40 times).
2665 */
2666 waitFor(state: "bundleTaskComplete", params: EC2.Types.DescribeBundleTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeBundleTasksResult) => void): Request<EC2.Types.DescribeBundleTasksResult, AWSError>;
2667 /**
2668 * Waits for the bundleTaskComplete state by periodically calling the underlying EC2.describeBundleTasksoperation every 15 seconds (at most 40 times).
2669 */
2670 waitFor(state: "bundleTaskComplete", callback?: (err: AWSError, data: EC2.Types.DescribeBundleTasksResult) => void): Request<EC2.Types.DescribeBundleTasksResult, AWSError>;
2671 /**
2672 * Waits for the conversionTaskCancelled state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
2673 */
2674 waitFor(state: "conversionTaskCancelled", params: EC2.Types.DescribeConversionTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
2675 /**
2676 * Waits for the conversionTaskCancelled state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
2677 */
2678 waitFor(state: "conversionTaskCancelled", callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
2679 /**
2680 * Waits for the conversionTaskCompleted state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
2681 */
2682 waitFor(state: "conversionTaskCompleted", params: EC2.Types.DescribeConversionTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
2683 /**
2684 * Waits for the conversionTaskCompleted state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
2685 */
2686 waitFor(state: "conversionTaskCompleted", callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
2687 /**
2688 * Waits for the conversionTaskDeleted state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
2689 */
2690 waitFor(state: "conversionTaskDeleted", params: EC2.Types.DescribeConversionTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
2691 /**
2692 * Waits for the conversionTaskDeleted state by periodically calling the underlying EC2.describeConversionTasksoperation every 15 seconds (at most 40 times).
2693 */
2694 waitFor(state: "conversionTaskDeleted", callback?: (err: AWSError, data: EC2.Types.DescribeConversionTasksResult) => void): Request<EC2.Types.DescribeConversionTasksResult, AWSError>;
2695 /**
2696 * Waits for the customerGatewayAvailable state by periodically calling the underlying EC2.describeCustomerGatewaysoperation every 15 seconds (at most 40 times).
2697 */
2698 waitFor(state: "customerGatewayAvailable", params: EC2.Types.DescribeCustomerGatewaysRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeCustomerGatewaysResult) => void): Request<EC2.Types.DescribeCustomerGatewaysResult, AWSError>;
2699 /**
2700 * Waits for the customerGatewayAvailable state by periodically calling the underlying EC2.describeCustomerGatewaysoperation every 15 seconds (at most 40 times).
2701 */
2702 waitFor(state: "customerGatewayAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeCustomerGatewaysResult) => void): Request<EC2.Types.DescribeCustomerGatewaysResult, AWSError>;
2703 /**
2704 * Waits for the exportTaskCancelled state by periodically calling the underlying EC2.describeExportTasksoperation every 15 seconds (at most 40 times).
2705 */
2706 waitFor(state: "exportTaskCancelled", params: EC2.Types.DescribeExportTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
2707 /**
2708 * Waits for the exportTaskCancelled state by periodically calling the underlying EC2.describeExportTasksoperation every 15 seconds (at most 40 times).
2709 */
2710 waitFor(state: "exportTaskCancelled", callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
2711 /**
2712 * Waits for the exportTaskCompleted state by periodically calling the underlying EC2.describeExportTasksoperation every 15 seconds (at most 40 times).
2713 */
2714 waitFor(state: "exportTaskCompleted", params: EC2.Types.DescribeExportTasksRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
2715 /**
2716 * Waits for the exportTaskCompleted state by periodically calling the underlying EC2.describeExportTasksoperation every 15 seconds (at most 40 times).
2717 */
2718 waitFor(state: "exportTaskCompleted", callback?: (err: AWSError, data: EC2.Types.DescribeExportTasksResult) => void): Request<EC2.Types.DescribeExportTasksResult, AWSError>;
2719 /**
2720 * Waits for the imageExists state by periodically calling the underlying EC2.describeImagesoperation every 15 seconds (at most 40 times).
2721 */
2722 waitFor(state: "imageExists", params: EC2.Types.DescribeImagesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
2723 /**
2724 * Waits for the imageExists state by periodically calling the underlying EC2.describeImagesoperation every 15 seconds (at most 40 times).
2725 */
2726 waitFor(state: "imageExists", callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
2727 /**
2728 * Waits for the imageAvailable state by periodically calling the underlying EC2.describeImagesoperation every 15 seconds (at most 40 times).
2729 */
2730 waitFor(state: "imageAvailable", params: EC2.Types.DescribeImagesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
2731 /**
2732 * Waits for the imageAvailable state by periodically calling the underlying EC2.describeImagesoperation every 15 seconds (at most 40 times).
2733 */
2734 waitFor(state: "imageAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeImagesResult) => void): Request<EC2.Types.DescribeImagesResult, AWSError>;
2735 /**
2736 * Waits for the instanceRunning state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
2737 */
2738 waitFor(state: "instanceRunning", params: EC2.Types.DescribeInstancesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
2739 /**
2740 * Waits for the instanceRunning state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
2741 */
2742 waitFor(state: "instanceRunning", callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
2743 /**
2744 * Waits for the instanceStatusOk state by periodically calling the underlying EC2.describeInstanceStatusoperation every 15 seconds (at most 40 times).
2745 */
2746 waitFor(state: "instanceStatusOk", params: EC2.Types.DescribeInstanceStatusRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
2747 /**
2748 * Waits for the instanceStatusOk state by periodically calling the underlying EC2.describeInstanceStatusoperation every 15 seconds (at most 40 times).
2749 */
2750 waitFor(state: "instanceStatusOk", callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
2751 /**
2752 * Waits for the instanceStopped state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
2753 */
2754 waitFor(state: "instanceStopped", params: EC2.Types.DescribeInstancesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
2755 /**
2756 * Waits for the instanceStopped state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
2757 */
2758 waitFor(state: "instanceStopped", callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
2759 /**
2760 * Waits for the instanceTerminated state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
2761 */
2762 waitFor(state: "instanceTerminated", params: EC2.Types.DescribeInstancesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
2763 /**
2764 * Waits for the instanceTerminated state by periodically calling the underlying EC2.describeInstancesoperation every 15 seconds (at most 40 times).
2765 */
2766 waitFor(state: "instanceTerminated", callback?: (err: AWSError, data: EC2.Types.DescribeInstancesResult) => void): Request<EC2.Types.DescribeInstancesResult, AWSError>;
2767 /**
2768 * Waits for the keyPairExists state by periodically calling the underlying EC2.describeKeyPairsoperation every 5 seconds (at most 6 times).
2769 */
2770 waitFor(state: "keyPairExists", params: EC2.Types.DescribeKeyPairsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeKeyPairsResult) => void): Request<EC2.Types.DescribeKeyPairsResult, AWSError>;
2771 /**
2772 * Waits for the keyPairExists state by periodically calling the underlying EC2.describeKeyPairsoperation every 5 seconds (at most 6 times).
2773 */
2774 waitFor(state: "keyPairExists", callback?: (err: AWSError, data: EC2.Types.DescribeKeyPairsResult) => void): Request<EC2.Types.DescribeKeyPairsResult, AWSError>;
2775 /**
2776 * Waits for the natGatewayAvailable state by periodically calling the underlying EC2.describeNatGatewaysoperation every 15 seconds (at most 40 times).
2777 */
2778 waitFor(state: "natGatewayAvailable", params: EC2.Types.DescribeNatGatewaysRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeNatGatewaysResult) => void): Request<EC2.Types.DescribeNatGatewaysResult, AWSError>;
2779 /**
2780 * Waits for the natGatewayAvailable state by periodically calling the underlying EC2.describeNatGatewaysoperation every 15 seconds (at most 40 times).
2781 */
2782 waitFor(state: "natGatewayAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeNatGatewaysResult) => void): Request<EC2.Types.DescribeNatGatewaysResult, AWSError>;
2783 /**
2784 * Waits for the networkInterfaceAvailable state by periodically calling the underlying EC2.describeNetworkInterfacesoperation every 20 seconds (at most 10 times).
2785 */
2786 waitFor(state: "networkInterfaceAvailable", params: EC2.Types.DescribeNetworkInterfacesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacesResult) => void): Request<EC2.Types.DescribeNetworkInterfacesResult, AWSError>;
2787 /**
2788 * Waits for the networkInterfaceAvailable state by periodically calling the underlying EC2.describeNetworkInterfacesoperation every 20 seconds (at most 10 times).
2789 */
2790 waitFor(state: "networkInterfaceAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeNetworkInterfacesResult) => void): Request<EC2.Types.DescribeNetworkInterfacesResult, AWSError>;
2791 /**
2792 * Waits for the passwordDataAvailable state by periodically calling the underlying EC2.getPasswordDataoperation every 15 seconds (at most 40 times).
2793 */
2794 waitFor(state: "passwordDataAvailable", params: EC2.Types.GetPasswordDataRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.GetPasswordDataResult) => void): Request<EC2.Types.GetPasswordDataResult, AWSError>;
2795 /**
2796 * Waits for the passwordDataAvailable state by periodically calling the underlying EC2.getPasswordDataoperation every 15 seconds (at most 40 times).
2797 */
2798 waitFor(state: "passwordDataAvailable", callback?: (err: AWSError, data: EC2.Types.GetPasswordDataResult) => void): Request<EC2.Types.GetPasswordDataResult, AWSError>;
2799 /**
2800 * Waits for the snapshotCompleted state by periodically calling the underlying EC2.describeSnapshotsoperation every 15 seconds (at most 40 times).
2801 */
2802 waitFor(state: "snapshotCompleted", params: EC2.Types.DescribeSnapshotsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotsResult) => void): Request<EC2.Types.DescribeSnapshotsResult, AWSError>;
2803 /**
2804 * Waits for the snapshotCompleted state by periodically calling the underlying EC2.describeSnapshotsoperation every 15 seconds (at most 40 times).
2805 */
2806 waitFor(state: "snapshotCompleted", callback?: (err: AWSError, data: EC2.Types.DescribeSnapshotsResult) => void): Request<EC2.Types.DescribeSnapshotsResult, AWSError>;
2807 /**
2808 * Waits for the spotInstanceRequestFulfilled state by periodically calling the underlying EC2.describeSpotInstanceRequestsoperation every 15 seconds (at most 40 times).
2809 */
2810 waitFor(state: "spotInstanceRequestFulfilled", params: EC2.Types.DescribeSpotInstanceRequestsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeSpotInstanceRequestsResult) => void): Request<EC2.Types.DescribeSpotInstanceRequestsResult, AWSError>;
2811 /**
2812 * Waits for the spotInstanceRequestFulfilled state by periodically calling the underlying EC2.describeSpotInstanceRequestsoperation every 15 seconds (at most 40 times).
2813 */
2814 waitFor(state: "spotInstanceRequestFulfilled", callback?: (err: AWSError, data: EC2.Types.DescribeSpotInstanceRequestsResult) => void): Request<EC2.Types.DescribeSpotInstanceRequestsResult, AWSError>;
2815 /**
2816 * Waits for the subnetAvailable state by periodically calling the underlying EC2.describeSubnetsoperation every 15 seconds (at most 40 times).
2817 */
2818 waitFor(state: "subnetAvailable", params: EC2.Types.DescribeSubnetsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeSubnetsResult) => void): Request<EC2.Types.DescribeSubnetsResult, AWSError>;
2819 /**
2820 * Waits for the subnetAvailable state by periodically calling the underlying EC2.describeSubnetsoperation every 15 seconds (at most 40 times).
2821 */
2822 waitFor(state: "subnetAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeSubnetsResult) => void): Request<EC2.Types.DescribeSubnetsResult, AWSError>;
2823 /**
2824 * Waits for the systemStatusOk state by periodically calling the underlying EC2.describeInstanceStatusoperation every 15 seconds (at most 40 times).
2825 */
2826 waitFor(state: "systemStatusOk", params: EC2.Types.DescribeInstanceStatusRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
2827 /**
2828 * Waits for the systemStatusOk state by periodically calling the underlying EC2.describeInstanceStatusoperation every 15 seconds (at most 40 times).
2829 */
2830 waitFor(state: "systemStatusOk", callback?: (err: AWSError, data: EC2.Types.DescribeInstanceStatusResult) => void): Request<EC2.Types.DescribeInstanceStatusResult, AWSError>;
2831 /**
2832 * Waits for the volumeAvailable state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
2833 */
2834 waitFor(state: "volumeAvailable", params: EC2.Types.DescribeVolumesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
2835 /**
2836 * Waits for the volumeAvailable state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
2837 */
2838 waitFor(state: "volumeAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
2839 /**
2840 * Waits for the volumeDeleted state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
2841 */
2842 waitFor(state: "volumeDeleted", params: EC2.Types.DescribeVolumesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
2843 /**
2844 * Waits for the volumeDeleted state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
2845 */
2846 waitFor(state: "volumeDeleted", callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
2847 /**
2848 * Waits for the volumeInUse state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
2849 */
2850 waitFor(state: "volumeInUse", params: EC2.Types.DescribeVolumesRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
2851 /**
2852 * Waits for the volumeInUse state by periodically calling the underlying EC2.describeVolumesoperation every 15 seconds (at most 40 times).
2853 */
2854 waitFor(state: "volumeInUse", callback?: (err: AWSError, data: EC2.Types.DescribeVolumesResult) => void): Request<EC2.Types.DescribeVolumesResult, AWSError>;
2855 /**
2856 * Waits for the vpcAvailable state by periodically calling the underlying EC2.describeVpcsoperation every 15 seconds (at most 40 times).
2857 */
2858 waitFor(state: "vpcAvailable", params: EC2.Types.DescribeVpcsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
2859 /**
2860 * Waits for the vpcAvailable state by periodically calling the underlying EC2.describeVpcsoperation every 15 seconds (at most 40 times).
2861 */
2862 waitFor(state: "vpcAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
2863 /**
2864 * Waits for the vpcExists state by periodically calling the underlying EC2.describeVpcsoperation every 1 seconds (at most 5 times).
2865 */
2866 waitFor(state: "vpcExists", params: EC2.Types.DescribeVpcsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
2867 /**
2868 * Waits for the vpcExists state by periodically calling the underlying EC2.describeVpcsoperation every 1 seconds (at most 5 times).
2869 */
2870 waitFor(state: "vpcExists", callback?: (err: AWSError, data: EC2.Types.DescribeVpcsResult) => void): Request<EC2.Types.DescribeVpcsResult, AWSError>;
2871 /**
2872 * Waits for the vpnConnectionAvailable state by periodically calling the underlying EC2.describeVpnConnectionsoperation every 15 seconds (at most 40 times).
2873 */
2874 waitFor(state: "vpnConnectionAvailable", params: EC2.Types.DescribeVpnConnectionsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
2875 /**
2876 * Waits for the vpnConnectionAvailable state by periodically calling the underlying EC2.describeVpnConnectionsoperation every 15 seconds (at most 40 times).
2877 */
2878 waitFor(state: "vpnConnectionAvailable", callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
2879 /**
2880 * Waits for the vpnConnectionDeleted state by periodically calling the underlying EC2.describeVpnConnectionsoperation every 15 seconds (at most 40 times).
2881 */
2882 waitFor(state: "vpnConnectionDeleted", params: EC2.Types.DescribeVpnConnectionsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
2883 /**
2884 * Waits for the vpnConnectionDeleted state by periodically calling the underlying EC2.describeVpnConnectionsoperation every 15 seconds (at most 40 times).
2885 */
2886 waitFor(state: "vpnConnectionDeleted", callback?: (err: AWSError, data: EC2.Types.DescribeVpnConnectionsResult) => void): Request<EC2.Types.DescribeVpnConnectionsResult, AWSError>;
2887 /**
2888 * Waits for the vpcPeeringConnectionExists state by periodically calling the underlying EC2.describeVpcPeeringConnectionsoperation every 15 seconds (at most 40 times).
2889 */
2890 waitFor(state: "vpcPeeringConnectionExists", params: EC2.Types.DescribeVpcPeeringConnectionsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
2891 /**
2892 * Waits for the vpcPeeringConnectionExists state by periodically calling the underlying EC2.describeVpcPeeringConnectionsoperation every 15 seconds (at most 40 times).
2893 */
2894 waitFor(state: "vpcPeeringConnectionExists", callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
2895 /**
2896 * Waits for the vpcPeeringConnectionDeleted state by periodically calling the underlying EC2.describeVpcPeeringConnectionsoperation every 15 seconds (at most 40 times).
2897 */
2898 waitFor(state: "vpcPeeringConnectionDeleted", params: EC2.Types.DescribeVpcPeeringConnectionsRequest & {$waiter?: WaiterConfiguration}, callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
2899 /**
2900 * Waits for the vpcPeeringConnectionDeleted state by periodically calling the underlying EC2.describeVpcPeeringConnectionsoperation every 15 seconds (at most 40 times).
2901 */
2902 waitFor(state: "vpcPeeringConnectionDeleted", callback?: (err: AWSError, data: EC2.Types.DescribeVpcPeeringConnectionsResult) => void): Request<EC2.Types.DescribeVpcPeeringConnectionsResult, AWSError>;
2903}
2904declare namespace EC2 {
2905 export interface AcceptReservedInstancesExchangeQuoteRequest {
2906 /**
2907 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
2908 */
2909 DryRun?: Boolean;
2910 /**
2911 * The IDs of the Convertible Reserved Instances to exchange for another Convertible Reserved Instance of the same or higher value.
2912 */
2913 ReservedInstanceIds: ReservedInstanceIdSet;
2914 /**
2915 * The configuration of the target Convertible Reserved Instance to exchange for your current Convertible Reserved Instances.
2916 */
2917 TargetConfigurations?: TargetConfigurationRequestSet;
2918 }
2919 export interface AcceptReservedInstancesExchangeQuoteResult {
2920 /**
2921 * The ID of the successful exchange.
2922 */
2923 ExchangeId?: String;
2924 }
2925 export interface AcceptTransitGatewayVpcAttachmentRequest {
2926 /**
2927 * The ID of the attachment.
2928 */
2929 TransitGatewayAttachmentId: String;
2930 /**
2931 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
2932 */
2933 DryRun?: Boolean;
2934 }
2935 export interface AcceptTransitGatewayVpcAttachmentResult {
2936 /**
2937 * The VPC attachment.
2938 */
2939 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
2940 }
2941 export interface AcceptVpcEndpointConnectionsRequest {
2942 /**
2943 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
2944 */
2945 DryRun?: Boolean;
2946 /**
2947 * The ID of the endpoint service.
2948 */
2949 ServiceId: String;
2950 /**
2951 * The IDs of one or more interface VPC endpoints.
2952 */
2953 VpcEndpointIds: ValueStringList;
2954 }
2955 export interface AcceptVpcEndpointConnectionsResult {
2956 /**
2957 * Information about the interface endpoints that were not accepted, if applicable.
2958 */
2959 Unsuccessful?: UnsuccessfulItemSet;
2960 }
2961 export interface AcceptVpcPeeringConnectionRequest {
2962 /**
2963 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
2964 */
2965 DryRun?: Boolean;
2966 /**
2967 * The ID of the VPC peering connection. You must specify this parameter in the request.
2968 */
2969 VpcPeeringConnectionId?: String;
2970 }
2971 export interface AcceptVpcPeeringConnectionResult {
2972 /**
2973 * Information about the VPC peering connection.
2974 */
2975 VpcPeeringConnection?: VpcPeeringConnection;
2976 }
2977 export interface AccountAttribute {
2978 /**
2979 * The name of the account attribute.
2980 */
2981 AttributeName?: String;
2982 /**
2983 * One or more values for the account attribute.
2984 */
2985 AttributeValues?: AccountAttributeValueList;
2986 }
2987 export type AccountAttributeList = AccountAttribute[];
2988 export type AccountAttributeName = "supported-platforms"|"default-vpc"|string;
2989 export type AccountAttributeNameStringList = AccountAttributeName[];
2990 export interface AccountAttributeValue {
2991 /**
2992 * The value of the attribute.
2993 */
2994 AttributeValue?: String;
2995 }
2996 export type AccountAttributeValueList = AccountAttributeValue[];
2997 export interface ActiveInstance {
2998 /**
2999 * The ID of the instance.
3000 */
3001 InstanceId?: String;
3002 /**
3003 * The instance type.
3004 */
3005 InstanceType?: String;
3006 /**
3007 * The ID of the Spot Instance request.
3008 */
3009 SpotInstanceRequestId?: String;
3010 /**
3011 * The health status of the instance. If the status of either the instance status check or the system status check is impaired, the health status of the instance is unhealthy. Otherwise, the health status is healthy.
3012 */
3013 InstanceHealth?: InstanceHealthStatus;
3014 }
3015 export type ActiveInstanceSet = ActiveInstance[];
3016 export type ActivityStatus = "error"|"pending_fulfillment"|"pending_termination"|"fulfilled"|string;
3017 export interface Address {
3018 /**
3019 * The ID of the instance that the address is associated with (if any).
3020 */
3021 InstanceId?: String;
3022 /**
3023 * The Elastic IP address.
3024 */
3025 PublicIp?: String;
3026 /**
3027 * The ID representing the allocation of the address for use with EC2-VPC.
3028 */
3029 AllocationId?: String;
3030 /**
3031 * The ID representing the association of the address with an instance in a VPC.
3032 */
3033 AssociationId?: String;
3034 /**
3035 * Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).
3036 */
3037 Domain?: DomainType;
3038 /**
3039 * The ID of the network interface.
3040 */
3041 NetworkInterfaceId?: String;
3042 /**
3043 * The ID of the AWS account that owns the network interface.
3044 */
3045 NetworkInterfaceOwnerId?: String;
3046 /**
3047 * The private IP address associated with the Elastic IP address.
3048 */
3049 PrivateIpAddress?: String;
3050 /**
3051 * Any tags assigned to the Elastic IP address.
3052 */
3053 Tags?: TagList;
3054 /**
3055 * The ID of an address pool.
3056 */
3057 PublicIpv4Pool?: String;
3058 }
3059 export type AddressList = Address[];
3060 export interface AdvertiseByoipCidrRequest {
3061 /**
3062 * The IPv4 address range, in CIDR notation. This must be the exact range that you provisioned. You can't advertise only a portion of the provisioned range.
3063 */
3064 Cidr: String;
3065 /**
3066 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3067 */
3068 DryRun?: Boolean;
3069 }
3070 export interface AdvertiseByoipCidrResult {
3071 /**
3072 * Information about the address range.
3073 */
3074 ByoipCidr?: ByoipCidr;
3075 }
3076 export type Affinity = "default"|"host"|string;
3077 export interface AllocateAddressRequest {
3078 /**
3079 * Set to vpc to allocate the address for use with instances in a VPC. Default: The address is for use with instances in EC2-Classic.
3080 */
3081 Domain?: DomainType;
3082 /**
3083 * [EC2-VPC] The Elastic IP address to recover or an IPv4 address from an address pool.
3084 */
3085 Address?: String;
3086 /**
3087 * The ID of an address pool that you own. Use this parameter to let Amazon EC2 select an address from the address pool. To specify a specific address from the address pool, use the Address parameter instead.
3088 */
3089 PublicIpv4Pool?: String;
3090 /**
3091 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3092 */
3093 DryRun?: Boolean;
3094 }
3095 export interface AllocateAddressResult {
3096 /**
3097 * The Elastic IP address.
3098 */
3099 PublicIp?: String;
3100 /**
3101 * [EC2-VPC] The ID that AWS assigns to represent the allocation of the Elastic IP address for use with instances in a VPC.
3102 */
3103 AllocationId?: String;
3104 /**
3105 * The ID of an address pool.
3106 */
3107 PublicIpv4Pool?: String;
3108 /**
3109 * Indicates whether this Elastic IP address is for use with instances in EC2-Classic (standard) or instances in a VPC (vpc).
3110 */
3111 Domain?: DomainType;
3112 }
3113 export interface AllocateHostsRequest {
3114 /**
3115 * This is enabled by default. This property allows instances to be automatically placed onto available Dedicated Hosts, when you are launching instances without specifying a host ID. Default: Enabled
3116 */
3117 AutoPlacement?: AutoPlacement;
3118 /**
3119 * The Availability Zone for the Dedicated Hosts.
3120 */
3121 AvailabilityZone: String;
3122 /**
3123 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.
3124 */
3125 ClientToken?: String;
3126 /**
3127 * Specify the instance type for which to configure your Dedicated Hosts. When you specify the instance type, that is the only instance type that you can launch onto that host.
3128 */
3129 InstanceType: String;
3130 /**
3131 * The number of Dedicated Hosts to allocate to your account with these parameters.
3132 */
3133 Quantity: Integer;
3134 /**
3135 * The tags to apply to the Dedicated Host during creation.
3136 */
3137 TagSpecifications?: TagSpecificationList;
3138 }
3139 export interface AllocateHostsResult {
3140 /**
3141 * The ID of the allocated Dedicated Host. This is used to launch an instance onto a specific host.
3142 */
3143 HostIds?: ResponseHostIdList;
3144 }
3145 export type AllocationIdList = String[];
3146 export type AllocationState = "available"|"under-assessment"|"permanent-failure"|"released"|"released-permanent-failure"|string;
3147 export type AllocationStrategy = "lowestPrice"|"diversified"|string;
3148 export interface AllowedPrincipal {
3149 /**
3150 * The type of principal.
3151 */
3152 PrincipalType?: PrincipalType;
3153 /**
3154 * The Amazon Resource Name (ARN) of the principal.
3155 */
3156 Principal?: String;
3157 }
3158 export type AllowedPrincipalSet = AllowedPrincipal[];
3159 export interface ApplySecurityGroupsToClientVpnTargetNetworkRequest {
3160 /**
3161 * The ID of the Client VPN endpoint.
3162 */
3163 ClientVpnEndpointId: String;
3164 /**
3165 * The ID of the VPC in which the associated target network is located.
3166 */
3167 VpcId: String;
3168 /**
3169 * The IDs of the security groups to apply to the associated target network. Up to 5 security groups can be applied to an associated target network.
3170 */
3171 SecurityGroupIds: ClientVpnSecurityGroupIdSet;
3172 /**
3173 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3174 */
3175 DryRun?: Boolean;
3176 }
3177 export interface ApplySecurityGroupsToClientVpnTargetNetworkResult {
3178 /**
3179 * The IDs of the applied security groups.
3180 */
3181 SecurityGroupIds?: ClientVpnSecurityGroupIdSet;
3182 }
3183 export type ArchitectureValues = "i386"|"x86_64"|"arm64"|string;
3184 export interface AssignIpv6AddressesRequest {
3185 /**
3186 * The number of IPv6 addresses to assign to the network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.
3187 */
3188 Ipv6AddressCount?: Integer;
3189 /**
3190 * One or more specific IPv6 addresses to be assigned to the network interface. You can't use this option if you're specifying a number of IPv6 addresses.
3191 */
3192 Ipv6Addresses?: Ipv6AddressList;
3193 /**
3194 * The ID of the network interface.
3195 */
3196 NetworkInterfaceId: String;
3197 }
3198 export interface AssignIpv6AddressesResult {
3199 /**
3200 * The IPv6 addresses assigned to the network interface.
3201 */
3202 AssignedIpv6Addresses?: Ipv6AddressList;
3203 /**
3204 * The ID of the network interface.
3205 */
3206 NetworkInterfaceId?: String;
3207 }
3208 export interface AssignPrivateIpAddressesRequest {
3209 /**
3210 * Indicates whether to allow an IP address that is already assigned to another network interface or instance to be reassigned to the specified network interface.
3211 */
3212 AllowReassignment?: Boolean;
3213 /**
3214 * The ID of the network interface.
3215 */
3216 NetworkInterfaceId: String;
3217 /**
3218 * One or more IP addresses to be assigned as a secondary private IP address to the network interface. You can't specify this parameter when also specifying a number of secondary IP addresses. If you don't specify an IP address, Amazon EC2 automatically selects an IP address within the subnet range.
3219 */
3220 PrivateIpAddresses?: PrivateIpAddressStringList;
3221 /**
3222 * The number of secondary IP addresses to assign to the network interface. You can't specify this parameter when also specifying private IP addresses.
3223 */
3224 SecondaryPrivateIpAddressCount?: Integer;
3225 }
3226 export interface AssociateAddressRequest {
3227 /**
3228 * [EC2-VPC] The allocation ID. This is required for EC2-VPC.
3229 */
3230 AllocationId?: String;
3231 /**
3232 * The ID of the instance. This is required for EC2-Classic. For EC2-VPC, you can specify either the instance ID or the network interface ID, but not both. The operation fails if you specify an instance ID unless exactly one network interface is attached.
3233 */
3234 InstanceId?: String;
3235 /**
3236 * The Elastic IP address. This is required for EC2-Classic.
3237 */
3238 PublicIp?: String;
3239 /**
3240 * [EC2-VPC] For a VPC in an EC2-Classic account, specify true to allow an Elastic IP address that is already associated with an instance or network interface to be reassociated with the specified instance or network interface. Otherwise, the operation fails. In a VPC in an EC2-VPC-only account, reassociation is automatic, therefore you can specify false to ensure the operation fails if the Elastic IP address is already associated with another resource.
3241 */
3242 AllowReassociation?: Boolean;
3243 /**
3244 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3245 */
3246 DryRun?: Boolean;
3247 /**
3248 * [EC2-VPC] The ID of the network interface. If the instance has more than one network interface, you must specify a network interface ID.
3249 */
3250 NetworkInterfaceId?: String;
3251 /**
3252 * [EC2-VPC] The primary or secondary private IP address to associate with the Elastic IP address. If no private IP address is specified, the Elastic IP address is associated with the primary private IP address.
3253 */
3254 PrivateIpAddress?: String;
3255 }
3256 export interface AssociateAddressResult {
3257 /**
3258 * [EC2-VPC] The ID that represents the association of the Elastic IP address with an instance.
3259 */
3260 AssociationId?: String;
3261 }
3262 export interface AssociateClientVpnTargetNetworkRequest {
3263 /**
3264 * The ID of the Client VPN endpoint.
3265 */
3266 ClientVpnEndpointId: String;
3267 /**
3268 * The ID of the subnet to associate with the Client VPN endpoint.
3269 */
3270 SubnetId: String;
3271 /**
3272 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3273 */
3274 DryRun?: Boolean;
3275 }
3276 export interface AssociateClientVpnTargetNetworkResult {
3277 /**
3278 * The unique ID of the target network association.
3279 */
3280 AssociationId?: String;
3281 /**
3282 * The current state of the target network association.
3283 */
3284 Status?: AssociationStatus;
3285 }
3286 export interface AssociateDhcpOptionsRequest {
3287 /**
3288 * The ID of the DHCP options set, or default to associate no DHCP options with the VPC.
3289 */
3290 DhcpOptionsId: String;
3291 /**
3292 * The ID of the VPC.
3293 */
3294 VpcId: String;
3295 /**
3296 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3297 */
3298 DryRun?: Boolean;
3299 }
3300 export interface AssociateIamInstanceProfileRequest {
3301 /**
3302 * The IAM instance profile.
3303 */
3304 IamInstanceProfile: IamInstanceProfileSpecification;
3305 /**
3306 * The ID of the instance.
3307 */
3308 InstanceId: String;
3309 }
3310 export interface AssociateIamInstanceProfileResult {
3311 /**
3312 * Information about the IAM instance profile association.
3313 */
3314 IamInstanceProfileAssociation?: IamInstanceProfileAssociation;
3315 }
3316 export interface AssociateRouteTableRequest {
3317 /**
3318 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3319 */
3320 DryRun?: Boolean;
3321 /**
3322 * The ID of the route table.
3323 */
3324 RouteTableId: String;
3325 /**
3326 * The ID of the subnet.
3327 */
3328 SubnetId: String;
3329 }
3330 export interface AssociateRouteTableResult {
3331 /**
3332 * The route table association ID. This ID is required for disassociating the route table.
3333 */
3334 AssociationId?: String;
3335 }
3336 export interface AssociateSubnetCidrBlockRequest {
3337 /**
3338 * The IPv6 CIDR block for your subnet. The subnet must have a /64 prefix length.
3339 */
3340 Ipv6CidrBlock: String;
3341 /**
3342 * The ID of your subnet.
3343 */
3344 SubnetId: String;
3345 }
3346 export interface AssociateSubnetCidrBlockResult {
3347 /**
3348 * Information about the IPv6 CIDR block association.
3349 */
3350 Ipv6CidrBlockAssociation?: SubnetIpv6CidrBlockAssociation;
3351 /**
3352 * The ID of the subnet.
3353 */
3354 SubnetId?: String;
3355 }
3356 export interface AssociateTransitGatewayRouteTableRequest {
3357 /**
3358 * The ID of the transit gateway route table.
3359 */
3360 TransitGatewayRouteTableId: String;
3361 /**
3362 * The ID of the attachment.
3363 */
3364 TransitGatewayAttachmentId: String;
3365 /**
3366 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3367 */
3368 DryRun?: Boolean;
3369 }
3370 export interface AssociateTransitGatewayRouteTableResult {
3371 /**
3372 * The ID of the association.
3373 */
3374 Association?: TransitGatewayAssociation;
3375 }
3376 export interface AssociateVpcCidrBlockRequest {
3377 /**
3378 * Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IPv6 addresses, or the size of the CIDR block.
3379 */
3380 AmazonProvidedIpv6CidrBlock?: Boolean;
3381 /**
3382 * An IPv4 CIDR block to associate with the VPC.
3383 */
3384 CidrBlock?: String;
3385 /**
3386 * The ID of the VPC.
3387 */
3388 VpcId: String;
3389 }
3390 export interface AssociateVpcCidrBlockResult {
3391 /**
3392 * Information about the IPv6 CIDR block association.
3393 */
3394 Ipv6CidrBlockAssociation?: VpcIpv6CidrBlockAssociation;
3395 /**
3396 * Information about the IPv4 CIDR block association.
3397 */
3398 CidrBlockAssociation?: VpcCidrBlockAssociation;
3399 /**
3400 * The ID of the VPC.
3401 */
3402 VpcId?: String;
3403 }
3404 export type AssociatedNetworkType = "vpc"|string;
3405 export interface AssociatedTargetNetwork {
3406 /**
3407 * The ID of the subnet.
3408 */
3409 NetworkId?: String;
3410 /**
3411 * The target network type.
3412 */
3413 NetworkType?: AssociatedNetworkType;
3414 }
3415 export type AssociatedTargetNetworkSet = AssociatedTargetNetwork[];
3416 export type AssociationIdList = String[];
3417 export interface AssociationStatus {
3418 /**
3419 * The state of the target network association.
3420 */
3421 Code?: AssociationStatusCode;
3422 /**
3423 * A message about the status of the target network association, if applicable.
3424 */
3425 Message?: String;
3426 }
3427 export type AssociationStatusCode = "associating"|"associated"|"association-failed"|"disassociating"|"disassociated"|string;
3428 export interface AttachClassicLinkVpcRequest {
3429 /**
3430 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3431 */
3432 DryRun?: Boolean;
3433 /**
3434 * The ID of one or more of the VPC's security groups. You cannot specify security groups from a different VPC.
3435 */
3436 Groups: GroupIdStringList;
3437 /**
3438 * The ID of an EC2-Classic instance to link to the ClassicLink-enabled VPC.
3439 */
3440 InstanceId: String;
3441 /**
3442 * The ID of a ClassicLink-enabled VPC.
3443 */
3444 VpcId: String;
3445 }
3446 export interface AttachClassicLinkVpcResult {
3447 /**
3448 * Returns true if the request succeeds; otherwise, it returns an error.
3449 */
3450 Return?: Boolean;
3451 }
3452 export interface AttachInternetGatewayRequest {
3453 /**
3454 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3455 */
3456 DryRun?: Boolean;
3457 /**
3458 * The ID of the internet gateway.
3459 */
3460 InternetGatewayId: String;
3461 /**
3462 * The ID of the VPC.
3463 */
3464 VpcId: String;
3465 }
3466 export interface AttachNetworkInterfaceRequest {
3467 /**
3468 * The index of the device for the network interface attachment.
3469 */
3470 DeviceIndex: Integer;
3471 /**
3472 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3473 */
3474 DryRun?: Boolean;
3475 /**
3476 * The ID of the instance.
3477 */
3478 InstanceId: String;
3479 /**
3480 * The ID of the network interface.
3481 */
3482 NetworkInterfaceId: String;
3483 }
3484 export interface AttachNetworkInterfaceResult {
3485 /**
3486 * The ID of the network interface attachment.
3487 */
3488 AttachmentId?: String;
3489 }
3490 export interface AttachVolumeRequest {
3491 /**
3492 * The device name (for example, /dev/sdh or xvdh).
3493 */
3494 Device: String;
3495 /**
3496 * The ID of the instance.
3497 */
3498 InstanceId: String;
3499 /**
3500 * The ID of the EBS volume. The volume and instance must be within the same Availability Zone.
3501 */
3502 VolumeId: String;
3503 /**
3504 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3505 */
3506 DryRun?: Boolean;
3507 }
3508 export interface AttachVpnGatewayRequest {
3509 /**
3510 * The ID of the VPC.
3511 */
3512 VpcId: String;
3513 /**
3514 * The ID of the virtual private gateway.
3515 */
3516 VpnGatewayId: String;
3517 /**
3518 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3519 */
3520 DryRun?: Boolean;
3521 }
3522 export interface AttachVpnGatewayResult {
3523 /**
3524 * Information about the attachment.
3525 */
3526 VpcAttachment?: VpcAttachment;
3527 }
3528 export type AttachmentStatus = "attaching"|"attached"|"detaching"|"detached"|string;
3529 export interface AttributeBooleanValue {
3530 /**
3531 * The attribute value. The valid values are true or false.
3532 */
3533 Value?: Boolean;
3534 }
3535 export interface AttributeValue {
3536 /**
3537 * The attribute value. The value is case-sensitive.
3538 */
3539 Value?: String;
3540 }
3541 export interface AuthorizationRule {
3542 /**
3543 * The ID of the Client VPN endpoint with which the authorization rule is associated.
3544 */
3545 ClientVpnEndpointId?: String;
3546 /**
3547 * A brief description of the authorization rule.
3548 */
3549 Description?: String;
3550 /**
3551 * The ID of the Active Directory group to which the authorization rule grants access.
3552 */
3553 GroupId?: String;
3554 /**
3555 * Indicates whether the authorization rule grants access to all clients.
3556 */
3557 AccessAll?: Boolean;
3558 /**
3559 * The IPv4 address range, in CIDR notation, of the network to which the authorization rule applies.
3560 */
3561 DestinationCidr?: String;
3562 /**
3563 * The current state of the authorization rule.
3564 */
3565 Status?: ClientVpnAuthorizationRuleStatus;
3566 }
3567 export type AuthorizationRuleSet = AuthorizationRule[];
3568 export interface AuthorizeClientVpnIngressRequest {
3569 /**
3570 * The ID of the Client VPN endpoint.
3571 */
3572 ClientVpnEndpointId: String;
3573 /**
3574 * The IPv4 address range, in CIDR notation, of the network for which access is being authorized.
3575 */
3576 TargetNetworkCidr: String;
3577 /**
3578 * The ID of the Active Directory group to grant access.
3579 */
3580 AccessGroupId?: String;
3581 /**
3582 * Indicates whether to grant access to all clients. Use true to grant all clients who successfully establish a VPN connection access to the network.
3583 */
3584 AuthorizeAllGroups?: Boolean;
3585 /**
3586 * A brief description of the authorization rule.
3587 */
3588 Description?: String;
3589 /**
3590 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3591 */
3592 DryRun?: Boolean;
3593 }
3594 export interface AuthorizeClientVpnIngressResult {
3595 /**
3596 * The current state of the authorization rule.
3597 */
3598 Status?: ClientVpnAuthorizationRuleStatus;
3599 }
3600 export interface AuthorizeSecurityGroupEgressRequest {
3601 /**
3602 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3603 */
3604 DryRun?: Boolean;
3605 /**
3606 * The ID of the security group.
3607 */
3608 GroupId: String;
3609 /**
3610 * One or more sets of IP permissions. You can't specify a destination security group and a CIDR IP address range in the same set of permissions.
3611 */
3612 IpPermissions?: IpPermissionList;
3613 /**
3614 * Not supported. Use a set of IP permissions to specify the CIDR.
3615 */
3616 CidrIp?: String;
3617 /**
3618 * Not supported. Use a set of IP permissions to specify the port.
3619 */
3620 FromPort?: Integer;
3621 /**
3622 * Not supported. Use a set of IP permissions to specify the protocol name or number.
3623 */
3624 IpProtocol?: String;
3625 /**
3626 * Not supported. Use a set of IP permissions to specify the port.
3627 */
3628 ToPort?: Integer;
3629 /**
3630 * Not supported. Use a set of IP permissions to specify a destination security group.
3631 */
3632 SourceSecurityGroupName?: String;
3633 /**
3634 * Not supported. Use a set of IP permissions to specify a destination security group.
3635 */
3636 SourceSecurityGroupOwnerId?: String;
3637 }
3638 export interface AuthorizeSecurityGroupIngressRequest {
3639 /**
3640 * The CIDR IPv4 address range. You can't specify this parameter when specifying a source security group.
3641 */
3642 CidrIp?: String;
3643 /**
3644 * The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. For the ICMP/ICMPv6 type number, use -1 to specify all types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
3645 */
3646 FromPort?: Integer;
3647 /**
3648 * The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.
3649 */
3650 GroupId?: String;
3651 /**
3652 * [EC2-Classic, default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request.
3653 */
3654 GroupName?: String;
3655 /**
3656 * One or more sets of IP permissions. Can be used to specify multiple rules in a single command.
3657 */
3658 IpPermissions?: IpPermissionList;
3659 /**
3660 * The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). (VPC only) Use -1 to specify all protocols. If you specify -1, or a protocol number other than tcp, udp, icmp, or 58 (ICMPv6), traffic on all ports is allowed, regardless of any ports you specify. For tcp, udp, and icmp, you must specify a port range. For protocol 58 (ICMPv6), you can optionally specify a port range; if you don't, traffic for all types and codes is allowed.
3661 */
3662 IpProtocol?: String;
3663 /**
3664 * [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead. For EC2-VPC, the source security group must be in the same VPC.
3665 */
3666 SourceSecurityGroupName?: String;
3667 /**
3668 * [nondefault VPC] The AWS account ID for the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. Creates rules that grant full ICMP, UDP, and TCP access. To create a rule with a specific IP protocol and port range, use a set of IP permissions instead.
3669 */
3670 SourceSecurityGroupOwnerId?: String;
3671 /**
3672 * The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code number. For the ICMP/ICMPv6 code number, use -1 to specify all codes. If you specify all ICMP/ICMPv6 types, you must specify all codes.
3673 */
3674 ToPort?: Integer;
3675 /**
3676 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3677 */
3678 DryRun?: Boolean;
3679 }
3680 export type AutoAcceptSharedAttachmentsValue = "enable"|"disable"|string;
3681 export type AutoPlacement = "on"|"off"|string;
3682 export interface AvailabilityZone {
3683 /**
3684 * The state of the Availability Zone.
3685 */
3686 State?: AvailabilityZoneState;
3687 /**
3688 * Any messages about the Availability Zone.
3689 */
3690 Messages?: AvailabilityZoneMessageList;
3691 /**
3692 * The name of the region.
3693 */
3694 RegionName?: String;
3695 /**
3696 * The name of the Availability Zone.
3697 */
3698 ZoneName?: String;
3699 /**
3700 * The ID of the Availability Zone.
3701 */
3702 ZoneId?: String;
3703 }
3704 export type AvailabilityZoneList = AvailabilityZone[];
3705 export interface AvailabilityZoneMessage {
3706 /**
3707 * The message about the Availability Zone.
3708 */
3709 Message?: String;
3710 }
3711 export type AvailabilityZoneMessageList = AvailabilityZoneMessage[];
3712 export type AvailabilityZoneState = "available"|"information"|"impaired"|"unavailable"|string;
3713 export interface AvailableCapacity {
3714 /**
3715 * The total number of instances supported by the Dedicated Host.
3716 */
3717 AvailableInstanceCapacity?: AvailableInstanceCapacityList;
3718 /**
3719 * The number of vCPUs available on the Dedicated Host.
3720 */
3721 AvailableVCpus?: Integer;
3722 }
3723 export type AvailableInstanceCapacityList = InstanceCapacity[];
3724 export type BatchState = "submitted"|"active"|"cancelled"|"failed"|"cancelled_running"|"cancelled_terminating"|"modifying"|string;
3725 export type BillingProductList = String[];
3726 export type _Blob = Buffer|Uint8Array|Blob|string;
3727 export interface BlobAttributeValue {
3728 Value?: _Blob;
3729 }
3730 export interface BlockDeviceMapping {
3731 /**
3732 * The device name (for example, /dev/sdh or xvdh).
3733 */
3734 DeviceName?: String;
3735 /**
3736 * The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume. NVMe instance store volumes are automatically enumerated and assigned a device name. Including them in your block device mapping has no effect. Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.
3737 */
3738 VirtualName?: String;
3739 /**
3740 * Parameters used to automatically set up EBS volumes when the instance is launched.
3741 */
3742 Ebs?: EbsBlockDevice;
3743 /**
3744 * Suppresses the specified device included in the block device mapping of the AMI.
3745 */
3746 NoDevice?: String;
3747 }
3748 export type BlockDeviceMappingList = BlockDeviceMapping[];
3749 export type BlockDeviceMappingRequestList = BlockDeviceMapping[];
3750 export type Boolean = boolean;
3751 export type BundleIdStringList = String[];
3752 export interface BundleInstanceRequest {
3753 /**
3754 * The ID of the instance to bundle. Type: String Default: None Required: Yes
3755 */
3756 InstanceId: String;
3757 /**
3758 * The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.
3759 */
3760 Storage: Storage;
3761 /**
3762 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3763 */
3764 DryRun?: Boolean;
3765 }
3766 export interface BundleInstanceResult {
3767 /**
3768 * Information about the bundle task.
3769 */
3770 BundleTask?: BundleTask;
3771 }
3772 export interface BundleTask {
3773 /**
3774 * The ID of the bundle task.
3775 */
3776 BundleId?: String;
3777 /**
3778 * If the task fails, a description of the error.
3779 */
3780 BundleTaskError?: BundleTaskError;
3781 /**
3782 * The ID of the instance associated with this bundle task.
3783 */
3784 InstanceId?: String;
3785 /**
3786 * The level of task completion, as a percent (for example, 20%).
3787 */
3788 Progress?: String;
3789 /**
3790 * The time this task started.
3791 */
3792 StartTime?: DateTime;
3793 /**
3794 * The state of the task.
3795 */
3796 State?: BundleTaskState;
3797 /**
3798 * The Amazon S3 storage locations.
3799 */
3800 Storage?: Storage;
3801 /**
3802 * The time of the most recent update for the task.
3803 */
3804 UpdateTime?: DateTime;
3805 }
3806 export interface BundleTaskError {
3807 /**
3808 * The error code.
3809 */
3810 Code?: String;
3811 /**
3812 * The error message.
3813 */
3814 Message?: String;
3815 }
3816 export type BundleTaskList = BundleTask[];
3817 export type BundleTaskState = "pending"|"waiting-for-shutdown"|"bundling"|"storing"|"cancelling"|"complete"|"failed"|string;
3818 export interface ByoipCidr {
3819 /**
3820 * The public IPv4 address range, in CIDR notation.
3821 */
3822 Cidr?: String;
3823 /**
3824 * The description of the address range.
3825 */
3826 Description?: String;
3827 /**
3828 * Upon success, contains the ID of the address pool. Otherwise, contains an error message.
3829 */
3830 StatusMessage?: String;
3831 /**
3832 * The state of the address pool.
3833 */
3834 State?: ByoipCidrState;
3835 }
3836 export type ByoipCidrSet = ByoipCidr[];
3837 export type ByoipCidrState = "advertised"|"deprovisioned"|"failed-deprovision"|"failed-provision"|"pending-deprovision"|"pending-provision"|"provisioned"|string;
3838 export type CancelBatchErrorCode = "fleetRequestIdDoesNotExist"|"fleetRequestIdMalformed"|"fleetRequestNotInCancellableState"|"unexpectedError"|string;
3839 export interface CancelBundleTaskRequest {
3840 /**
3841 * The ID of the bundle task.
3842 */
3843 BundleId: String;
3844 /**
3845 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3846 */
3847 DryRun?: Boolean;
3848 }
3849 export interface CancelBundleTaskResult {
3850 /**
3851 * Information about the bundle task.
3852 */
3853 BundleTask?: BundleTask;
3854 }
3855 export interface CancelCapacityReservationRequest {
3856 /**
3857 * The ID of the Capacity Reservation to be cancelled.
3858 */
3859 CapacityReservationId: String;
3860 /**
3861 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3862 */
3863 DryRun?: Boolean;
3864 }
3865 export interface CancelCapacityReservationResult {
3866 /**
3867 * Returns true if the request succeeds; otherwise, it returns an error.
3868 */
3869 Return?: Boolean;
3870 }
3871 export interface CancelConversionRequest {
3872 /**
3873 * The ID of the conversion task.
3874 */
3875 ConversionTaskId: String;
3876 /**
3877 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3878 */
3879 DryRun?: Boolean;
3880 /**
3881 * The reason for canceling the conversion task.
3882 */
3883 ReasonMessage?: String;
3884 }
3885 export interface CancelExportTaskRequest {
3886 /**
3887 * The ID of the export task. This is the ID returned by CreateInstanceExportTask.
3888 */
3889 ExportTaskId: String;
3890 }
3891 export interface CancelImportTaskRequest {
3892 /**
3893 * The reason for canceling the task.
3894 */
3895 CancelReason?: String;
3896 /**
3897 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3898 */
3899 DryRun?: Boolean;
3900 /**
3901 * The ID of the import image or import snapshot task to be canceled.
3902 */
3903 ImportTaskId?: String;
3904 }
3905 export interface CancelImportTaskResult {
3906 /**
3907 * The ID of the task being canceled.
3908 */
3909 ImportTaskId?: String;
3910 /**
3911 * The current state of the task being canceled.
3912 */
3913 PreviousState?: String;
3914 /**
3915 * The current state of the task being canceled.
3916 */
3917 State?: String;
3918 }
3919 export interface CancelReservedInstancesListingRequest {
3920 /**
3921 * The ID of the Reserved Instance listing.
3922 */
3923 ReservedInstancesListingId: String;
3924 }
3925 export interface CancelReservedInstancesListingResult {
3926 /**
3927 * The Reserved Instance listing.
3928 */
3929 ReservedInstancesListings?: ReservedInstancesListingList;
3930 }
3931 export interface CancelSpotFleetRequestsError {
3932 /**
3933 * The error code.
3934 */
3935 Code?: CancelBatchErrorCode;
3936 /**
3937 * The description for the error code.
3938 */
3939 Message?: String;
3940 }
3941 export interface CancelSpotFleetRequestsErrorItem {
3942 /**
3943 * The error.
3944 */
3945 Error?: CancelSpotFleetRequestsError;
3946 /**
3947 * The ID of the Spot Fleet request.
3948 */
3949 SpotFleetRequestId?: String;
3950 }
3951 export type CancelSpotFleetRequestsErrorSet = CancelSpotFleetRequestsErrorItem[];
3952 export interface CancelSpotFleetRequestsRequest {
3953 /**
3954 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3955 */
3956 DryRun?: Boolean;
3957 /**
3958 * The IDs of the Spot Fleet requests.
3959 */
3960 SpotFleetRequestIds: ValueStringList;
3961 /**
3962 * Indicates whether to terminate instances for a Spot Fleet request if it is canceled successfully.
3963 */
3964 TerminateInstances: Boolean;
3965 }
3966 export interface CancelSpotFleetRequestsResponse {
3967 /**
3968 * Information about the Spot Fleet requests that are successfully canceled.
3969 */
3970 SuccessfulFleetRequests?: CancelSpotFleetRequestsSuccessSet;
3971 /**
3972 * Information about the Spot Fleet requests that are not successfully canceled.
3973 */
3974 UnsuccessfulFleetRequests?: CancelSpotFleetRequestsErrorSet;
3975 }
3976 export interface CancelSpotFleetRequestsSuccessItem {
3977 /**
3978 * The current state of the Spot Fleet request.
3979 */
3980 CurrentSpotFleetRequestState?: BatchState;
3981 /**
3982 * The previous state of the Spot Fleet request.
3983 */
3984 PreviousSpotFleetRequestState?: BatchState;
3985 /**
3986 * The ID of the Spot Fleet request.
3987 */
3988 SpotFleetRequestId?: String;
3989 }
3990 export type CancelSpotFleetRequestsSuccessSet = CancelSpotFleetRequestsSuccessItem[];
3991 export type CancelSpotInstanceRequestState = "active"|"open"|"closed"|"cancelled"|"completed"|string;
3992 export interface CancelSpotInstanceRequestsRequest {
3993 /**
3994 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
3995 */
3996 DryRun?: Boolean;
3997 /**
3998 * One or more Spot Instance request IDs.
3999 */
4000 SpotInstanceRequestIds: SpotInstanceRequestIdList;
4001 }
4002 export interface CancelSpotInstanceRequestsResult {
4003 /**
4004 * One or more Spot Instance requests.
4005 */
4006 CancelledSpotInstanceRequests?: CancelledSpotInstanceRequestList;
4007 }
4008 export interface CancelledSpotInstanceRequest {
4009 /**
4010 * The ID of the Spot Instance request.
4011 */
4012 SpotInstanceRequestId?: String;
4013 /**
4014 * The state of the Spot Instance request.
4015 */
4016 State?: CancelSpotInstanceRequestState;
4017 }
4018 export type CancelledSpotInstanceRequestList = CancelledSpotInstanceRequest[];
4019 export interface CapacityReservation {
4020 /**
4021 * The ID of the Capacity Reservation.
4022 */
4023 CapacityReservationId?: String;
4024 /**
4025 * The type of instance for which the Capacity Reservation reserves capacity.
4026 */
4027 InstanceType?: String;
4028 /**
4029 * The type of operating system for which the Capacity Reservation reserves capacity.
4030 */
4031 InstancePlatform?: CapacityReservationInstancePlatform;
4032 /**
4033 * The Availability Zone in which the capacity is reserved.
4034 */
4035 AvailabilityZone?: String;
4036 /**
4037 * Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings: default - The Capacity Reservation is created on hardware that is shared with other AWS accounts. dedicated - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single AWS account.
4038 */
4039 Tenancy?: CapacityReservationTenancy;
4040 /**
4041 * The number of instances for which the Capacity Reservation reserves capacity.
4042 */
4043 TotalInstanceCount?: Integer;
4044 /**
4045 * The remaining capacity. Indicates the number of instances that can be launched in the Capacity Reservation.
4046 */
4047 AvailableInstanceCount?: Integer;
4048 /**
4049 * Indicates whether the Capacity Reservation supports EBS-optimized instances. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS- optimized instance.
4050 */
4051 EbsOptimized?: Boolean;
4052 /**
4053 * Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.
4054 */
4055 EphemeralStorage?: Boolean;
4056 /**
4057 * The current state of the Capacity Reservation. A Capacity Reservation can be in one of the following states: active - The Capacity Reservation is active and the capacity is available for your use. cancelled - The Capacity Reservation expired automatically at the date and time specified in your request. The reserved capacity is no longer available for your use. expired - The Capacity Reservation was manually cancelled. The reserved capacity is no longer available for your use. pending - The Capacity Reservation request was successful but the capacity provisioning is still pending. failed - The Capacity Reservation request has failed. A request might fail due to invalid request parameters, capacity constraints, or instance limit constraints. Failed requests are retained for 60 minutes.
4058 */
4059 State?: CapacityReservationState;
4060 /**
4061 * The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to expired when it reaches its end date and time.
4062 */
4063 EndDate?: DateTime;
4064 /**
4065 * Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types: unlimited - The Capacity Reservation remains active until you explicitly cancel it. limited - The Capacity Reservation expires automatically at a specified date and time.
4066 */
4067 EndDateType?: EndDateType;
4068 /**
4069 * Indicates the type of instance launches that the Capacity Reservation accepts. The options include: open - The Capacity Reservation accepts all instances that have matching attributes (instance type, platform, and Availability Zone). Instances that have matching attributes launch into the Capacity Reservation automatically without specifying any additional parameters. targeted - The Capacity Reservation only accepts instances that have matching attributes (instance type, platform, and Availability Zone), and explicitly target the Capacity Reservation. This ensures that only permitted instances can use the reserved capacity.
4070 */
4071 InstanceMatchCriteria?: InstanceMatchCriteria;
4072 /**
4073 * The date and time at which the Capacity Reservation was created.
4074 */
4075 CreateDate?: DateTime;
4076 /**
4077 * Any tags assigned to the Capacity Reservation.
4078 */
4079 Tags?: TagList;
4080 }
4081 export type CapacityReservationIdSet = String[];
4082 export type CapacityReservationInstancePlatform = "Linux/UNIX"|"Red Hat Enterprise Linux"|"SUSE Linux"|"Windows"|"Windows with SQL Server"|"Windows with SQL Server Enterprise"|"Windows with SQL Server Standard"|"Windows with SQL Server Web"|"Linux with SQL Server Standard"|"Linux with SQL Server Web"|"Linux with SQL Server Enterprise"|string;
4083 export type CapacityReservationPreference = "open"|"none"|string;
4084 export type CapacityReservationSet = CapacityReservation[];
4085 export interface CapacityReservationSpecification {
4086 /**
4087 * Indicates the instance's Capacity Reservation preferences. Possible preferences include: open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs as an On-Demand Instance.
4088 */
4089 CapacityReservationPreference?: CapacityReservationPreference;
4090 /**
4091 * Information about the target Capacity Reservation.
4092 */
4093 CapacityReservationTarget?: CapacityReservationTarget;
4094 }
4095 export interface CapacityReservationSpecificationResponse {
4096 /**
4097 * Describes the instance's Capacity Reservation preferences. Possible preferences include: open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
4098 */
4099 CapacityReservationPreference?: CapacityReservationPreference;
4100 /**
4101 * Information about the targeted Capacity Reservation.
4102 */
4103 CapacityReservationTarget?: CapacityReservationTargetResponse;
4104 }
4105 export type CapacityReservationState = "active"|"expired"|"cancelled"|"pending"|"failed"|string;
4106 export interface CapacityReservationTarget {
4107 /**
4108 * The ID of the Capacity Reservation.
4109 */
4110 CapacityReservationId?: String;
4111 }
4112 export interface CapacityReservationTargetResponse {
4113 /**
4114 * The ID of the Capacity Reservation.
4115 */
4116 CapacityReservationId?: String;
4117 }
4118 export type CapacityReservationTenancy = "default"|"dedicated"|string;
4119 export interface CertificateAuthentication {
4120 /**
4121 * The ARN of the client certificate.
4122 */
4123 ClientRootCertificateChain?: String;
4124 }
4125 export interface CertificateAuthenticationRequest {
4126 /**
4127 * The ARN of the client certificate. The certificate must be signed by a certificate authority (CA) and it must be provisioned in AWS Certificate Manager (ACM).
4128 */
4129 ClientRootCertificateChainArn?: String;
4130 }
4131 export interface CidrAuthorizationContext {
4132 /**
4133 * The plain-text authorization message for the prefix and account.
4134 */
4135 Message: String;
4136 /**
4137 * The signed authorization message for the prefix and account.
4138 */
4139 Signature: String;
4140 }
4141 export interface CidrBlock {
4142 /**
4143 * The IPv4 CIDR block.
4144 */
4145 CidrBlock?: String;
4146 }
4147 export type CidrBlockSet = CidrBlock[];
4148 export interface ClassicLinkDnsSupport {
4149 /**
4150 * Indicates whether ClassicLink DNS support is enabled for the VPC.
4151 */
4152 ClassicLinkDnsSupported?: Boolean;
4153 /**
4154 * The ID of the VPC.
4155 */
4156 VpcId?: String;
4157 }
4158 export type ClassicLinkDnsSupportList = ClassicLinkDnsSupport[];
4159 export interface ClassicLinkInstance {
4160 /**
4161 * A list of security groups.
4162 */
4163 Groups?: GroupIdentifierList;
4164 /**
4165 * The ID of the instance.
4166 */
4167 InstanceId?: String;
4168 /**
4169 * Any tags assigned to the instance.
4170 */
4171 Tags?: TagList;
4172 /**
4173 * The ID of the VPC.
4174 */
4175 VpcId?: String;
4176 }
4177 export type ClassicLinkInstanceList = ClassicLinkInstance[];
4178 export interface ClassicLoadBalancer {
4179 /**
4180 * The name of the load balancer.
4181 */
4182 Name?: String;
4183 }
4184 export type ClassicLoadBalancers = ClassicLoadBalancer[];
4185 export interface ClassicLoadBalancersConfig {
4186 /**
4187 * One or more Classic Load Balancers.
4188 */
4189 ClassicLoadBalancers?: ClassicLoadBalancers;
4190 }
4191 export interface ClientCertificateRevocationListStatus {
4192 /**
4193 * The state of the client certificate revocation list.
4194 */
4195 Code?: ClientCertificateRevocationListStatusCode;
4196 /**
4197 * A message about the status of the client certificate revocation list, if applicable.
4198 */
4199 Message?: String;
4200 }
4201 export type ClientCertificateRevocationListStatusCode = "pending"|"active"|string;
4202 export interface ClientData {
4203 /**
4204 * A user-defined comment about the disk upload.
4205 */
4206 Comment?: String;
4207 /**
4208 * The time that the disk upload ends.
4209 */
4210 UploadEnd?: DateTime;
4211 /**
4212 * The size of the uploaded disk image, in GiB.
4213 */
4214 UploadSize?: Double;
4215 /**
4216 * The time that the disk upload starts.
4217 */
4218 UploadStart?: DateTime;
4219 }
4220 export interface ClientVpnAuthentication {
4221 /**
4222 * The authentication type used.
4223 */
4224 Type?: ClientVpnAuthenticationType;
4225 /**
4226 * Information about the Active Directory, if applicable.
4227 */
4228 ActiveDirectory?: DirectoryServiceAuthentication;
4229 /**
4230 * Information about the authentication certificates, if applicable.
4231 */
4232 MutualAuthentication?: CertificateAuthentication;
4233 }
4234 export type ClientVpnAuthenticationList = ClientVpnAuthentication[];
4235 export interface ClientVpnAuthenticationRequest {
4236 /**
4237 * The type of client authentication to be used. Specify certificate-authentication to use certificate-based authentication, or directory-service-authentication to use Active Directory authentication.
4238 */
4239 Type?: ClientVpnAuthenticationType;
4240 /**
4241 * Information about the Active Directory to be used, if applicable. You must provide this information if Type is directory-service-authentication.
4242 */
4243 ActiveDirectory?: DirectoryServiceAuthenticationRequest;
4244 /**
4245 * Information about the authentication certificates to be used, if applicable. You must provide this information if Type is certificate-authentication.
4246 */
4247 MutualAuthentication?: CertificateAuthenticationRequest;
4248 }
4249 export type ClientVpnAuthenticationRequestList = ClientVpnAuthenticationRequest[];
4250 export type ClientVpnAuthenticationType = "certificate-authentication"|"directory-service-authentication"|string;
4251 export interface ClientVpnAuthorizationRuleStatus {
4252 /**
4253 * The state of the authorization rule.
4254 */
4255 Code?: ClientVpnAuthorizationRuleStatusCode;
4256 /**
4257 * A message about the status of the authorization rule, if applicable.
4258 */
4259 Message?: String;
4260 }
4261 export type ClientVpnAuthorizationRuleStatusCode = "authorizing"|"active"|"failed"|"revoking"|string;
4262 export interface ClientVpnConnection {
4263 /**
4264 * The ID of the Client VPN endpoint to which the client is connected.
4265 */
4266 ClientVpnEndpointId?: String;
4267 /**
4268 * The current date and time.
4269 */
4270 Timestamp?: String;
4271 /**
4272 * The ID of the client connection.
4273 */
4274 ConnectionId?: String;
4275 /**
4276 * The username of the client who established the client connection. This information is only provided if Active Directory client authentication is used.
4277 */
4278 Username?: String;
4279 /**
4280 * The date and time the client connection was established.
4281 */
4282 ConnectionEstablishedTime?: String;
4283 /**
4284 * The number of bytes sent by the client.
4285 */
4286 IngressBytes?: String;
4287 /**
4288 * The number of bytes received by the client.
4289 */
4290 EgressBytes?: String;
4291 /**
4292 * The number of packets sent by the client.
4293 */
4294 IngressPackets?: String;
4295 /**
4296 * The number of packets received by the client.
4297 */
4298 EgressPackets?: String;
4299 /**
4300 * The IP address of the client.
4301 */
4302 ClientIp?: String;
4303 /**
4304 * The common name associated with the client. This is either the name of the client certificate, or the Active Directory user name.
4305 */
4306 CommonName?: String;
4307 /**
4308 * The current state of the client connection.
4309 */
4310 Status?: ClientVpnConnectionStatus;
4311 /**
4312 * The date and time the client connection was terminated.
4313 */
4314 ConnectionEndTime?: String;
4315 }
4316 export type ClientVpnConnectionSet = ClientVpnConnection[];
4317 export interface ClientVpnConnectionStatus {
4318 /**
4319 * The state of the client connection.
4320 */
4321 Code?: ClientVpnConnectionStatusCode;
4322 /**
4323 * A message about the status of the client connection, if applicable.
4324 */
4325 Message?: String;
4326 }
4327 export type ClientVpnConnectionStatusCode = "active"|"failed-to-terminate"|"terminating"|"terminated"|string;
4328 export interface ClientVpnEndpoint {
4329 /**
4330 * The ID of the Client VPN endpoint.
4331 */
4332 ClientVpnEndpointId?: String;
4333 /**
4334 * A brief description of the endpoint.
4335 */
4336 Description?: String;
4337 /**
4338 * The current state of the Client VPN endpoint.
4339 */
4340 Status?: ClientVpnEndpointStatus;
4341 /**
4342 * The date and time the Client VPN endpoint was created.
4343 */
4344 CreationTime?: String;
4345 /**
4346 * The date and time the Client VPN endpoint was deleted, if applicable.
4347 */
4348 DeletionTime?: String;
4349 /**
4350 * The DNS name to be used by clients when connecting to the Client VPN endpoint.
4351 */
4352 DnsName?: String;
4353 /**
4354 * The IPv4 address range, in CIDR notation, from which client IP addresses are assigned.
4355 */
4356 ClientCidrBlock?: String;
4357 /**
4358 * Information about the DNS servers to be used for DNS resolution.
4359 */
4360 DnsServers?: ValueStringList;
4361 /**
4362 * Indicates whether VPN split tunneling is supported.
4363 */
4364 SplitTunnel?: Boolean;
4365 /**
4366 * The protocol used by the VPN session.
4367 */
4368 VpnProtocol?: VpnProtocol;
4369 /**
4370 * The transport protocol used by the Client VPN endpoint.
4371 */
4372 TransportProtocol?: TransportProtocol;
4373 /**
4374 * Information about the associated target networks. A target network is a subnet in a VPC.
4375 */
4376 AssociatedTargetNetworks?: AssociatedTargetNetworkSet;
4377 /**
4378 * The ARN of the server certificate.
4379 */
4380 ServerCertificateArn?: String;
4381 /**
4382 * Information about the authentication method used by the Client VPN endpoint.
4383 */
4384 AuthenticationOptions?: ClientVpnAuthenticationList;
4385 /**
4386 * Information about the client connection logging options for the Client VPN endpoint.
4387 */
4388 ConnectionLogOptions?: ConnectionLogResponseOptions;
4389 /**
4390 * Any tags assigned to the Client VPN endpoint.
4391 */
4392 Tags?: TagList;
4393 }
4394 export interface ClientVpnEndpointStatus {
4395 /**
4396 * The state of the Client VPN endpoint. Possible states include: pending-associate - The Client VPN endpoint has been created but no target networks have been associated. The Client VPN endpoint cannot accept connections. available - The Client VPN endpoint has been created and a target network has been associated. The Client VPN endpoint can accept connections. deleting - The Client VPN endpoint is being deleted. The Client VPN endpoint cannot accept connections. deleted - The Client VPN endpoint has been deleted. The Client VPN endpoint cannot accept connections.
4397 */
4398 Code?: ClientVpnEndpointStatusCode;
4399 /**
4400 * A message about the status of the Client VPN endpoint.
4401 */
4402 Message?: String;
4403 }
4404 export type ClientVpnEndpointStatusCode = "pending-associate"|"available"|"deleting"|"deleted"|string;
4405 export interface ClientVpnRoute {
4406 /**
4407 * The ID of the Client VPN endpoint with which the route is associated.
4408 */
4409 ClientVpnEndpointId?: String;
4410 /**
4411 * The IPv4 address range, in CIDR notation, of the route destination.
4412 */
4413 DestinationCidr?: String;
4414 /**
4415 * The ID of the subnet through which traffic is routed.
4416 */
4417 TargetSubnet?: String;
4418 /**
4419 * The route type.
4420 */
4421 Type?: String;
4422 /**
4423 * Indicates how the route was associated with the Client VPN endpoint. associate indicates that the route was automatically added when the target network was associated with the Client VPN endpoint. add-route indicates that the route was manually added using the CreateClientVpnRoute action.
4424 */
4425 Origin?: String;
4426 /**
4427 * The current state of the route.
4428 */
4429 Status?: ClientVpnRouteStatus;
4430 /**
4431 * A brief description of the route.
4432 */
4433 Description?: String;
4434 }
4435 export type ClientVpnRouteSet = ClientVpnRoute[];
4436 export interface ClientVpnRouteStatus {
4437 /**
4438 * The state of the Client VPN endpoint route.
4439 */
4440 Code?: ClientVpnRouteStatusCode;
4441 /**
4442 * A message about the status of the Client VPN endpoint route, if applicable.
4443 */
4444 Message?: String;
4445 }
4446 export type ClientVpnRouteStatusCode = "creating"|"active"|"failed"|"deleting"|string;
4447 export type ClientVpnSecurityGroupIdSet = String[];
4448 export interface ConfirmProductInstanceRequest {
4449 /**
4450 * The ID of the instance.
4451 */
4452 InstanceId: String;
4453 /**
4454 * The product code. This must be a product code that you own.
4455 */
4456 ProductCode: String;
4457 /**
4458 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4459 */
4460 DryRun?: Boolean;
4461 }
4462 export interface ConfirmProductInstanceResult {
4463 /**
4464 * The AWS account ID of the instance owner. This is only present if the product code is attached to the instance.
4465 */
4466 OwnerId?: String;
4467 /**
4468 * The return value of the request. Returns true if the specified product code is owned by the requester and associated with the specified instance.
4469 */
4470 Return?: Boolean;
4471 }
4472 export interface ConnectionLogOptions {
4473 /**
4474 * Indicates whether connection logging is enabled.
4475 */
4476 Enabled?: Boolean;
4477 /**
4478 * The name of the CloudWatch Logs log group.
4479 */
4480 CloudwatchLogGroup?: String;
4481 /**
4482 * The name of the CloudWatch Logs log stream to which the connection data is published.
4483 */
4484 CloudwatchLogStream?: String;
4485 }
4486 export interface ConnectionLogResponseOptions {
4487 /**
4488 * Indicates whether client connection logging is enabled for the Client VPN endpoint.
4489 */
4490 Enabled?: Boolean;
4491 /**
4492 * The name of the Amazon CloudWatch Logs log group to which connection logging data is published.
4493 */
4494 CloudwatchLogGroup?: String;
4495 /**
4496 * The name of the Amazon CloudWatch Logs log stream to which connection logging data is published.
4497 */
4498 CloudwatchLogStream?: String;
4499 }
4500 export interface ConnectionNotification {
4501 /**
4502 * The ID of the notification.
4503 */
4504 ConnectionNotificationId?: String;
4505 /**
4506 * The ID of the endpoint service.
4507 */
4508 ServiceId?: String;
4509 /**
4510 * The ID of the VPC endpoint.
4511 */
4512 VpcEndpointId?: String;
4513 /**
4514 * The type of notification.
4515 */
4516 ConnectionNotificationType?: ConnectionNotificationType;
4517 /**
4518 * The ARN of the SNS topic for the notification.
4519 */
4520 ConnectionNotificationArn?: String;
4521 /**
4522 * The events for the notification. Valid values are Accept, Connect, Delete, and Reject.
4523 */
4524 ConnectionEvents?: ValueStringList;
4525 /**
4526 * The state of the notification.
4527 */
4528 ConnectionNotificationState?: ConnectionNotificationState;
4529 }
4530 export type ConnectionNotificationSet = ConnectionNotification[];
4531 export type ConnectionNotificationState = "Enabled"|"Disabled"|string;
4532 export type ConnectionNotificationType = "Topic"|string;
4533 export type ContainerFormat = "ova"|string;
4534 export type ConversionIdStringList = String[];
4535 export interface ConversionTask {
4536 /**
4537 * The ID of the conversion task.
4538 */
4539 ConversionTaskId?: String;
4540 /**
4541 * The time when the task expires. If the upload isn't complete before the expiration time, we automatically cancel the task.
4542 */
4543 ExpirationTime?: String;
4544 /**
4545 * If the task is for importing an instance, this contains information about the import instance task.
4546 */
4547 ImportInstance?: ImportInstanceTaskDetails;
4548 /**
4549 * If the task is for importing a volume, this contains information about the import volume task.
4550 */
4551 ImportVolume?: ImportVolumeTaskDetails;
4552 /**
4553 * The state of the conversion task.
4554 */
4555 State?: ConversionTaskState;
4556 /**
4557 * The status message related to the conversion task.
4558 */
4559 StatusMessage?: String;
4560 /**
4561 * Any tags assigned to the task.
4562 */
4563 Tags?: TagList;
4564 }
4565 export type ConversionTaskState = "active"|"cancelling"|"cancelled"|"completed"|string;
4566 export interface CopyFpgaImageRequest {
4567 /**
4568 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4569 */
4570 DryRun?: Boolean;
4571 /**
4572 * The ID of the source AFI.
4573 */
4574 SourceFpgaImageId: String;
4575 /**
4576 * The description for the new AFI.
4577 */
4578 Description?: String;
4579 /**
4580 * The name for the new AFI. The default is the name of the source AFI.
4581 */
4582 Name?: String;
4583 /**
4584 * The region that contains the source AFI.
4585 */
4586 SourceRegion: String;
4587 /**
4588 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
4589 */
4590 ClientToken?: String;
4591 }
4592 export interface CopyFpgaImageResult {
4593 /**
4594 * The ID of the new AFI.
4595 */
4596 FpgaImageId?: String;
4597 }
4598 export interface CopyImageRequest {
4599 /**
4600 * Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.
4601 */
4602 ClientToken?: String;
4603 /**
4604 * A description for the new AMI in the destination region.
4605 */
4606 Description?: String;
4607 /**
4608 * Specifies whether the destination snapshots of the copied image should be encrypted. You can encrypt a copy of an unencrypted snapshot, but you cannot create an unencrypted copy of an encrypted snapshot. The default CMK for EBS is used unless you specify a non-default AWS Key Management Service (AWS KMS) CMK using KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
4609 */
4610 Encrypted?: Boolean;
4611 /**
4612 * An identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set. The CMK identifier may be provided in any of the following formats: Key ID Key alias, in the form alias/ExampleAlias ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. ARN using key alias. The alias ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the alias namespace, and then the CMK alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. AWS parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure. The specified CMK must exist in the region that the snapshot is being copied to.
4613 */
4614 KmsKeyId?: String;
4615 /**
4616 * The name of the new AMI in the destination region.
4617 */
4618 Name: String;
4619 /**
4620 * The ID of the AMI to copy.
4621 */
4622 SourceImageId: String;
4623 /**
4624 * The name of the region that contains the AMI to copy.
4625 */
4626 SourceRegion: String;
4627 /**
4628 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4629 */
4630 DryRun?: Boolean;
4631 }
4632 export interface CopyImageResult {
4633 /**
4634 * The ID of the new AMI.
4635 */
4636 ImageId?: String;
4637 }
4638 export interface CopySnapshotRequest {
4639 /**
4640 * A description for the EBS snapshot.
4641 */
4642 Description?: String;
4643 /**
4644 * The destination Region to use in the PresignedUrl parameter of a snapshot copy operation. This parameter is only valid for specifying the destination Region in a PresignedUrl parameter, where it is required. The snapshot copy is sent to the regional endpoint that you sent the HTTP request to (for example, ec2.us-east-1.amazonaws.com). With the AWS CLI, this is specified using the --region parameter or the default Region in your AWS configuration file.
4645 */
4646 DestinationRegion?: String;
4647 /**
4648 * Specifies whether the destination snapshot should be encrypted. You can encrypt a copy of an unencrypted snapshot, but you cannot use it to create an unencrypted copy of an encrypted snapshot. Your default CMK for EBS is used unless you specify a non-default AWS Key Management Service (AWS KMS) CMK using KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
4649 */
4650 Encrypted?: Boolean;
4651 /**
4652 * An identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set. The CMK identifier may be provided in any of the following formats: Key ID Key alias ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. ARN using key alias. The alias ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the alias namespace, and then the CMK alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. AWS parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. The action will eventually fail.
4653 */
4654 KmsKeyId?: String;
4655 /**
4656 * When you copy an encrypted source snapshot using the Amazon EC2 Query API, you must supply a pre-signed URL. This parameter is optional for unencrypted snapshots. For more information, see Query Requests. The PresignedUrl should use the snapshot source endpoint, the CopySnapshot action, and include the SourceRegion, SourceSnapshotId, and DestinationRegion parameters. The PresignedUrl must be signed using AWS Signature Version 4. Because EBS snapshots are stored in Amazon S3, the signing algorithm for this parameter uses the same logic that is described in Authenticating Requests by Using Query Parameters (AWS Signature Version 4) in the Amazon Simple Storage Service API Reference. An invalid or improperly signed PresignedUrl will cause the copy operation to fail asynchronously, and the snapshot will move to an error state.
4657 */
4658 PresignedUrl?: String;
4659 /**
4660 * The ID of the Region that contains the snapshot to be copied.
4661 */
4662 SourceRegion: String;
4663 /**
4664 * The ID of the EBS snapshot to copy.
4665 */
4666 SourceSnapshotId: String;
4667 /**
4668 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4669 */
4670 DryRun?: Boolean;
4671 }
4672 export interface CopySnapshotResult {
4673 /**
4674 * The ID of the new snapshot.
4675 */
4676 SnapshotId?: String;
4677 }
4678 export interface CpuOptions {
4679 /**
4680 * The number of CPU cores for the instance.
4681 */
4682 CoreCount?: Integer;
4683 /**
4684 * The number of threads per CPU core.
4685 */
4686 ThreadsPerCore?: Integer;
4687 }
4688 export interface CpuOptionsRequest {
4689 /**
4690 * The number of CPU cores for the instance.
4691 */
4692 CoreCount?: Integer;
4693 /**
4694 * The number of threads per CPU core. To disable Intel Hyper-Threading Technology for the instance, specify a value of 1. Otherwise, specify the default value of 2.
4695 */
4696 ThreadsPerCore?: Integer;
4697 }
4698 export interface CreateCapacityReservationRequest {
4699 /**
4700 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency. Constraint: Maximum 64 ASCII characters.
4701 */
4702 ClientToken?: String;
4703 /**
4704 * The instance type for which to reserve capacity. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
4705 */
4706 InstanceType: String;
4707 /**
4708 * The type of operating system for which to reserve capacity.
4709 */
4710 InstancePlatform: CapacityReservationInstancePlatform;
4711 /**
4712 * The Availability Zone in which to create the Capacity Reservation.
4713 */
4714 AvailabilityZone: String;
4715 /**
4716 * Indicates the tenancy of the Capacity Reservation. A Capacity Reservation can have one of the following tenancy settings: default - The Capacity Reservation is created on hardware that is shared with other AWS accounts. dedicated - The Capacity Reservation is created on single-tenant hardware that is dedicated to a single AWS account.
4717 */
4718 Tenancy?: CapacityReservationTenancy;
4719 /**
4720 * The number of instances for which to reserve capacity.
4721 */
4722 InstanceCount: Integer;
4723 /**
4724 * Indicates whether the Capacity Reservation supports EBS-optimized instances. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS- optimized instance.
4725 */
4726 EbsOptimized?: Boolean;
4727 /**
4728 * Indicates whether the Capacity Reservation supports instances with temporary, block-level storage.
4729 */
4730 EphemeralStorage?: Boolean;
4731 /**
4732 * The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to expired when it reaches its end date and time. You must provide an EndDate value if EndDateType is limited. Omit EndDate if EndDateType is unlimited. If the EndDateType is limited, the Capacity Reservation is cancelled within an hour from the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019.
4733 */
4734 EndDate?: DateTime;
4735 /**
4736 * Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types: unlimited - The Capacity Reservation remains active until you explicitly cancel it. Do not provide an EndDate if the EndDateType is unlimited. limited - The Capacity Reservation expires automatically at a specified date and time. You must provide an EndDate value if the EndDateType value is limited.
4737 */
4738 EndDateType?: EndDateType;
4739 /**
4740 * Indicates the type of instance launches that the Capacity Reservation accepts. The options include: open - The Capacity Reservation automatically matches all instances that have matching attributes (instance type, platform, and Availability Zone). Instances that have matching attributes run in the Capacity Reservation automatically without specifying any additional parameters. targeted - The Capacity Reservation only accepts instances that have matching attributes (instance type, platform, and Availability Zone), and explicitly target the Capacity Reservation. This ensures that only permitted instances can use the reserved capacity. Default: open
4741 */
4742 InstanceMatchCriteria?: InstanceMatchCriteria;
4743 /**
4744 * The tags to apply to the Capacity Reservation during launch.
4745 */
4746 TagSpecifications?: TagSpecificationList;
4747 /**
4748 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4749 */
4750 DryRun?: Boolean;
4751 }
4752 export interface CreateCapacityReservationResult {
4753 /**
4754 * Information about the Capacity Reservation.
4755 */
4756 CapacityReservation?: CapacityReservation;
4757 }
4758 export interface CreateClientVpnEndpointRequest {
4759 /**
4760 * The IPv4 address range, in CIDR notation, from which to assign client IP addresses. The address range cannot overlap with the local CIDR of the VPC in which the associated subnet is located, or the routes that you add manually. The address range cannot be changed after the Client VPN endpoint has been created. The CIDR block should be /22 or greater.
4761 */
4762 ClientCidrBlock: String;
4763 /**
4764 * The ARN of the server certificate. For more information, see the AWS Certificate Manager User Guide.
4765 */
4766 ServerCertificateArn: String;
4767 /**
4768 * Information about the authentication method to be used to authenticate clients.
4769 */
4770 AuthenticationOptions: ClientVpnAuthenticationRequestList;
4771 /**
4772 * Information about the client connection logging options. If you enable client connection logging, data about client connections is sent to a Cloudwatch Logs log stream. The following information is logged: Client connection requests Client connection results (successful and unsuccessful) Reasons for unsuccessful client connection requests Client connection termination time
4773 */
4774 ConnectionLogOptions: ConnectionLogOptions;
4775 /**
4776 * Information about the DNS servers to be used for DNS resolution. A Client VPN endpoint can have up to two DNS servers. If no DNS server is specified, the DNS address of the VPC that is to be associated with Client VPN endpoint is used as the DNS server.
4777 */
4778 DnsServers?: ValueStringList;
4779 /**
4780 * The transport protocol to be used by the VPN session. Default value: udp
4781 */
4782 TransportProtocol?: TransportProtocol;
4783 /**
4784 * A brief description of the Client VPN endpoint.
4785 */
4786 Description?: String;
4787 /**
4788 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4789 */
4790 DryRun?: Boolean;
4791 /**
4792 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
4793 */
4794 ClientToken?: String;
4795 /**
4796 * The tags to apply to the Client VPN endpoint during creation.
4797 */
4798 TagSpecifications?: TagSpecificationList;
4799 }
4800 export interface CreateClientVpnEndpointResult {
4801 /**
4802 * The ID of the Client VPN endpoint.
4803 */
4804 ClientVpnEndpointId?: String;
4805 /**
4806 * The current state of the Client VPN endpoint.
4807 */
4808 Status?: ClientVpnEndpointStatus;
4809 /**
4810 * The DNS name to be used by clients when establishing their VPN session.
4811 */
4812 DnsName?: String;
4813 }
4814 export interface CreateClientVpnRouteRequest {
4815 /**
4816 * The ID of the Client VPN endpoint to which to add the route.
4817 */
4818 ClientVpnEndpointId: String;
4819 /**
4820 * The IPv4 address range, in CIDR notation, of the route destination. For example: To add a route for Internet access, enter 0.0.0.0/0 To add a route for a peered VPC, enter the peered VPC's IPv4 CIDR range To add a route for an on-premises network, enter the AWS Site-to-Site VPN connection's IPv4 CIDR range Route address ranges cannot overlap with the CIDR range specified for client allocation.
4821 */
4822 DestinationCidrBlock: String;
4823 /**
4824 * The ID of the subnet through which you want to route traffic. The specified subnet must be an existing target network of the Client VPN endpoint.
4825 */
4826 TargetVpcSubnetId: String;
4827 /**
4828 * A brief description of the route.
4829 */
4830 Description?: String;
4831 /**
4832 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4833 */
4834 DryRun?: Boolean;
4835 }
4836 export interface CreateClientVpnRouteResult {
4837 /**
4838 * The current state of the route.
4839 */
4840 Status?: ClientVpnRouteStatus;
4841 }
4842 export interface CreateCustomerGatewayRequest {
4843 /**
4844 * For devices that support BGP, the customer gateway's BGP ASN. Default: 65000
4845 */
4846 BgpAsn: Integer;
4847 /**
4848 * The Internet-routable IP address for the customer gateway's outside interface. The address must be static.
4849 */
4850 PublicIp: String;
4851 /**
4852 * The type of VPN connection that this customer gateway supports (ipsec.1).
4853 */
4854 Type: GatewayType;
4855 /**
4856 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4857 */
4858 DryRun?: Boolean;
4859 }
4860 export interface CreateCustomerGatewayResult {
4861 /**
4862 * Information about the customer gateway.
4863 */
4864 CustomerGateway?: CustomerGateway;
4865 }
4866 export interface CreateDefaultSubnetRequest {
4867 /**
4868 * The Availability Zone in which to create the default subnet.
4869 */
4870 AvailabilityZone: String;
4871 /**
4872 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4873 */
4874 DryRun?: Boolean;
4875 }
4876 export interface CreateDefaultSubnetResult {
4877 /**
4878 * Information about the subnet.
4879 */
4880 Subnet?: Subnet;
4881 }
4882 export interface CreateDefaultVpcRequest {
4883 /**
4884 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4885 */
4886 DryRun?: Boolean;
4887 }
4888 export interface CreateDefaultVpcResult {
4889 /**
4890 * Information about the VPC.
4891 */
4892 Vpc?: Vpc;
4893 }
4894 export interface CreateDhcpOptionsRequest {
4895 /**
4896 * A DHCP configuration option.
4897 */
4898 DhcpConfigurations: NewDhcpConfigurationList;
4899 /**
4900 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4901 */
4902 DryRun?: Boolean;
4903 }
4904 export interface CreateDhcpOptionsResult {
4905 /**
4906 * A set of DHCP options.
4907 */
4908 DhcpOptions?: DhcpOptions;
4909 }
4910 export interface CreateEgressOnlyInternetGatewayRequest {
4911 /**
4912 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
4913 */
4914 ClientToken?: String;
4915 /**
4916 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4917 */
4918 DryRun?: Boolean;
4919 /**
4920 * The ID of the VPC for which to create the egress-only internet gateway.
4921 */
4922 VpcId: String;
4923 }
4924 export interface CreateEgressOnlyInternetGatewayResult {
4925 /**
4926 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
4927 */
4928 ClientToken?: String;
4929 /**
4930 * Information about the egress-only internet gateway.
4931 */
4932 EgressOnlyInternetGateway?: EgressOnlyInternetGateway;
4933 }
4934 export interface CreateFleetError {
4935 /**
4936 * The launch templates and overrides that were used for launching the instances. Any parameters that you specify in the Overrides override the same parameters in the launch template.
4937 */
4938 LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse;
4939 /**
4940 * Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.
4941 */
4942 Lifecycle?: InstanceLifecycle;
4943 /**
4944 * The error code that indicates why the instance could not be launched. For more information about error codes, see Error Codes.
4945 */
4946 ErrorCode?: String;
4947 /**
4948 * The error message that describes why the instance could not be launched. For more information about error messages, see ee Error Codes.
4949 */
4950 ErrorMessage?: String;
4951 }
4952 export type CreateFleetErrorsSet = CreateFleetError[];
4953 export interface CreateFleetInstance {
4954 /**
4955 * The launch templates and overrides that were used for launching the instances. Any parameters that you specify in the Overrides override the same parameters in the launch template.
4956 */
4957 LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse;
4958 /**
4959 * Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.
4960 */
4961 Lifecycle?: InstanceLifecycle;
4962 /**
4963 * The IDs of the instances.
4964 */
4965 InstanceIds?: InstanceIdsSet;
4966 /**
4967 * The instance type.
4968 */
4969 InstanceType?: InstanceType;
4970 /**
4971 * The value is Windows for Windows instances; otherwise blank.
4972 */
4973 Platform?: PlatformValues;
4974 }
4975 export type CreateFleetInstancesSet = CreateFleetInstance[];
4976 export interface CreateFleetRequest {
4977 /**
4978 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
4979 */
4980 DryRun?: Boolean;
4981 /**
4982 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
4983 */
4984 ClientToken?: String;
4985 /**
4986 * Describes the configuration of Spot Instances in an EC2 Fleet.
4987 */
4988 SpotOptions?: SpotOptionsRequest;
4989 /**
4990 * The allocation strategy of On-Demand Instances in an EC2 Fleet.
4991 */
4992 OnDemandOptions?: OnDemandOptionsRequest;
4993 /**
4994 * Indicates whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2 Fleet.
4995 */
4996 ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy;
4997 /**
4998 * The configuration for the EC2 Fleet.
4999 */
5000 LaunchTemplateConfigs: FleetLaunchTemplateConfigListRequest;
5001 /**
5002 * The TotalTargetCapacity, OnDemandTargetCapacity, SpotTargetCapacity, and DefaultCapacityType structure.
5003 */
5004 TargetCapacitySpecification: TargetCapacitySpecificationRequest;
5005 /**
5006 * Indicates whether running instances should be terminated when the EC2 Fleet expires.
5007 */
5008 TerminateInstancesWithExpiration?: Boolean;
5009 /**
5010 * The type of the request. By default, the EC2 Fleet places an asynchronous request for your desired capacity, and maintains it by replenishing interrupted Spot Instances (maintain). A value of instant places a synchronous one-time request, and returns errors for any instances that could not be launched. A value of request places an asynchronous one-time request without maintaining capacity or submitting requests in alternative capacity pools if capacity is unavailable. For more information, see EC2 Fleet Request Types in the Amazon Elastic Compute Cloud User Guide.
5011 */
5012 Type?: FleetType;
5013 /**
5014 * The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
5015 */
5016 ValidFrom?: DateTime;
5017 /**
5018 * The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new EC2 Fleet requests are placed or able to fulfill the request. If no value is specified, the request remains until you cancel it.
5019 */
5020 ValidUntil?: DateTime;
5021 /**
5022 * Indicates whether EC2 Fleet should replace unhealthy instances.
5023 */
5024 ReplaceUnhealthyInstances?: Boolean;
5025 /**
5026 * The key-value pair for tagging the EC2 Fleet request on creation. The value for ResourceType must be fleet, otherwise the fleet request fails. To tag instances at launch, specify the tags in the launch template. For information about tagging after launch, see Tagging Your Resources.
5027 */
5028 TagSpecifications?: TagSpecificationList;
5029 }
5030 export interface CreateFleetResult {
5031 /**
5032 * The ID of the EC2 Fleet.
5033 */
5034 FleetId?: FleetIdentifier;
5035 /**
5036 * Information about the instances that could not be launched by the fleet. Valid only when Type is set to instant.
5037 */
5038 Errors?: CreateFleetErrorsSet;
5039 /**
5040 * Information about the instances that were launched by the fleet. Valid only when Type is set to instant.
5041 */
5042 Instances?: CreateFleetInstancesSet;
5043 }
5044 export interface CreateFlowLogsRequest {
5045 /**
5046 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5047 */
5048 DryRun?: Boolean;
5049 /**
5050 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
5051 */
5052 ClientToken?: String;
5053 /**
5054 * The ARN for the IAM role that's used to post flow logs to a log group.
5055 */
5056 DeliverLogsPermissionArn?: String;
5057 /**
5058 * The name of the log group.
5059 */
5060 LogGroupName?: String;
5061 /**
5062 * One or more subnet, network interface, or VPC IDs. Constraints: Maximum of 1000 resources
5063 */
5064 ResourceIds: ValueStringList;
5065 /**
5066 * The type of resource on which to create the flow log.
5067 */
5068 ResourceType: FlowLogsResourceType;
5069 /**
5070 * The type of traffic to log.
5071 */
5072 TrafficType: TrafficType;
5073 /**
5074 * Specifies the type of destination to which the flow log data is to be published. Flow log data can be published to CloudWatch Logs or Amazon S3. To publish flow log data to CloudWatch Logs, specify cloud-watch-logs. To publish flow log data to Amazon S3, specify s3. Default: cloud-watch-logs
5075 */
5076 LogDestinationType?: LogDestinationType;
5077 /**
5078 * Specifies the destination to which the flow log data is to be published. Flow log data can be published to an CloudWatch Logs log group or an Amazon S3 bucket. The value specified for this parameter depends on the value specified for LogDestinationType. If LogDestinationType is not specified or cloud-watch-logs, specify the Amazon Resource Name (ARN) of the CloudWatch Logs log group. If LogDestinationType is s3, specify the ARN of the Amazon S3 bucket. You can also specify a subfolder in the bucket. To specify a subfolder in the bucket, use the following ARN format: bucket_ARN/subfolder_name/. For example, to specify a subfolder named my-logs in a bucket named my-bucket, use the following ARN: arn:aws:s3:::my-bucket/my-logs/. You cannot use AWSLogs as a subfolder name. This is a reserved term.
5079 */
5080 LogDestination?: String;
5081 }
5082 export interface CreateFlowLogsResult {
5083 /**
5084 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request.
5085 */
5086 ClientToken?: String;
5087 /**
5088 * The IDs of the flow logs.
5089 */
5090 FlowLogIds?: ValueStringList;
5091 /**
5092 * Information about the flow logs that could not be created successfully.
5093 */
5094 Unsuccessful?: UnsuccessfulItemSet;
5095 }
5096 export interface CreateFpgaImageRequest {
5097 /**
5098 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5099 */
5100 DryRun?: Boolean;
5101 /**
5102 * The location of the encrypted design checkpoint in Amazon S3. The input must be a tarball.
5103 */
5104 InputStorageLocation: StorageLocation;
5105 /**
5106 * The location in Amazon S3 for the output logs.
5107 */
5108 LogsStorageLocation?: StorageLocation;
5109 /**
5110 * A description for the AFI.
5111 */
5112 Description?: String;
5113 /**
5114 * A name for the AFI.
5115 */
5116 Name?: String;
5117 /**
5118 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency.
5119 */
5120 ClientToken?: String;
5121 }
5122 export interface CreateFpgaImageResult {
5123 /**
5124 * The FPGA image identifier (AFI ID).
5125 */
5126 FpgaImageId?: String;
5127 /**
5128 * The global FPGA image identifier (AGFI ID).
5129 */
5130 FpgaImageGlobalId?: String;
5131 }
5132 export interface CreateImageRequest {
5133 /**
5134 * Information about one or more block device mappings. This parameter cannot be used to modify the encryption status of existing volumes or snapshots. To create an AMI with encrypted snapshots, use the CopyImage action.
5135 */
5136 BlockDeviceMappings?: BlockDeviceMappingRequestList;
5137 /**
5138 * A description for the new image.
5139 */
5140 Description?: String;
5141 /**
5142 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5143 */
5144 DryRun?: Boolean;
5145 /**
5146 * The ID of the instance.
5147 */
5148 InstanceId: String;
5149 /**
5150 * A name for the new image. Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)
5151 */
5152 Name: String;
5153 /**
5154 * By default, Amazon EC2 attempts to shut down and reboot the instance before creating the image. If the 'No Reboot' option is set, Amazon EC2 doesn't shut down the instance before creating the image. When this option is used, file system integrity on the created image can't be guaranteed.
5155 */
5156 NoReboot?: Boolean;
5157 }
5158 export interface CreateImageResult {
5159 /**
5160 * The ID of the new AMI.
5161 */
5162 ImageId?: String;
5163 }
5164 export interface CreateInstanceExportTaskRequest {
5165 /**
5166 * A description for the conversion task or the resource being exported. The maximum length is 255 bytes.
5167 */
5168 Description?: String;
5169 /**
5170 * The format and location for an instance export task.
5171 */
5172 ExportToS3Task?: ExportToS3TaskSpecification;
5173 /**
5174 * The ID of the instance.
5175 */
5176 InstanceId: String;
5177 /**
5178 * The target virtualization environment.
5179 */
5180 TargetEnvironment?: ExportEnvironment;
5181 }
5182 export interface CreateInstanceExportTaskResult {
5183 /**
5184 * Information about the instance export task.
5185 */
5186 ExportTask?: ExportTask;
5187 }
5188 export interface CreateInternetGatewayRequest {
5189 /**
5190 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5191 */
5192 DryRun?: Boolean;
5193 }
5194 export interface CreateInternetGatewayResult {
5195 /**
5196 * Information about the internet gateway.
5197 */
5198 InternetGateway?: InternetGateway;
5199 }
5200 export interface CreateKeyPairRequest {
5201 /**
5202 * A unique name for the key pair. Constraints: Up to 255 ASCII characters
5203 */
5204 KeyName: String;
5205 /**
5206 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5207 */
5208 DryRun?: Boolean;
5209 }
5210 export interface CreateLaunchTemplateRequest {
5211 /**
5212 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5213 */
5214 DryRun?: Boolean;
5215 /**
5216 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraint: Maximum 128 ASCII characters.
5217 */
5218 ClientToken?: String;
5219 /**
5220 * A name for the launch template.
5221 */
5222 LaunchTemplateName: LaunchTemplateName;
5223 /**
5224 * A description for the first version of the launch template.
5225 */
5226 VersionDescription?: VersionDescription;
5227 /**
5228 * The information for the launch template.
5229 */
5230 LaunchTemplateData: RequestLaunchTemplateData;
5231 }
5232 export interface CreateLaunchTemplateResult {
5233 /**
5234 * Information about the launch template.
5235 */
5236 LaunchTemplate?: LaunchTemplate;
5237 }
5238 export interface CreateLaunchTemplateVersionRequest {
5239 /**
5240 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5241 */
5242 DryRun?: Boolean;
5243 /**
5244 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraint: Maximum 128 ASCII characters.
5245 */
5246 ClientToken?: String;
5247 /**
5248 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
5249 */
5250 LaunchTemplateId?: String;
5251 /**
5252 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
5253 */
5254 LaunchTemplateName?: LaunchTemplateName;
5255 /**
5256 * The version number of the launch template version on which to base the new version. The new version inherits the same launch parameters as the source version, except for parameters that you specify in LaunchTemplateData.
5257 */
5258 SourceVersion?: String;
5259 /**
5260 * A description for the version of the launch template.
5261 */
5262 VersionDescription?: VersionDescription;
5263 /**
5264 * The information for the launch template.
5265 */
5266 LaunchTemplateData: RequestLaunchTemplateData;
5267 }
5268 export interface CreateLaunchTemplateVersionResult {
5269 /**
5270 * Information about the launch template version.
5271 */
5272 LaunchTemplateVersion?: LaunchTemplateVersion;
5273 }
5274 export interface CreateNatGatewayRequest {
5275 /**
5276 * The allocation ID of an Elastic IP address to associate with the NAT gateway. If the Elastic IP address is associated with another resource, you must first disassociate it.
5277 */
5278 AllocationId: String;
5279 /**
5280 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency. Constraint: Maximum 64 ASCII characters.
5281 */
5282 ClientToken?: String;
5283 /**
5284 * The subnet in which to create the NAT gateway.
5285 */
5286 SubnetId: String;
5287 }
5288 export interface CreateNatGatewayResult {
5289 /**
5290 * Unique, case-sensitive identifier to ensure the idempotency of the request. Only returned if a client token was provided in the request.
5291 */
5292 ClientToken?: String;
5293 /**
5294 * Information about the NAT gateway.
5295 */
5296 NatGateway?: NatGateway;
5297 }
5298 export interface CreateNetworkAclEntryRequest {
5299 /**
5300 * The IPv4 network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).
5301 */
5302 CidrBlock?: String;
5303 /**
5304 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5305 */
5306 DryRun?: Boolean;
5307 /**
5308 * Indicates whether this is an egress rule (rule is applied to traffic leaving the subnet).
5309 */
5310 Egress: Boolean;
5311 /**
5312 * ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
5313 */
5314 IcmpTypeCode?: IcmpTypeCode;
5315 /**
5316 * The IPv6 network range to allow or deny, in CIDR notation (for example 2001:db8:1234:1a00::/64).
5317 */
5318 Ipv6CidrBlock?: String;
5319 /**
5320 * The ID of the network ACL.
5321 */
5322 NetworkAclId: String;
5323 /**
5324 * TCP or UDP protocols: The range of ports the rule applies to. Required if specifying protocol 6 (TCP) or 17 (UDP).
5325 */
5326 PortRange?: PortRange;
5327 /**
5328 * The protocol number. A value of "-1" means all protocols. If you specify "-1" or a protocol number other than "6" (TCP), "17" (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of any ports or ICMP types or codes that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and codes allowed, regardless of any that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR block, you must specify an ICMP type and code.
5329 */
5330 Protocol: String;
5331 /**
5332 * Indicates whether to allow or deny the traffic that matches the rule.
5333 */
5334 RuleAction: RuleAction;
5335 /**
5336 * The rule number for the entry (for example, 100). ACL entries are processed in ascending order by rule number. Constraints: Positive integer from 1 to 32766. The range 32767 to 65535 is reserved for internal use.
5337 */
5338 RuleNumber: Integer;
5339 }
5340 export interface CreateNetworkAclRequest {
5341 /**
5342 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5343 */
5344 DryRun?: Boolean;
5345 /**
5346 * The ID of the VPC.
5347 */
5348 VpcId: String;
5349 }
5350 export interface CreateNetworkAclResult {
5351 /**
5352 * Information about the network ACL.
5353 */
5354 NetworkAcl?: NetworkAcl;
5355 }
5356 export interface CreateNetworkInterfacePermissionRequest {
5357 /**
5358 * The ID of the network interface.
5359 */
5360 NetworkInterfaceId: String;
5361 /**
5362 * The AWS account ID.
5363 */
5364 AwsAccountId?: String;
5365 /**
5366 * The AWS service. Currently not supported.
5367 */
5368 AwsService?: String;
5369 /**
5370 * The type of permission to grant.
5371 */
5372 Permission: InterfacePermissionType;
5373 /**
5374 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5375 */
5376 DryRun?: Boolean;
5377 }
5378 export interface CreateNetworkInterfacePermissionResult {
5379 /**
5380 * Information about the permission for the network interface.
5381 */
5382 InterfacePermission?: NetworkInterfacePermission;
5383 }
5384 export interface CreateNetworkInterfaceRequest {
5385 /**
5386 * A description for the network interface.
5387 */
5388 Description?: String;
5389 /**
5390 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5391 */
5392 DryRun?: Boolean;
5393 /**
5394 * The IDs of one or more security groups.
5395 */
5396 Groups?: SecurityGroupIdStringList;
5397 /**
5398 * The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses. If your subnet has the AssignIpv6AddressOnCreation attribute set to true, you can specify 0 to override this setting.
5399 */
5400 Ipv6AddressCount?: Integer;
5401 /**
5402 * One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
5403 */
5404 Ipv6Addresses?: InstanceIpv6AddressList;
5405 /**
5406 * The primary private IPv4 address of the network interface. If you don't specify an IPv4 address, Amazon EC2 selects one for you from the subnet's IPv4 CIDR range. If you specify an IP address, you cannot indicate any IP addresses specified in privateIpAddresses as primary (only one IP address can be designated as primary).
5407 */
5408 PrivateIpAddress?: String;
5409 /**
5410 * One or more private IPv4 addresses.
5411 */
5412 PrivateIpAddresses?: PrivateIpAddressSpecificationList;
5413 /**
5414 * The number of secondary private IPv4 addresses to assign to a network interface. When you specify a number of secondary IPv4 addresses, Amazon EC2 selects these IP addresses within the subnet's IPv4 CIDR range. You can't specify this option and specify more than one private IP address using privateIpAddresses. The number of IP addresses you can assign to a network interface varies by instance type. For more information, see IP Addresses Per ENI Per Instance Type in the Amazon Virtual Private Cloud User Guide.
5415 */
5416 SecondaryPrivateIpAddressCount?: Integer;
5417 /**
5418 * The ID of the subnet to associate with the network interface.
5419 */
5420 SubnetId: String;
5421 }
5422 export interface CreateNetworkInterfaceResult {
5423 /**
5424 * Information about the network interface.
5425 */
5426 NetworkInterface?: NetworkInterface;
5427 }
5428 export interface CreatePlacementGroupRequest {
5429 /**
5430 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5431 */
5432 DryRun?: Boolean;
5433 /**
5434 * A name for the placement group. Must be unique within the scope of your account for the Region. Constraints: Up to 255 ASCII characters
5435 */
5436 GroupName?: String;
5437 /**
5438 * The placement strategy.
5439 */
5440 Strategy?: PlacementStrategy;
5441 /**
5442 * The number of partitions. Valid only when Strategy is set to partition.
5443 */
5444 PartitionCount?: Integer;
5445 }
5446 export interface CreateReservedInstancesListingRequest {
5447 /**
5448 * Unique, case-sensitive identifier you provide to ensure idempotency of your listings. This helps avoid duplicate listings. For more information, see Ensuring Idempotency.
5449 */
5450 ClientToken: String;
5451 /**
5452 * The number of instances that are a part of a Reserved Instance account to be listed in the Reserved Instance Marketplace. This number should be less than or equal to the instance count associated with the Reserved Instance ID specified in this call.
5453 */
5454 InstanceCount: Integer;
5455 /**
5456 * A list specifying the price of the Standard Reserved Instance for each month remaining in the Reserved Instance term.
5457 */
5458 PriceSchedules: PriceScheduleSpecificationList;
5459 /**
5460 * The ID of the active Standard Reserved Instance.
5461 */
5462 ReservedInstancesId: String;
5463 }
5464 export interface CreateReservedInstancesListingResult {
5465 /**
5466 * Information about the Standard Reserved Instance listing.
5467 */
5468 ReservedInstancesListings?: ReservedInstancesListingList;
5469 }
5470 export interface CreateRouteRequest {
5471 /**
5472 * The IPv4 CIDR address block used for the destination match. Routing decisions are based on the most specific match.
5473 */
5474 DestinationCidrBlock?: String;
5475 /**
5476 * The IPv6 CIDR block used for the destination match. Routing decisions are based on the most specific match.
5477 */
5478 DestinationIpv6CidrBlock?: String;
5479 /**
5480 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5481 */
5482 DryRun?: Boolean;
5483 /**
5484 * [IPv6 traffic only] The ID of an egress-only internet gateway.
5485 */
5486 EgressOnlyInternetGatewayId?: String;
5487 /**
5488 * The ID of an internet gateway or virtual private gateway attached to your VPC.
5489 */
5490 GatewayId?: String;
5491 /**
5492 * The ID of a NAT instance in your VPC. The operation fails if you specify an instance ID unless exactly one network interface is attached.
5493 */
5494 InstanceId?: String;
5495 /**
5496 * [IPv4 traffic only] The ID of a NAT gateway.
5497 */
5498 NatGatewayId?: String;
5499 /**
5500 * The ID of a transit gateway.
5501 */
5502 TransitGatewayId?: String;
5503 /**
5504 * The ID of a network interface.
5505 */
5506 NetworkInterfaceId?: String;
5507 /**
5508 * The ID of the route table for the route.
5509 */
5510 RouteTableId: String;
5511 /**
5512 * The ID of a VPC peering connection.
5513 */
5514 VpcPeeringConnectionId?: String;
5515 }
5516 export interface CreateRouteResult {
5517 /**
5518 * Returns true if the request succeeds; otherwise, it returns an error.
5519 */
5520 Return?: Boolean;
5521 }
5522 export interface CreateRouteTableRequest {
5523 /**
5524 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5525 */
5526 DryRun?: Boolean;
5527 /**
5528 * The ID of the VPC.
5529 */
5530 VpcId: String;
5531 }
5532 export interface CreateRouteTableResult {
5533 /**
5534 * Information about the route table.
5535 */
5536 RouteTable?: RouteTable;
5537 }
5538 export interface CreateSecurityGroupRequest {
5539 /**
5540 * A description for the security group. This is informational only. Constraints: Up to 255 characters in length Constraints for EC2-Classic: ASCII characters Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&amp;;{}!$*
5541 */
5542 Description: String;
5543 /**
5544 * The name of the security group. Constraints: Up to 255 characters in length. Cannot start with sg-. Constraints for EC2-Classic: ASCII characters Constraints for EC2-VPC: a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=&amp;;{}!$*
5545 */
5546 GroupName: String;
5547 /**
5548 * [EC2-VPC] The ID of the VPC. Required for EC2-VPC.
5549 */
5550 VpcId?: String;
5551 /**
5552 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5553 */
5554 DryRun?: Boolean;
5555 }
5556 export interface CreateSecurityGroupResult {
5557 /**
5558 * The ID of the security group.
5559 */
5560 GroupId?: String;
5561 }
5562 export interface CreateSnapshotRequest {
5563 /**
5564 * A description for the snapshot.
5565 */
5566 Description?: String;
5567 /**
5568 * The ID of the EBS volume.
5569 */
5570 VolumeId: String;
5571 /**
5572 * The tags to apply to the snapshot during creation.
5573 */
5574 TagSpecifications?: TagSpecificationList;
5575 /**
5576 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5577 */
5578 DryRun?: Boolean;
5579 }
5580 export interface CreateSpotDatafeedSubscriptionRequest {
5581 /**
5582 * The Amazon S3 bucket in which to store the Spot Instance data feed.
5583 */
5584 Bucket: String;
5585 /**
5586 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5587 */
5588 DryRun?: Boolean;
5589 /**
5590 * A prefix for the data feed file names.
5591 */
5592 Prefix?: String;
5593 }
5594 export interface CreateSpotDatafeedSubscriptionResult {
5595 /**
5596 * The Spot Instance data feed subscription.
5597 */
5598 SpotDatafeedSubscription?: SpotDatafeedSubscription;
5599 }
5600 export interface CreateSubnetRequest {
5601 /**
5602 * The Availability Zone for the subnet. Default: AWS selects one for you. If you create more than one subnet in your VPC, we may not necessarily select a different zone for each subnet.
5603 */
5604 AvailabilityZone?: String;
5605 /**
5606 * The AZ ID of the subnet.
5607 */
5608 AvailabilityZoneId?: String;
5609 /**
5610 * The IPv4 network range for the subnet, in CIDR notation. For example, 10.0.0.0/24.
5611 */
5612 CidrBlock: String;
5613 /**
5614 * The IPv6 network range for the subnet, in CIDR notation. The subnet size must use a /64 prefix length.
5615 */
5616 Ipv6CidrBlock?: String;
5617 /**
5618 * The ID of the VPC.
5619 */
5620 VpcId: String;
5621 /**
5622 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5623 */
5624 DryRun?: Boolean;
5625 }
5626 export interface CreateSubnetResult {
5627 /**
5628 * Information about the subnet.
5629 */
5630 Subnet?: Subnet;
5631 }
5632 export interface CreateTagsRequest {
5633 /**
5634 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5635 */
5636 DryRun?: Boolean;
5637 /**
5638 * The IDs of one or more resources, separated by spaces. Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.
5639 */
5640 Resources: ResourceIdList;
5641 /**
5642 * One or more tags. The value parameter is required, but if you don't want the tag to have a value, specify the parameter with no value, and we set the value to an empty string.
5643 */
5644 Tags: TagList;
5645 }
5646 export interface CreateTransitGatewayRequest {
5647 /**
5648 * A description of the transit gateway.
5649 */
5650 Description?: String;
5651 /**
5652 * The transit gateway options.
5653 */
5654 Options?: TransitGatewayRequestOptions;
5655 /**
5656 * The tags to apply to the transit gateway.
5657 */
5658 TagSpecifications?: TagSpecificationList;
5659 /**
5660 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5661 */
5662 DryRun?: Boolean;
5663 }
5664 export interface CreateTransitGatewayResult {
5665 /**
5666 * Information about the transit gateway.
5667 */
5668 TransitGateway?: TransitGateway;
5669 }
5670 export interface CreateTransitGatewayRouteRequest {
5671 /**
5672 * The CIDR range used for destination matches. Routing decisions are based on the most specific match.
5673 */
5674 DestinationCidrBlock: String;
5675 /**
5676 * The ID of the transit gateway route table.
5677 */
5678 TransitGatewayRouteTableId: String;
5679 /**
5680 * The ID of the attachment.
5681 */
5682 TransitGatewayAttachmentId?: String;
5683 /**
5684 * Indicates whether traffic matching this route is to be dropped.
5685 */
5686 Blackhole?: Boolean;
5687 /**
5688 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5689 */
5690 DryRun?: Boolean;
5691 }
5692 export interface CreateTransitGatewayRouteResult {
5693 /**
5694 * Information about the route.
5695 */
5696 Route?: TransitGatewayRoute;
5697 }
5698 export interface CreateTransitGatewayRouteTableRequest {
5699 /**
5700 * The ID of the transit gateway.
5701 */
5702 TransitGatewayId: String;
5703 /**
5704 * The tags to apply to the transit gateway route table.
5705 */
5706 TagSpecifications?: TagSpecificationList;
5707 /**
5708 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5709 */
5710 DryRun?: Boolean;
5711 }
5712 export interface CreateTransitGatewayRouteTableResult {
5713 /**
5714 * Information about the transit gateway route table.
5715 */
5716 TransitGatewayRouteTable?: TransitGatewayRouteTable;
5717 }
5718 export interface CreateTransitGatewayVpcAttachmentRequest {
5719 /**
5720 * The ID of the transit gateway.
5721 */
5722 TransitGatewayId: String;
5723 /**
5724 * The ID of the VPC.
5725 */
5726 VpcId: String;
5727 /**
5728 * The IDs of one or more subnets. You can specify only one subnet per Availability Zone. You must specify at least one subnet, but we recommend that you specify two subnets for better availability. The transit gateway uses one IP address from each specified subnet.
5729 */
5730 SubnetIds: ValueStringList;
5731 /**
5732 * The VPC attachment options.
5733 */
5734 Options?: CreateTransitGatewayVpcAttachmentRequestOptions;
5735 /**
5736 * The tags to apply to the VPC attachment.
5737 */
5738 TagSpecifications?: TagSpecificationList;
5739 /**
5740 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5741 */
5742 DryRun?: Boolean;
5743 }
5744 export interface CreateTransitGatewayVpcAttachmentRequestOptions {
5745 /**
5746 * Enable or disable DNS support. The default is enable.
5747 */
5748 DnsSupport?: DnsSupportValue;
5749 /**
5750 * Enable or disable IPv6 support. The default is enable.
5751 */
5752 Ipv6Support?: Ipv6SupportValue;
5753 }
5754 export interface CreateTransitGatewayVpcAttachmentResult {
5755 /**
5756 * Information about the VPC attachment.
5757 */
5758 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
5759 }
5760 export interface CreateVolumePermission {
5761 /**
5762 * The group to be added or removed. The possible value is all.
5763 */
5764 Group?: PermissionGroup;
5765 /**
5766 * The AWS account ID to be added or removed.
5767 */
5768 UserId?: String;
5769 }
5770 export type CreateVolumePermissionList = CreateVolumePermission[];
5771 export interface CreateVolumePermissionModifications {
5772 /**
5773 * Adds the specified AWS account ID or group to the list.
5774 */
5775 Add?: CreateVolumePermissionList;
5776 /**
5777 * Removes the specified AWS account ID or group from the list.
5778 */
5779 Remove?: CreateVolumePermissionList;
5780 }
5781 export interface CreateVolumeRequest {
5782 /**
5783 * The Availability Zone in which to create the volume. Use DescribeAvailabilityZones to list the Availability Zones that are currently available to you.
5784 */
5785 AvailabilityZone: String;
5786 /**
5787 * Specifies whether the volume should be encrypted. Encrypted Amazon EBS volumes may only be attached to instances that support Amazon EBS encryption. Volumes that are created from encrypted snapshots are automatically encrypted. There is no way to create an encrypted volume from an unencrypted snapshot or vice versa. If your AMI uses encrypted volumes, you can only launch it on supported instance types. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
5788 */
5789 Encrypted?: Boolean;
5790 /**
5791 * The number of I/O operations per second (IOPS) to provision for the volume, with a maximum ratio of 50 IOPS/GiB. Range is 100 to 64,000 IOPS for volumes in most Regions. Maximum IOPS of 64,000 is guaranteed only on Nitro-based instances. Other instance families guarantee performance up to 32,000 IOPS. For more information, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide. This parameter is valid only for Provisioned IOPS SSD (io1) volumes.
5792 */
5793 Iops?: Integer;
5794 /**
5795 * An identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted volume. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set. The CMK identifier may be provided in any of the following formats: Key ID Key alias ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. ARN using key alias. The alias ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the alias namespace, and then the CMK alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. AWS parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. The action will eventually fail.
5796 */
5797 KmsKeyId?: String;
5798 /**
5799 * The size of the volume, in GiBs. Constraints: 1-16,384 for gp2, 4-16,384 for io1, 500-16,384 for st1, 500-16,384 for sc1, and 1-1,024 for standard. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size. Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size. At least one of Size or SnapshotId are required.
5800 */
5801 Size?: Integer;
5802 /**
5803 * The snapshot from which to create the volume. At least one of Size or SnapshotId are required.
5804 */
5805 SnapshotId?: String;
5806 /**
5807 * The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes. Defaults: If no volume type is specified, the default is standard in us-east-1, eu-west-1, eu-central-1, us-west-2, us-west-1, sa-east-1, ap-northeast-1, ap-northeast-2, ap-southeast-1, ap-southeast-2, ap-south-1, us-gov-west-1, and cn-north-1. In all other Regions, EBS defaults to gp2.
5808 */
5809 VolumeType?: VolumeType;
5810 /**
5811 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5812 */
5813 DryRun?: Boolean;
5814 /**
5815 * The tags to apply to the volume during creation.
5816 */
5817 TagSpecifications?: TagSpecificationList;
5818 }
5819 export interface CreateVpcEndpointConnectionNotificationRequest {
5820 /**
5821 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5822 */
5823 DryRun?: Boolean;
5824 /**
5825 * The ID of the endpoint service.
5826 */
5827 ServiceId?: String;
5828 /**
5829 * The ID of the endpoint.
5830 */
5831 VpcEndpointId?: String;
5832 /**
5833 * The ARN of the SNS topic for the notifications.
5834 */
5835 ConnectionNotificationArn: String;
5836 /**
5837 * One or more endpoint events for which to receive notifications. Valid values are Accept, Connect, Delete, and Reject.
5838 */
5839 ConnectionEvents: ValueStringList;
5840 /**
5841 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
5842 */
5843 ClientToken?: String;
5844 }
5845 export interface CreateVpcEndpointConnectionNotificationResult {
5846 /**
5847 * Information about the notification.
5848 */
5849 ConnectionNotification?: ConnectionNotification;
5850 /**
5851 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request.
5852 */
5853 ClientToken?: String;
5854 }
5855 export interface CreateVpcEndpointRequest {
5856 /**
5857 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5858 */
5859 DryRun?: Boolean;
5860 /**
5861 * The type of endpoint. Default: Gateway
5862 */
5863 VpcEndpointType?: VpcEndpointType;
5864 /**
5865 * The ID of the VPC in which the endpoint will be used.
5866 */
5867 VpcId: String;
5868 /**
5869 * The service name. To get a list of available services, use the DescribeVpcEndpointServices request, or get the name from the service provider.
5870 */
5871 ServiceName: String;
5872 /**
5873 * A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.
5874 */
5875 PolicyDocument?: String;
5876 /**
5877 * (Gateway endpoint) One or more route table IDs.
5878 */
5879 RouteTableIds?: ValueStringList;
5880 /**
5881 * (Interface endpoint) The ID of one or more subnets in which to create an endpoint network interface.
5882 */
5883 SubnetIds?: ValueStringList;
5884 /**
5885 * (Interface endpoint) The ID of one or more security groups to associate with the endpoint network interface.
5886 */
5887 SecurityGroupIds?: ValueStringList;
5888 /**
5889 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
5890 */
5891 ClientToken?: String;
5892 /**
5893 * (Interface endpoint) Indicate whether to associate a private hosted zone with the specified VPC. The private hosted zone contains a record set for the default public DNS name for the service for the region (for example, kinesis.us-east-1.amazonaws.com) which resolves to the private IP addresses of the endpoint network interfaces in the VPC. This enables you to make requests to the default public DNS name for the service instead of the public DNS names that are automatically generated by the VPC endpoint service. To use a private hosted zone, you must set the following VPC attributes to true: enableDnsHostnames and enableDnsSupport. Use ModifyVpcAttribute to set the VPC attributes. Default: false
5894 */
5895 PrivateDnsEnabled?: Boolean;
5896 }
5897 export interface CreateVpcEndpointResult {
5898 /**
5899 * Information about the endpoint.
5900 */
5901 VpcEndpoint?: VpcEndpoint;
5902 /**
5903 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request.
5904 */
5905 ClientToken?: String;
5906 }
5907 export interface CreateVpcEndpointServiceConfigurationRequest {
5908 /**
5909 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5910 */
5911 DryRun?: Boolean;
5912 /**
5913 * Indicate whether requests from service consumers to create an endpoint to your service must be accepted. To accept a request, use AcceptVpcEndpointConnections.
5914 */
5915 AcceptanceRequired?: Boolean;
5916 /**
5917 * The Amazon Resource Names (ARNs) of one or more Network Load Balancers for your service.
5918 */
5919 NetworkLoadBalancerArns: ValueStringList;
5920 /**
5921 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency.
5922 */
5923 ClientToken?: String;
5924 }
5925 export interface CreateVpcEndpointServiceConfigurationResult {
5926 /**
5927 * Information about the service configuration.
5928 */
5929 ServiceConfiguration?: ServiceConfiguration;
5930 /**
5931 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request.
5932 */
5933 ClientToken?: String;
5934 }
5935 export interface CreateVpcPeeringConnectionRequest {
5936 /**
5937 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5938 */
5939 DryRun?: Boolean;
5940 /**
5941 * The AWS account ID of the owner of the accepter VPC. Default: Your AWS account ID
5942 */
5943 PeerOwnerId?: String;
5944 /**
5945 * The ID of the VPC with which you are creating the VPC peering connection. You must specify this parameter in the request.
5946 */
5947 PeerVpcId?: String;
5948 /**
5949 * The ID of the requester VPC. You must specify this parameter in the request.
5950 */
5951 VpcId?: String;
5952 /**
5953 * The region code for the accepter VPC, if the accepter VPC is located in a region other than the region in which you make the request. Default: The region in which you make the request.
5954 */
5955 PeerRegion?: String;
5956 }
5957 export interface CreateVpcPeeringConnectionResult {
5958 /**
5959 * Information about the VPC peering connection.
5960 */
5961 VpcPeeringConnection?: VpcPeeringConnection;
5962 }
5963 export interface CreateVpcRequest {
5964 /**
5965 * The IPv4 network range for the VPC, in CIDR notation. For example, 10.0.0.0/16.
5966 */
5967 CidrBlock: String;
5968 /**
5969 * Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You cannot specify the range of IP addresses, or the size of the CIDR block.
5970 */
5971 AmazonProvidedIpv6CidrBlock?: Boolean;
5972 /**
5973 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
5974 */
5975 DryRun?: Boolean;
5976 /**
5977 * The tenancy options for instances launched into the VPC. For default, instances are launched with shared tenancy by default. You can launch instances with any tenancy into a shared tenancy VPC. For dedicated, instances are launched as dedicated tenancy instances by default. You can only launch instances with a tenancy of dedicated or host into a dedicated tenancy VPC. Important: The host value cannot be used with this parameter. Use the default or dedicated values only. Default: default
5978 */
5979 InstanceTenancy?: Tenancy;
5980 }
5981 export interface CreateVpcResult {
5982 /**
5983 * Information about the VPC.
5984 */
5985 Vpc?: Vpc;
5986 }
5987 export interface CreateVpnConnectionRequest {
5988 /**
5989 * The ID of the customer gateway.
5990 */
5991 CustomerGatewayId: String;
5992 /**
5993 * The type of VPN connection (ipsec.1).
5994 */
5995 Type: String;
5996 /**
5997 * The ID of the virtual private gateway. If you specify a virtual private gateway, you cannot specify a transit gateway.
5998 */
5999 VpnGatewayId?: String;
6000 /**
6001 * The ID of the transit gateway. If you specify a transit gateway, you cannot specify a virtual private gateway.
6002 */
6003 TransitGatewayId?: String;
6004 /**
6005 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6006 */
6007 DryRun?: Boolean;
6008 /**
6009 * The options for the VPN connection.
6010 */
6011 Options?: VpnConnectionOptionsSpecification;
6012 }
6013 export interface CreateVpnConnectionResult {
6014 /**
6015 * Information about the VPN connection.
6016 */
6017 VpnConnection?: VpnConnection;
6018 }
6019 export interface CreateVpnConnectionRouteRequest {
6020 /**
6021 * The CIDR block associated with the local subnet of the customer network.
6022 */
6023 DestinationCidrBlock: String;
6024 /**
6025 * The ID of the VPN connection.
6026 */
6027 VpnConnectionId: String;
6028 }
6029 export interface CreateVpnGatewayRequest {
6030 /**
6031 * The Availability Zone for the virtual private gateway.
6032 */
6033 AvailabilityZone?: String;
6034 /**
6035 * The type of VPN connection this virtual private gateway supports.
6036 */
6037 Type: GatewayType;
6038 /**
6039 * A private Autonomous System Number (ASN) for the Amazon side of a BGP session. If you're using a 16-bit ASN, it must be in the 64512 to 65534 range. If you're using a 32-bit ASN, it must be in the 4200000000 to 4294967294 range. Default: 64512
6040 */
6041 AmazonSideAsn?: Long;
6042 /**
6043 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6044 */
6045 DryRun?: Boolean;
6046 }
6047 export interface CreateVpnGatewayResult {
6048 /**
6049 * Information about the virtual private gateway.
6050 */
6051 VpnGateway?: VpnGateway;
6052 }
6053 export interface CreditSpecification {
6054 /**
6055 * The credit option for CPU usage of a T2 or T3 instance. Valid values are standard and unlimited.
6056 */
6057 CpuCredits?: String;
6058 }
6059 export interface CreditSpecificationRequest {
6060 /**
6061 * The credit option for CPU usage of a T2 or T3 instance. Valid values are standard and unlimited.
6062 */
6063 CpuCredits: String;
6064 }
6065 export type CurrencyCodeValues = "USD"|string;
6066 export interface CustomerGateway {
6067 /**
6068 * The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN).
6069 */
6070 BgpAsn?: String;
6071 /**
6072 * The ID of the customer gateway.
6073 */
6074 CustomerGatewayId?: String;
6075 /**
6076 * The Internet-routable IP address of the customer gateway's outside interface.
6077 */
6078 IpAddress?: String;
6079 /**
6080 * The current state of the customer gateway (pending | available | deleting | deleted).
6081 */
6082 State?: String;
6083 /**
6084 * The type of VPN connection the customer gateway supports (ipsec.1).
6085 */
6086 Type?: String;
6087 /**
6088 * Any tags assigned to the customer gateway.
6089 */
6090 Tags?: TagList;
6091 }
6092 export type CustomerGatewayIdStringList = String[];
6093 export type CustomerGatewayList = CustomerGateway[];
6094 export type DatafeedSubscriptionState = "Active"|"Inactive"|string;
6095 export type DateTime = Date;
6096 export type DefaultRouteTableAssociationValue = "enable"|"disable"|string;
6097 export type DefaultRouteTablePropagationValue = "enable"|"disable"|string;
6098 export type DefaultTargetCapacityType = "spot"|"on-demand"|string;
6099 export interface DeleteClientVpnEndpointRequest {
6100 /**
6101 * The ID of the Client VPN to be deleted.
6102 */
6103 ClientVpnEndpointId: String;
6104 /**
6105 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6106 */
6107 DryRun?: Boolean;
6108 }
6109 export interface DeleteClientVpnEndpointResult {
6110 /**
6111 * The current state of the Client VPN endpoint.
6112 */
6113 Status?: ClientVpnEndpointStatus;
6114 }
6115 export interface DeleteClientVpnRouteRequest {
6116 /**
6117 * The ID of the Client VPN endpoint from which the route is to be deleted.
6118 */
6119 ClientVpnEndpointId: String;
6120 /**
6121 * The ID of the target subnet used by the route.
6122 */
6123 TargetVpcSubnetId?: String;
6124 /**
6125 * The IPv4 address range, in CIDR notation, of the route to be deleted.
6126 */
6127 DestinationCidrBlock: String;
6128 /**
6129 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6130 */
6131 DryRun?: Boolean;
6132 }
6133 export interface DeleteClientVpnRouteResult {
6134 /**
6135 * The current state of the route.
6136 */
6137 Status?: ClientVpnRouteStatus;
6138 }
6139 export interface DeleteCustomerGatewayRequest {
6140 /**
6141 * The ID of the customer gateway.
6142 */
6143 CustomerGatewayId: String;
6144 /**
6145 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6146 */
6147 DryRun?: Boolean;
6148 }
6149 export interface DeleteDhcpOptionsRequest {
6150 /**
6151 * The ID of the DHCP options set.
6152 */
6153 DhcpOptionsId: String;
6154 /**
6155 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6156 */
6157 DryRun?: Boolean;
6158 }
6159 export interface DeleteEgressOnlyInternetGatewayRequest {
6160 /**
6161 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6162 */
6163 DryRun?: Boolean;
6164 /**
6165 * The ID of the egress-only internet gateway.
6166 */
6167 EgressOnlyInternetGatewayId: EgressOnlyInternetGatewayId;
6168 }
6169 export interface DeleteEgressOnlyInternetGatewayResult {
6170 /**
6171 * Returns true if the request succeeds; otherwise, it returns an error.
6172 */
6173 ReturnCode?: Boolean;
6174 }
6175 export interface DeleteFleetError {
6176 /**
6177 * The error code.
6178 */
6179 Code?: DeleteFleetErrorCode;
6180 /**
6181 * The description for the error code.
6182 */
6183 Message?: String;
6184 }
6185 export type DeleteFleetErrorCode = "fleetIdDoesNotExist"|"fleetIdMalformed"|"fleetNotInDeletableState"|"unexpectedError"|string;
6186 export interface DeleteFleetErrorItem {
6187 /**
6188 * The error.
6189 */
6190 Error?: DeleteFleetError;
6191 /**
6192 * The ID of the EC2 Fleet.
6193 */
6194 FleetId?: FleetIdentifier;
6195 }
6196 export type DeleteFleetErrorSet = DeleteFleetErrorItem[];
6197 export interface DeleteFleetSuccessItem {
6198 /**
6199 * The current state of the EC2 Fleet.
6200 */
6201 CurrentFleetState?: FleetStateCode;
6202 /**
6203 * The previous state of the EC2 Fleet.
6204 */
6205 PreviousFleetState?: FleetStateCode;
6206 /**
6207 * The ID of the EC2 Fleet.
6208 */
6209 FleetId?: FleetIdentifier;
6210 }
6211 export type DeleteFleetSuccessSet = DeleteFleetSuccessItem[];
6212 export interface DeleteFleetsRequest {
6213 /**
6214 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6215 */
6216 DryRun?: Boolean;
6217 /**
6218 * The IDs of the EC2 Fleets.
6219 */
6220 FleetIds: FleetIdSet;
6221 /**
6222 * Indicates whether to terminate instances for an EC2 Fleet if it is deleted successfully.
6223 */
6224 TerminateInstances: Boolean;
6225 }
6226 export interface DeleteFleetsResult {
6227 /**
6228 * Information about the EC2 Fleets that are successfully deleted.
6229 */
6230 SuccessfulFleetDeletions?: DeleteFleetSuccessSet;
6231 /**
6232 * Information about the EC2 Fleets that are not successfully deleted.
6233 */
6234 UnsuccessfulFleetDeletions?: DeleteFleetErrorSet;
6235 }
6236 export interface DeleteFlowLogsRequest {
6237 /**
6238 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6239 */
6240 DryRun?: Boolean;
6241 /**
6242 * One or more flow log IDs.
6243 */
6244 FlowLogIds: ValueStringList;
6245 }
6246 export interface DeleteFlowLogsResult {
6247 /**
6248 * Information about the flow logs that could not be deleted successfully.
6249 */
6250 Unsuccessful?: UnsuccessfulItemSet;
6251 }
6252 export interface DeleteFpgaImageRequest {
6253 /**
6254 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6255 */
6256 DryRun?: Boolean;
6257 /**
6258 * The ID of the AFI.
6259 */
6260 FpgaImageId: String;
6261 }
6262 export interface DeleteFpgaImageResult {
6263 /**
6264 * Is true if the request succeeds, and an error otherwise.
6265 */
6266 Return?: Boolean;
6267 }
6268 export interface DeleteInternetGatewayRequest {
6269 /**
6270 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6271 */
6272 DryRun?: Boolean;
6273 /**
6274 * The ID of the internet gateway.
6275 */
6276 InternetGatewayId: String;
6277 }
6278 export interface DeleteKeyPairRequest {
6279 /**
6280 * The name of the key pair.
6281 */
6282 KeyName: String;
6283 /**
6284 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6285 */
6286 DryRun?: Boolean;
6287 }
6288 export interface DeleteLaunchTemplateRequest {
6289 /**
6290 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6291 */
6292 DryRun?: Boolean;
6293 /**
6294 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
6295 */
6296 LaunchTemplateId?: String;
6297 /**
6298 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
6299 */
6300 LaunchTemplateName?: LaunchTemplateName;
6301 }
6302 export interface DeleteLaunchTemplateResult {
6303 /**
6304 * Information about the launch template.
6305 */
6306 LaunchTemplate?: LaunchTemplate;
6307 }
6308 export interface DeleteLaunchTemplateVersionsRequest {
6309 /**
6310 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6311 */
6312 DryRun?: Boolean;
6313 /**
6314 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
6315 */
6316 LaunchTemplateId?: String;
6317 /**
6318 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
6319 */
6320 LaunchTemplateName?: LaunchTemplateName;
6321 /**
6322 * The version numbers of one or more launch template versions to delete.
6323 */
6324 Versions: VersionStringList;
6325 }
6326 export interface DeleteLaunchTemplateVersionsResponseErrorItem {
6327 /**
6328 * The ID of the launch template.
6329 */
6330 LaunchTemplateId?: String;
6331 /**
6332 * The name of the launch template.
6333 */
6334 LaunchTemplateName?: String;
6335 /**
6336 * The version number of the launch template.
6337 */
6338 VersionNumber?: Long;
6339 /**
6340 * Information about the error.
6341 */
6342 ResponseError?: ResponseError;
6343 }
6344 export type DeleteLaunchTemplateVersionsResponseErrorSet = DeleteLaunchTemplateVersionsResponseErrorItem[];
6345 export interface DeleteLaunchTemplateVersionsResponseSuccessItem {
6346 /**
6347 * The ID of the launch template.
6348 */
6349 LaunchTemplateId?: String;
6350 /**
6351 * The name of the launch template.
6352 */
6353 LaunchTemplateName?: String;
6354 /**
6355 * The version number of the launch template.
6356 */
6357 VersionNumber?: Long;
6358 }
6359 export type DeleteLaunchTemplateVersionsResponseSuccessSet = DeleteLaunchTemplateVersionsResponseSuccessItem[];
6360 export interface DeleteLaunchTemplateVersionsResult {
6361 /**
6362 * Information about the launch template versions that were successfully deleted.
6363 */
6364 SuccessfullyDeletedLaunchTemplateVersions?: DeleteLaunchTemplateVersionsResponseSuccessSet;
6365 /**
6366 * Information about the launch template versions that could not be deleted.
6367 */
6368 UnsuccessfullyDeletedLaunchTemplateVersions?: DeleteLaunchTemplateVersionsResponseErrorSet;
6369 }
6370 export interface DeleteNatGatewayRequest {
6371 /**
6372 * The ID of the NAT gateway.
6373 */
6374 NatGatewayId: String;
6375 }
6376 export interface DeleteNatGatewayResult {
6377 /**
6378 * The ID of the NAT gateway.
6379 */
6380 NatGatewayId?: String;
6381 }
6382 export interface DeleteNetworkAclEntryRequest {
6383 /**
6384 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6385 */
6386 DryRun?: Boolean;
6387 /**
6388 * Indicates whether the rule is an egress rule.
6389 */
6390 Egress: Boolean;
6391 /**
6392 * The ID of the network ACL.
6393 */
6394 NetworkAclId: String;
6395 /**
6396 * The rule number of the entry to delete.
6397 */
6398 RuleNumber: Integer;
6399 }
6400 export interface DeleteNetworkAclRequest {
6401 /**
6402 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6403 */
6404 DryRun?: Boolean;
6405 /**
6406 * The ID of the network ACL.
6407 */
6408 NetworkAclId: String;
6409 }
6410 export interface DeleteNetworkInterfacePermissionRequest {
6411 /**
6412 * The ID of the network interface permission.
6413 */
6414 NetworkInterfacePermissionId: String;
6415 /**
6416 * Specify true to remove the permission even if the network interface is attached to an instance.
6417 */
6418 Force?: Boolean;
6419 /**
6420 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6421 */
6422 DryRun?: Boolean;
6423 }
6424 export interface DeleteNetworkInterfacePermissionResult {
6425 /**
6426 * Returns true if the request succeeds, otherwise returns an error.
6427 */
6428 Return?: Boolean;
6429 }
6430 export interface DeleteNetworkInterfaceRequest {
6431 /**
6432 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6433 */
6434 DryRun?: Boolean;
6435 /**
6436 * The ID of the network interface.
6437 */
6438 NetworkInterfaceId: String;
6439 }
6440 export interface DeletePlacementGroupRequest {
6441 /**
6442 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6443 */
6444 DryRun?: Boolean;
6445 /**
6446 * The name of the placement group.
6447 */
6448 GroupName: String;
6449 }
6450 export interface DeleteRouteRequest {
6451 /**
6452 * The IPv4 CIDR range for the route. The value you specify must match the CIDR for the route exactly.
6453 */
6454 DestinationCidrBlock?: String;
6455 /**
6456 * The IPv6 CIDR range for the route. The value you specify must match the CIDR for the route exactly.
6457 */
6458 DestinationIpv6CidrBlock?: String;
6459 /**
6460 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6461 */
6462 DryRun?: Boolean;
6463 /**
6464 * The ID of the route table.
6465 */
6466 RouteTableId: String;
6467 }
6468 export interface DeleteRouteTableRequest {
6469 /**
6470 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6471 */
6472 DryRun?: Boolean;
6473 /**
6474 * The ID of the route table.
6475 */
6476 RouteTableId: String;
6477 }
6478 export interface DeleteSecurityGroupRequest {
6479 /**
6480 * The ID of the security group. Required for a nondefault VPC.
6481 */
6482 GroupId?: String;
6483 /**
6484 * [EC2-Classic, default VPC] The name of the security group. You can specify either the security group name or the security group ID.
6485 */
6486 GroupName?: String;
6487 /**
6488 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6489 */
6490 DryRun?: Boolean;
6491 }
6492 export interface DeleteSnapshotRequest {
6493 /**
6494 * The ID of the EBS snapshot.
6495 */
6496 SnapshotId: String;
6497 /**
6498 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6499 */
6500 DryRun?: Boolean;
6501 }
6502 export interface DeleteSpotDatafeedSubscriptionRequest {
6503 /**
6504 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6505 */
6506 DryRun?: Boolean;
6507 }
6508 export interface DeleteSubnetRequest {
6509 /**
6510 * The ID of the subnet.
6511 */
6512 SubnetId: String;
6513 /**
6514 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6515 */
6516 DryRun?: Boolean;
6517 }
6518 export interface DeleteTagsRequest {
6519 /**
6520 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6521 */
6522 DryRun?: Boolean;
6523 /**
6524 * The IDs of one or more resources, separated by spaces. Constraints: Up to 1000 resource IDs. We recommend breaking up this request into smaller batches.
6525 */
6526 Resources: ResourceIdList;
6527 /**
6528 * One or more tags to delete. Specify a tag key and an optional tag value to delete specific tags. If you specify a tag key without a tag value, we delete any tag with this key regardless of its value. If you specify a tag key with an empty string as the tag value, we delete the tag only if its value is an empty string. If you omit this parameter, we delete all user-defined tags for the specified resources. We do not delete AWS-generated tags (tags that have the aws: prefix).
6529 */
6530 Tags?: TagList;
6531 }
6532 export interface DeleteTransitGatewayRequest {
6533 /**
6534 * The ID of the transit gateway.
6535 */
6536 TransitGatewayId: String;
6537 /**
6538 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6539 */
6540 DryRun?: Boolean;
6541 }
6542 export interface DeleteTransitGatewayResult {
6543 /**
6544 * Information about the deleted transit gateway.
6545 */
6546 TransitGateway?: TransitGateway;
6547 }
6548 export interface DeleteTransitGatewayRouteRequest {
6549 /**
6550 * The ID of the transit gateway route table.
6551 */
6552 TransitGatewayRouteTableId: String;
6553 /**
6554 * The CIDR range for the route. This must match the CIDR for the route exactly.
6555 */
6556 DestinationCidrBlock: String;
6557 /**
6558 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6559 */
6560 DryRun?: Boolean;
6561 }
6562 export interface DeleteTransitGatewayRouteResult {
6563 /**
6564 * Information about the route.
6565 */
6566 Route?: TransitGatewayRoute;
6567 }
6568 export interface DeleteTransitGatewayRouteTableRequest {
6569 /**
6570 * The ID of the transit gateway route table.
6571 */
6572 TransitGatewayRouteTableId: String;
6573 /**
6574 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6575 */
6576 DryRun?: Boolean;
6577 }
6578 export interface DeleteTransitGatewayRouteTableResult {
6579 /**
6580 * Information about the deleted transit gateway route table.
6581 */
6582 TransitGatewayRouteTable?: TransitGatewayRouteTable;
6583 }
6584 export interface DeleteTransitGatewayVpcAttachmentRequest {
6585 /**
6586 * The ID of the attachment.
6587 */
6588 TransitGatewayAttachmentId: String;
6589 /**
6590 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6591 */
6592 DryRun?: Boolean;
6593 }
6594 export interface DeleteTransitGatewayVpcAttachmentResult {
6595 /**
6596 * Information about the deleted VPC attachment.
6597 */
6598 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
6599 }
6600 export interface DeleteVolumeRequest {
6601 /**
6602 * The ID of the volume.
6603 */
6604 VolumeId: String;
6605 /**
6606 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6607 */
6608 DryRun?: Boolean;
6609 }
6610 export interface DeleteVpcEndpointConnectionNotificationsRequest {
6611 /**
6612 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6613 */
6614 DryRun?: Boolean;
6615 /**
6616 * One or more notification IDs.
6617 */
6618 ConnectionNotificationIds: ValueStringList;
6619 }
6620 export interface DeleteVpcEndpointConnectionNotificationsResult {
6621 /**
6622 * Information about the notifications that could not be deleted successfully.
6623 */
6624 Unsuccessful?: UnsuccessfulItemSet;
6625 }
6626 export interface DeleteVpcEndpointServiceConfigurationsRequest {
6627 /**
6628 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6629 */
6630 DryRun?: Boolean;
6631 /**
6632 * The IDs of one or more services.
6633 */
6634 ServiceIds: ValueStringList;
6635 }
6636 export interface DeleteVpcEndpointServiceConfigurationsResult {
6637 /**
6638 * Information about the service configurations that were not deleted, if applicable.
6639 */
6640 Unsuccessful?: UnsuccessfulItemSet;
6641 }
6642 export interface DeleteVpcEndpointsRequest {
6643 /**
6644 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6645 */
6646 DryRun?: Boolean;
6647 /**
6648 * One or more VPC endpoint IDs.
6649 */
6650 VpcEndpointIds: ValueStringList;
6651 }
6652 export interface DeleteVpcEndpointsResult {
6653 /**
6654 * Information about the VPC endpoints that were not successfully deleted.
6655 */
6656 Unsuccessful?: UnsuccessfulItemSet;
6657 }
6658 export interface DeleteVpcPeeringConnectionRequest {
6659 /**
6660 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6661 */
6662 DryRun?: Boolean;
6663 /**
6664 * The ID of the VPC peering connection.
6665 */
6666 VpcPeeringConnectionId: String;
6667 }
6668 export interface DeleteVpcPeeringConnectionResult {
6669 /**
6670 * Returns true if the request succeeds; otherwise, it returns an error.
6671 */
6672 Return?: Boolean;
6673 }
6674 export interface DeleteVpcRequest {
6675 /**
6676 * The ID of the VPC.
6677 */
6678 VpcId: String;
6679 /**
6680 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6681 */
6682 DryRun?: Boolean;
6683 }
6684 export interface DeleteVpnConnectionRequest {
6685 /**
6686 * The ID of the VPN connection.
6687 */
6688 VpnConnectionId: String;
6689 /**
6690 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6691 */
6692 DryRun?: Boolean;
6693 }
6694 export interface DeleteVpnConnectionRouteRequest {
6695 /**
6696 * The CIDR block associated with the local subnet of the customer network.
6697 */
6698 DestinationCidrBlock: String;
6699 /**
6700 * The ID of the VPN connection.
6701 */
6702 VpnConnectionId: String;
6703 }
6704 export interface DeleteVpnGatewayRequest {
6705 /**
6706 * The ID of the virtual private gateway.
6707 */
6708 VpnGatewayId: String;
6709 /**
6710 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6711 */
6712 DryRun?: Boolean;
6713 }
6714 export interface DeprovisionByoipCidrRequest {
6715 /**
6716 * The public IPv4 address range, in CIDR notation. The prefix must be the same prefix that you specified when you provisioned the address range.
6717 */
6718 Cidr: String;
6719 /**
6720 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6721 */
6722 DryRun?: Boolean;
6723 }
6724 export interface DeprovisionByoipCidrResult {
6725 /**
6726 * Information about the address range.
6727 */
6728 ByoipCidr?: ByoipCidr;
6729 }
6730 export interface DeregisterImageRequest {
6731 /**
6732 * The ID of the AMI.
6733 */
6734 ImageId: String;
6735 /**
6736 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6737 */
6738 DryRun?: Boolean;
6739 }
6740 export interface DescribeAccountAttributesRequest {
6741 /**
6742 * One or more account attribute names.
6743 */
6744 AttributeNames?: AccountAttributeNameStringList;
6745 /**
6746 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6747 */
6748 DryRun?: Boolean;
6749 }
6750 export interface DescribeAccountAttributesResult {
6751 /**
6752 * Information about one or more account attributes.
6753 */
6754 AccountAttributes?: AccountAttributeList;
6755 }
6756 export interface DescribeAddressesRequest {
6757 /**
6758 * One or more filters. Filter names and values are case-sensitive. allocation-id - [EC2-VPC] The allocation ID for the address. association-id - [EC2-VPC] The association ID for the address. domain - Indicates whether the address is for use in EC2-Classic (standard) or in a VPC (vpc). instance-id - The ID of the instance the address is associated with, if any. network-interface-id - [EC2-VPC] The ID of the network interface that the address is associated with, if any. network-interface-owner-id - The AWS account ID of the owner. private-ip-address - [EC2-VPC] The private IP address associated with the Elastic IP address. public-ip - The Elastic IP address. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
6759 */
6760 Filters?: FilterList;
6761 /**
6762 * One or more Elastic IP addresses. Default: Describes all your Elastic IP addresses.
6763 */
6764 PublicIps?: PublicIpStringList;
6765 /**
6766 * [EC2-VPC] One or more allocation IDs. Default: Describes all your Elastic IP addresses.
6767 */
6768 AllocationIds?: AllocationIdList;
6769 /**
6770 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6771 */
6772 DryRun?: Boolean;
6773 }
6774 export interface DescribeAddressesResult {
6775 /**
6776 * Information about one or more Elastic IP addresses.
6777 */
6778 Addresses?: AddressList;
6779 }
6780 export interface DescribeAggregateIdFormatRequest {
6781 /**
6782 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6783 */
6784 DryRun?: Boolean;
6785 }
6786 export interface DescribeAggregateIdFormatResult {
6787 /**
6788 * Indicates whether all resource types in the region are configured to use longer IDs. This value is only true if all users are configured to use longer IDs for all resources types in the region.
6789 */
6790 UseLongIdsAggregated?: Boolean;
6791 /**
6792 * Information about each resource's ID format.
6793 */
6794 Statuses?: IdFormatList;
6795 }
6796 export interface DescribeAvailabilityZonesRequest {
6797 /**
6798 * One or more filters. message - Information about the Availability Zone. region-name - The name of the region for the Availability Zone (for example, us-east-1). state - The state of the Availability Zone (available | information | impaired | unavailable). zone-id - The ID of the Availability Zone (for example, use1-az1). zone-name - The name of the Availability Zone (for example, us-east-1a).
6799 */
6800 Filters?: FilterList;
6801 /**
6802 * The names of one or more Availability Zones.
6803 */
6804 ZoneNames?: ZoneNameStringList;
6805 /**
6806 * The IDs of one or more Availability Zones.
6807 */
6808 ZoneIds?: ZoneIdStringList;
6809 /**
6810 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6811 */
6812 DryRun?: Boolean;
6813 }
6814 export interface DescribeAvailabilityZonesResult {
6815 /**
6816 * Information about one or more Availability Zones.
6817 */
6818 AvailabilityZones?: AvailabilityZoneList;
6819 }
6820 export interface DescribeBundleTasksRequest {
6821 /**
6822 * One or more bundle task IDs. Default: Describes all your bundle tasks.
6823 */
6824 BundleIds?: BundleIdStringList;
6825 /**
6826 * One or more filters. bundle-id - The ID of the bundle task. error-code - If the task failed, the error code returned. error-message - If the task failed, the error message returned. instance-id - The ID of the instance. progress - The level of task completion, as a percentage (for example, 20%). s3-bucket - The Amazon S3 bucket to store the AMI. s3-prefix - The beginning of the AMI name. start-time - The time the task started (for example, 2013-09-15T17:15:20.000Z). state - The state of the task (pending | waiting-for-shutdown | bundling | storing | cancelling | complete | failed). update-time - The time of the most recent update for the task.
6827 */
6828 Filters?: FilterList;
6829 /**
6830 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6831 */
6832 DryRun?: Boolean;
6833 }
6834 export interface DescribeBundleTasksResult {
6835 /**
6836 * Information about one or more bundle tasks.
6837 */
6838 BundleTasks?: BundleTaskList;
6839 }
6840 export interface DescribeByoipCidrsRequest {
6841 /**
6842 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6843 */
6844 DryRun?: Boolean;
6845 /**
6846 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
6847 */
6848 MaxResults: MaxResults;
6849 /**
6850 * The token for the next page of results.
6851 */
6852 NextToken?: NextToken;
6853 }
6854 export interface DescribeByoipCidrsResult {
6855 /**
6856 * Information about your address ranges.
6857 */
6858 ByoipCidrs?: ByoipCidrSet;
6859 /**
6860 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
6861 */
6862 NextToken?: String;
6863 }
6864 export interface DescribeCapacityReservationsRequest {
6865 /**
6866 * The ID of the Capacity Reservation.
6867 */
6868 CapacityReservationIds?: CapacityReservationIdSet;
6869 /**
6870 * The token to retrieve the next page of results.
6871 */
6872 NextToken?: String;
6873 /**
6874 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value.
6875 */
6876 MaxResults?: Integer;
6877 /**
6878 * One or more filters.
6879 */
6880 Filters?: FilterList;
6881 /**
6882 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6883 */
6884 DryRun?: Boolean;
6885 }
6886 export interface DescribeCapacityReservationsResult {
6887 /**
6888 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
6889 */
6890 NextToken?: String;
6891 /**
6892 * Information about the Capacity Reservations.
6893 */
6894 CapacityReservations?: CapacityReservationSet;
6895 }
6896 export interface DescribeClassicLinkInstancesRequest {
6897 /**
6898 * One or more filters. group-id - The ID of a VPC security group that's associated with the instance. instance-id - The ID of the instance. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. vpc-id - The ID of the VPC to which the instance is linked. vpc-id - The ID of the VPC that the instance is linked to.
6899 */
6900 Filters?: FilterList;
6901 /**
6902 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6903 */
6904 DryRun?: Boolean;
6905 /**
6906 * One or more instance IDs. Must be instances linked to a VPC through ClassicLink.
6907 */
6908 InstanceIds?: InstanceIdStringList;
6909 /**
6910 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value. Constraint: If the value is greater than 1000, we return only 1000 items.
6911 */
6912 MaxResults?: Integer;
6913 /**
6914 * The token for the next page of results.
6915 */
6916 NextToken?: String;
6917 }
6918 export interface DescribeClassicLinkInstancesResult {
6919 /**
6920 * Information about one or more linked EC2-Classic instances.
6921 */
6922 Instances?: ClassicLinkInstanceList;
6923 /**
6924 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
6925 */
6926 NextToken?: String;
6927 }
6928 export interface DescribeClientVpnAuthorizationRulesRequest {
6929 /**
6930 * The ID of the Client VPN endpoint.
6931 */
6932 ClientVpnEndpointId: String;
6933 /**
6934 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6935 */
6936 DryRun?: Boolean;
6937 /**
6938 * The token to retrieve the next page of results.
6939 */
6940 NextToken?: NextToken;
6941 /**
6942 * One or more filters. Filter names and values are case-sensitive.
6943 */
6944 Filters?: FilterList;
6945 /**
6946 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.
6947 */
6948 MaxResults?: MaxResults;
6949 }
6950 export interface DescribeClientVpnAuthorizationRulesResult {
6951 /**
6952 * Information about the authorization rules.
6953 */
6954 AuthorizationRules?: AuthorizationRuleSet;
6955 /**
6956 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
6957 */
6958 NextToken?: NextToken;
6959 }
6960 export interface DescribeClientVpnConnectionsRequest {
6961 /**
6962 * The ID of the Client VPN endpoint.
6963 */
6964 ClientVpnEndpointId: String;
6965 /**
6966 * One or more filters. Filter names and values are case-sensitive.
6967 */
6968 Filters?: FilterList;
6969 /**
6970 * The token to retrieve the next page of results.
6971 */
6972 NextToken?: NextToken;
6973 /**
6974 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.
6975 */
6976 MaxResults?: MaxResults;
6977 /**
6978 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
6979 */
6980 DryRun?: Boolean;
6981 }
6982 export interface DescribeClientVpnConnectionsResult {
6983 /**
6984 * Information about the active and terminated client connections.
6985 */
6986 Connections?: ClientVpnConnectionSet;
6987 /**
6988 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
6989 */
6990 NextToken?: NextToken;
6991 }
6992 export interface DescribeClientVpnEndpointsRequest {
6993 /**
6994 * The ID of the Client VPN endpoint.
6995 */
6996 ClientVpnEndpointIds?: ValueStringList;
6997 /**
6998 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.
6999 */
7000 MaxResults?: MaxResults;
7001 /**
7002 * The token to retrieve the next page of results.
7003 */
7004 NextToken?: NextToken;
7005 /**
7006 * One or more filters. Filter names and values are case-sensitive.
7007 */
7008 Filters?: FilterList;
7009 /**
7010 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7011 */
7012 DryRun?: Boolean;
7013 }
7014 export interface DescribeClientVpnEndpointsResult {
7015 /**
7016 * Information about the Client VPN endpoints.
7017 */
7018 ClientVpnEndpoints?: EndpointSet;
7019 /**
7020 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7021 */
7022 NextToken?: NextToken;
7023 }
7024 export interface DescribeClientVpnRoutesRequest {
7025 /**
7026 * The ID of the Client VPN endpoint.
7027 */
7028 ClientVpnEndpointId: String;
7029 /**
7030 * One or more filters. Filter names and values are case-sensitive.
7031 */
7032 Filters?: FilterList;
7033 /**
7034 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.
7035 */
7036 MaxResults?: MaxResults;
7037 /**
7038 * The token to retrieve the next page of results.
7039 */
7040 NextToken?: NextToken;
7041 /**
7042 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7043 */
7044 DryRun?: Boolean;
7045 }
7046 export interface DescribeClientVpnRoutesResult {
7047 /**
7048 * Information about the Client VPN endpoint routes.
7049 */
7050 Routes?: ClientVpnRouteSet;
7051 /**
7052 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7053 */
7054 NextToken?: NextToken;
7055 }
7056 export interface DescribeClientVpnTargetNetworksRequest {
7057 /**
7058 * The ID of the Client VPN endpoint.
7059 */
7060 ClientVpnEndpointId: String;
7061 /**
7062 * The IDs of the target network associations.
7063 */
7064 AssociationIds?: ValueStringList;
7065 /**
7066 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the nextToken value.
7067 */
7068 MaxResults?: MaxResults;
7069 /**
7070 * The token to retrieve the next page of results.
7071 */
7072 NextToken?: NextToken;
7073 /**
7074 * One or more filters. Filter names and values are case-sensitive.
7075 */
7076 Filters?: FilterList;
7077 /**
7078 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7079 */
7080 DryRun?: Boolean;
7081 }
7082 export interface DescribeClientVpnTargetNetworksResult {
7083 /**
7084 * Information about the associated target networks.
7085 */
7086 ClientVpnTargetNetworks?: TargetNetworkSet;
7087 /**
7088 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7089 */
7090 NextToken?: NextToken;
7091 }
7092 export type DescribeConversionTaskList = ConversionTask[];
7093 export interface DescribeConversionTasksRequest {
7094 /**
7095 * One or more conversion task IDs.
7096 */
7097 ConversionTaskIds?: ConversionIdStringList;
7098 /**
7099 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7100 */
7101 DryRun?: Boolean;
7102 }
7103 export interface DescribeConversionTasksResult {
7104 /**
7105 * Information about the conversion tasks.
7106 */
7107 ConversionTasks?: DescribeConversionTaskList;
7108 }
7109 export interface DescribeCustomerGatewaysRequest {
7110 /**
7111 * One or more customer gateway IDs. Default: Describes all your customer gateways.
7112 */
7113 CustomerGatewayIds?: CustomerGatewayIdStringList;
7114 /**
7115 * One or more filters. bgp-asn - The customer gateway's Border Gateway Protocol (BGP) Autonomous System Number (ASN). customer-gateway-id - The ID of the customer gateway. ip-address - The IP address of the customer gateway's Internet-routable external interface. state - The state of the customer gateway (pending | available | deleting | deleted). type - The type of customer gateway. Currently, the only supported type is ipsec.1. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
7116 */
7117 Filters?: FilterList;
7118 /**
7119 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7120 */
7121 DryRun?: Boolean;
7122 }
7123 export interface DescribeCustomerGatewaysResult {
7124 /**
7125 * Information about one or more customer gateways.
7126 */
7127 CustomerGateways?: CustomerGatewayList;
7128 }
7129 export interface DescribeDhcpOptionsRequest {
7130 /**
7131 * The IDs of one or more DHCP options sets. Default: Describes all your DHCP options sets.
7132 */
7133 DhcpOptionsIds?: DhcpOptionsIdStringList;
7134 /**
7135 * One or more filters. dhcp-options-id - The ID of a DHCP options set. key - The key for one of the options (for example, domain-name). value - The value for one of the options. owner-id - The ID of the AWS account that owns the DHCP options set. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
7136 */
7137 Filters?: FilterList;
7138 /**
7139 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7140 */
7141 DryRun?: Boolean;
7142 }
7143 export interface DescribeDhcpOptionsResult {
7144 /**
7145 * Information about one or more DHCP options sets.
7146 */
7147 DhcpOptions?: DhcpOptionsList;
7148 }
7149 export interface DescribeEgressOnlyInternetGatewaysRequest {
7150 /**
7151 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7152 */
7153 DryRun?: Boolean;
7154 /**
7155 * One or more egress-only internet gateway IDs.
7156 */
7157 EgressOnlyInternetGatewayIds?: EgressOnlyInternetGatewayIdList;
7158 /**
7159 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
7160 */
7161 MaxResults?: Integer;
7162 /**
7163 * The token for the next page of results.
7164 */
7165 NextToken?: String;
7166 }
7167 export interface DescribeEgressOnlyInternetGatewaysResult {
7168 /**
7169 * Information about the egress-only internet gateways.
7170 */
7171 EgressOnlyInternetGateways?: EgressOnlyInternetGatewayList;
7172 /**
7173 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7174 */
7175 NextToken?: String;
7176 }
7177 export interface DescribeElasticGpusRequest {
7178 /**
7179 * One or more Elastic Graphics accelerator IDs.
7180 */
7181 ElasticGpuIds?: ElasticGpuIdSet;
7182 /**
7183 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7184 */
7185 DryRun?: Boolean;
7186 /**
7187 * One or more filters. availability-zone - The Availability Zone in which the Elastic Graphics accelerator resides. elastic-gpu-health - The status of the Elastic Graphics accelerator (OK | IMPAIRED). elastic-gpu-state - The state of the Elastic Graphics accelerator (ATTACHED). elastic-gpu-type - The type of Elastic Graphics accelerator; for example, eg1.medium. instance-id - The ID of the instance to which the Elastic Graphics accelerator is associated.
7188 */
7189 Filters?: FilterList;
7190 /**
7191 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000.
7192 */
7193 MaxResults?: Integer;
7194 /**
7195 * The token to request the next page of results.
7196 */
7197 NextToken?: String;
7198 }
7199 export interface DescribeElasticGpusResult {
7200 /**
7201 * Information about the Elastic Graphics accelerators.
7202 */
7203 ElasticGpuSet?: ElasticGpuSet;
7204 /**
7205 * The total number of items to return. If the total number of items available is more than the value specified in max-items then a Next-Token will be provided in the output that you can use to resume pagination.
7206 */
7207 MaxResults?: Integer;
7208 /**
7209 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7210 */
7211 NextToken?: String;
7212 }
7213 export interface DescribeExportTasksRequest {
7214 /**
7215 * One or more export task IDs.
7216 */
7217 ExportTaskIds?: ExportTaskIdStringList;
7218 }
7219 export interface DescribeExportTasksResult {
7220 /**
7221 * Information about the export tasks.
7222 */
7223 ExportTasks?: ExportTaskList;
7224 }
7225 export interface DescribeFleetError {
7226 /**
7227 * The launch templates and overrides that were used for launching the instances. Any parameters that you specify in the Overrides override the same parameters in the launch template.
7228 */
7229 LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse;
7230 /**
7231 * Indicates if the instance that could not be launched was a Spot Instance or On-Demand Instance.
7232 */
7233 Lifecycle?: InstanceLifecycle;
7234 /**
7235 * The error code that indicates why the instance could not be launched. For more information about error codes, see Error Codes.
7236 */
7237 ErrorCode?: String;
7238 /**
7239 * The error message that describes why the instance could not be launched. For more information about error messages, see ee Error Codes.
7240 */
7241 ErrorMessage?: String;
7242 }
7243 export interface DescribeFleetHistoryRequest {
7244 /**
7245 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7246 */
7247 DryRun?: Boolean;
7248 /**
7249 * The type of events to describe. By default, all events are described.
7250 */
7251 EventType?: FleetEventType;
7252 /**
7253 * The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.
7254 */
7255 MaxResults?: Integer;
7256 /**
7257 * The token for the next set of results.
7258 */
7259 NextToken?: String;
7260 /**
7261 * The ID of the EC2 Fleet.
7262 */
7263 FleetId: FleetIdentifier;
7264 /**
7265 * The start date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
7266 */
7267 StartTime: DateTime;
7268 }
7269 export interface DescribeFleetHistoryResult {
7270 /**
7271 * Information about the events in the history of the EC2 Fleet.
7272 */
7273 HistoryRecords?: HistoryRecordSet;
7274 /**
7275 * The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). All records up to this time were retrieved. If nextToken indicates that there are more results, this value is not present.
7276 */
7277 LastEvaluatedTime?: DateTime;
7278 /**
7279 * The token for the next set of results.
7280 */
7281 NextToken?: String;
7282 /**
7283 * The ID of the EC Fleet.
7284 */
7285 FleetId?: FleetIdentifier;
7286 /**
7287 * The start date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
7288 */
7289 StartTime?: DateTime;
7290 }
7291 export interface DescribeFleetInstancesRequest {
7292 /**
7293 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7294 */
7295 DryRun?: Boolean;
7296 /**
7297 * The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.
7298 */
7299 MaxResults?: Integer;
7300 /**
7301 * The token for the next set of results.
7302 */
7303 NextToken?: String;
7304 /**
7305 * The ID of the EC2 Fleet.
7306 */
7307 FleetId: FleetIdentifier;
7308 /**
7309 * One or more filters. instance-type - The instance type.
7310 */
7311 Filters?: FilterList;
7312 }
7313 export interface DescribeFleetInstancesResult {
7314 /**
7315 * The running instances. This list is refreshed periodically and might be out of date.
7316 */
7317 ActiveInstances?: ActiveInstanceSet;
7318 /**
7319 * The token for the next set of results.
7320 */
7321 NextToken?: String;
7322 /**
7323 * The ID of the EC2 Fleet.
7324 */
7325 FleetId?: FleetIdentifier;
7326 }
7327 export type DescribeFleetsErrorSet = DescribeFleetError[];
7328 export interface DescribeFleetsInstances {
7329 /**
7330 * The launch templates and overrides that were used for launching the instances. Any parameters that you specify in the Overrides override the same parameters in the launch template.
7331 */
7332 LaunchTemplateAndOverrides?: LaunchTemplateAndOverridesResponse;
7333 /**
7334 * Indicates if the instance that was launched is a Spot Instance or On-Demand Instance.
7335 */
7336 Lifecycle?: InstanceLifecycle;
7337 /**
7338 * The IDs of the instances.
7339 */
7340 InstanceIds?: InstanceIdsSet;
7341 /**
7342 * The instance type.
7343 */
7344 InstanceType?: InstanceType;
7345 /**
7346 * The value is Windows for Windows instances; otherwise blank.
7347 */
7348 Platform?: PlatformValues;
7349 }
7350 export type DescribeFleetsInstancesSet = DescribeFleetsInstances[];
7351 export interface DescribeFleetsRequest {
7352 /**
7353 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7354 */
7355 DryRun?: Boolean;
7356 /**
7357 * The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.
7358 */
7359 MaxResults?: Integer;
7360 /**
7361 * The token for the next set of results.
7362 */
7363 NextToken?: String;
7364 /**
7365 * The ID of the EC2 Fleets.
7366 */
7367 FleetIds?: FleetIdSet;
7368 /**
7369 * One or more filters. activity-status - The progress of the EC2 Fleet ( error | pending-fulfillment | pending-termination | fulfilled). excess-capacity-termination-policy - Indicates whether to terminate running instances if the target capacity is decreased below the current EC2 Fleet size (true | false). fleet-state - The state of the EC2 Fleet (submitted | active | deleted | failed | deleted-running | deleted-terminating | modifying). replace-unhealthy-instances - Indicates whether EC2 Fleet should replace unhealthy instances (true | false). type - The type of request (instant | request | maintain).
7370 */
7371 Filters?: FilterList;
7372 }
7373 export interface DescribeFleetsResult {
7374 /**
7375 * The token for the next set of results.
7376 */
7377 NextToken?: String;
7378 /**
7379 * Information about the EC2 Fleets.
7380 */
7381 Fleets?: FleetSet;
7382 }
7383 export interface DescribeFlowLogsRequest {
7384 /**
7385 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7386 */
7387 DryRun?: Boolean;
7388 /**
7389 * One or more filters. deliver-log-status - The status of the logs delivery (SUCCESS | FAILED). log-destination-type - The type of destination to which the flow log publishes data. Possible destination types include cloud-watch-logs and S3. flow-log-id - The ID of the flow log. log-group-name - The name of the log group. resource-id - The ID of the VPC, subnet, or network interface. traffic-type - The type of traffic (ACCEPT | REJECT | ALL).
7390 */
7391 Filter?: FilterList;
7392 /**
7393 * One or more flow log IDs.
7394 */
7395 FlowLogIds?: ValueStringList;
7396 /**
7397 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
7398 */
7399 MaxResults?: Integer;
7400 /**
7401 * The token for the next page of results.
7402 */
7403 NextToken?: String;
7404 }
7405 export interface DescribeFlowLogsResult {
7406 /**
7407 * Information about the flow logs.
7408 */
7409 FlowLogs?: FlowLogSet;
7410 /**
7411 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7412 */
7413 NextToken?: String;
7414 }
7415 export interface DescribeFpgaImageAttributeRequest {
7416 /**
7417 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7418 */
7419 DryRun?: Boolean;
7420 /**
7421 * The ID of the AFI.
7422 */
7423 FpgaImageId: String;
7424 /**
7425 * The AFI attribute.
7426 */
7427 Attribute: FpgaImageAttributeName;
7428 }
7429 export interface DescribeFpgaImageAttributeResult {
7430 /**
7431 * Information about the attribute.
7432 */
7433 FpgaImageAttribute?: FpgaImageAttribute;
7434 }
7435 export interface DescribeFpgaImagesRequest {
7436 /**
7437 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7438 */
7439 DryRun?: Boolean;
7440 /**
7441 * One or more AFI IDs.
7442 */
7443 FpgaImageIds?: FpgaImageIdList;
7444 /**
7445 * Filters the AFI by owner. Specify an AWS account ID, self (owner is the sender of the request), or an AWS owner alias (valid values are amazon | aws-marketplace).
7446 */
7447 Owners?: OwnerStringList;
7448 /**
7449 * One or more filters. create-time - The creation time of the AFI. fpga-image-id - The FPGA image identifier (AFI ID). fpga-image-global-id - The global FPGA image identifier (AGFI ID). name - The name of the AFI. owner-id - The AWS account ID of the AFI owner. product-code - The product code. shell-version - The version of the AWS Shell that was used to create the bitstream. state - The state of the AFI (pending | failed | available | unavailable). tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. update-time - The time of the most recent update.
7450 */
7451 Filters?: FilterList;
7452 /**
7453 * The token to retrieve the next page of results.
7454 */
7455 NextToken?: NextToken;
7456 /**
7457 * The maximum number of results to return in a single call.
7458 */
7459 MaxResults?: MaxResults;
7460 }
7461 export interface DescribeFpgaImagesResult {
7462 /**
7463 * Information about one or more FPGA images.
7464 */
7465 FpgaImages?: FpgaImageList;
7466 /**
7467 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7468 */
7469 NextToken?: NextToken;
7470 }
7471 export interface DescribeHostReservationOfferingsRequest {
7472 /**
7473 * One or more filters. instance-family - The instance family of the offering (for example, m4). payment-option - The payment option (NoUpfront | PartialUpfront | AllUpfront).
7474 */
7475 Filter?: FilterList;
7476 /**
7477 * This is the maximum duration of the reservation to purchase, specified in seconds. Reservations are available in one-year and three-year terms. The number of seconds specified must be the number of seconds in a year (365x24x60x60) times one of the supported durations (1 or 3). For example, specify 94608000 for three years.
7478 */
7479 MaxDuration?: Integer;
7480 /**
7481 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.
7482 */
7483 MaxResults?: DescribeHostReservationsMaxResults;
7484 /**
7485 * This is the minimum duration of the reservation you'd like to purchase, specified in seconds. Reservations are available in one-year and three-year terms. The number of seconds specified must be the number of seconds in a year (365x24x60x60) times one of the supported durations (1 or 3). For example, specify 31536000 for one year.
7486 */
7487 MinDuration?: Integer;
7488 /**
7489 * The token to use to retrieve the next page of results.
7490 */
7491 NextToken?: String;
7492 /**
7493 * The ID of the reservation offering.
7494 */
7495 OfferingId?: String;
7496 }
7497 export interface DescribeHostReservationOfferingsResult {
7498 /**
7499 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7500 */
7501 NextToken?: String;
7502 /**
7503 * Information about the offerings.
7504 */
7505 OfferingSet?: HostOfferingSet;
7506 }
7507 export type DescribeHostReservationsMaxResults = number;
7508 export interface DescribeHostReservationsRequest {
7509 /**
7510 * One or more filters. instance-family - The instance family (for example, m4). payment-option - The payment option (NoUpfront | PartialUpfront | AllUpfront). state - The state of the reservation (payment-pending | payment-failed | active | retired). tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
7511 */
7512 Filter?: FilterList;
7513 /**
7514 * One or more host reservation IDs.
7515 */
7516 HostReservationIdSet?: HostReservationIdSet;
7517 /**
7518 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error.
7519 */
7520 MaxResults?: Integer;
7521 /**
7522 * The token to use to retrieve the next page of results.
7523 */
7524 NextToken?: String;
7525 }
7526 export interface DescribeHostReservationsResult {
7527 /**
7528 * Details about the reservation's configuration.
7529 */
7530 HostReservationSet?: HostReservationSet;
7531 /**
7532 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7533 */
7534 NextToken?: String;
7535 }
7536 export interface DescribeHostsRequest {
7537 /**
7538 * One or more filters. auto-placement - Whether auto-placement is enabled or disabled (on | off). availability-zone - The Availability Zone of the host. client-token - The idempotency token that you provided when you allocated the host. host-reservation-id - The ID of the reservation assigned to this host. instance-type - The instance type size that the Dedicated Host is configured to support. state - The allocation state of the Dedicated Host (available | under-assessment | permanent-failure | released | released-permanent-failure). tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
7539 */
7540 Filter?: FilterList;
7541 /**
7542 * The IDs of the Dedicated Hosts. The IDs are used for targeted instance launches.
7543 */
7544 HostIds?: RequestHostIdList;
7545 /**
7546 * The maximum number of results to return for the request in a single page. The remaining results can be seen by sending another request with the returned nextToken value. This value can be between 5 and 500. If maxResults is given a larger value than 500, you receive an error. You cannot specify this parameter and the host IDs parameter in the same request.
7547 */
7548 MaxResults?: Integer;
7549 /**
7550 * The token to retrieve the next page of results.
7551 */
7552 NextToken?: String;
7553 }
7554 export interface DescribeHostsResult {
7555 /**
7556 * Information about the Dedicated Hosts.
7557 */
7558 Hosts?: HostList;
7559 /**
7560 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7561 */
7562 NextToken?: String;
7563 }
7564 export interface DescribeIamInstanceProfileAssociationsRequest {
7565 /**
7566 * One or more IAM instance profile associations.
7567 */
7568 AssociationIds?: AssociationIdList;
7569 /**
7570 * One or more filters. instance-id - The ID of the instance. state - The state of the association (associating | associated | disassociating | disassociated).
7571 */
7572 Filters?: FilterList;
7573 /**
7574 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.
7575 */
7576 MaxResults?: MaxResults;
7577 /**
7578 * The token to request the next page of results.
7579 */
7580 NextToken?: NextToken;
7581 }
7582 export interface DescribeIamInstanceProfileAssociationsResult {
7583 /**
7584 * Information about one or more IAM instance profile associations.
7585 */
7586 IamInstanceProfileAssociations?: IamInstanceProfileAssociationSet;
7587 /**
7588 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7589 */
7590 NextToken?: NextToken;
7591 }
7592 export interface DescribeIdFormatRequest {
7593 /**
7594 * The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway
7595 */
7596 Resource?: String;
7597 }
7598 export interface DescribeIdFormatResult {
7599 /**
7600 * Information about the ID format for the resource.
7601 */
7602 Statuses?: IdFormatList;
7603 }
7604 export interface DescribeIdentityIdFormatRequest {
7605 /**
7606 * The ARN of the principal, which can be an IAM role, IAM user, or the root user.
7607 */
7608 PrincipalArn: String;
7609 /**
7610 * The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway
7611 */
7612 Resource?: String;
7613 }
7614 export interface DescribeIdentityIdFormatResult {
7615 /**
7616 * Information about the ID format for the resources.
7617 */
7618 Statuses?: IdFormatList;
7619 }
7620 export interface DescribeImageAttributeRequest {
7621 /**
7622 * The AMI attribute. Note: Depending on your account privileges, the blockDeviceMapping attribute may return a Client.AuthFailure error. If this happens, use DescribeImages to get information about the block device mapping for the AMI.
7623 */
7624 Attribute: ImageAttributeName;
7625 /**
7626 * The ID of the AMI.
7627 */
7628 ImageId: String;
7629 /**
7630 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7631 */
7632 DryRun?: Boolean;
7633 }
7634 export interface DescribeImagesRequest {
7635 /**
7636 * Scopes the images by users with explicit launch permissions. Specify an AWS account ID, self (the sender of the request), or all (public AMIs).
7637 */
7638 ExecutableUsers?: ExecutableByStringList;
7639 /**
7640 * One or more filters. architecture - The image architecture (i386 | x86_64). block-device-mapping.delete-on-termination - A Boolean value that indicates whether the Amazon EBS volume is deleted on instance termination. block-device-mapping.device-name - The device name specified in the block device mapping (for example, /dev/sdh or xvdh). block-device-mapping.snapshot-id - The ID of the snapshot used for the EBS volume. block-device-mapping.volume-size - The volume size of the EBS volume, in GiB. block-device-mapping.volume-type - The volume type of the EBS volume (gp2 | io1 | st1 | sc1 | standard). block-device-mapping.encrypted - A Boolean that indicates whether the EBS volume is encrypted. description - The description of the image (provided during image creation). ena-support - A Boolean that indicates whether enhanced networking with ENA is enabled. hypervisor - The hypervisor type (ovm | xen). image-id - The ID of the image. image-type - The image type (machine | kernel | ramdisk). is-public - A Boolean that indicates whether the image is public. kernel-id - The kernel ID. manifest-location - The location of the image manifest. name - The name of the AMI (provided during image creation). owner-alias - String value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM console. owner-id - The AWS account ID of the image owner. platform - The platform. To only list Windows-based AMIs, use windows. product-code - The product code. product-code.type - The type of the product code (devpay | marketplace). ramdisk-id - The RAM disk ID. root-device-name - The device name of the root device volume (for example, /dev/sda1). root-device-type - The type of the root device volume (ebs | instance-store). state - The state of the image (available | pending | failed). state-reason-code - The reason code for the state change. state-reason-message - The message for the state change. sriov-net-support - A value of simple indicates that enhanced networking with the Intel 82599 VF interface is enabled. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. virtualization-type - The virtualization type (paravirtual | hvm).
7641 */
7642 Filters?: FilterList;
7643 /**
7644 * One or more image IDs. Default: Describes all images available to you.
7645 */
7646 ImageIds?: ImageIdStringList;
7647 /**
7648 * Filters the images by the owner. Specify an AWS account ID, self (owner is the sender of the request), or an AWS owner alias (valid values are amazon | aws-marketplace | microsoft). Omitting this option returns all images for which you have launch permissions, regardless of ownership.
7649 */
7650 Owners?: OwnerStringList;
7651 /**
7652 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7653 */
7654 DryRun?: Boolean;
7655 }
7656 export interface DescribeImagesResult {
7657 /**
7658 * Information about one or more images.
7659 */
7660 Images?: ImageList;
7661 }
7662 export interface DescribeImportImageTasksRequest {
7663 /**
7664 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7665 */
7666 DryRun?: Boolean;
7667 /**
7668 * Filter tasks using the task-state filter and one of the following values: active, completed, deleting, deleted.
7669 */
7670 Filters?: FilterList;
7671 /**
7672 * A list of import image task IDs.
7673 */
7674 ImportTaskIds?: ImportTaskIdList;
7675 /**
7676 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.
7677 */
7678 MaxResults?: Integer;
7679 /**
7680 * A token that indicates the next page of results.
7681 */
7682 NextToken?: String;
7683 }
7684 export interface DescribeImportImageTasksResult {
7685 /**
7686 * A list of zero or more import image tasks that are currently active or were completed or canceled in the previous 7 days.
7687 */
7688 ImportImageTasks?: ImportImageTaskList;
7689 /**
7690 * The token to use to get the next page of results. This value is null when there are no more results to return.
7691 */
7692 NextToken?: String;
7693 }
7694 export interface DescribeImportSnapshotTasksRequest {
7695 /**
7696 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7697 */
7698 DryRun?: Boolean;
7699 /**
7700 * One or more filters.
7701 */
7702 Filters?: FilterList;
7703 /**
7704 * A list of import snapshot task IDs.
7705 */
7706 ImportTaskIds?: ImportTaskIdList;
7707 /**
7708 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.
7709 */
7710 MaxResults?: Integer;
7711 /**
7712 * A token that indicates the next page of results.
7713 */
7714 NextToken?: String;
7715 }
7716 export interface DescribeImportSnapshotTasksResult {
7717 /**
7718 * A list of zero or more import snapshot tasks that are currently active or were completed or canceled in the previous 7 days.
7719 */
7720 ImportSnapshotTasks?: ImportSnapshotTaskList;
7721 /**
7722 * The token to use to get the next page of results. This value is null when there are no more results to return.
7723 */
7724 NextToken?: String;
7725 }
7726 export interface DescribeInstanceAttributeRequest {
7727 /**
7728 * The instance attribute. Note: The enaSupport attribute is not supported at this time.
7729 */
7730 Attribute: InstanceAttributeName;
7731 /**
7732 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7733 */
7734 DryRun?: Boolean;
7735 /**
7736 * The ID of the instance.
7737 */
7738 InstanceId: String;
7739 }
7740 export type DescribeInstanceCreditSpecificationsMaxResults = number;
7741 export interface DescribeInstanceCreditSpecificationsRequest {
7742 /**
7743 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7744 */
7745 DryRun?: Boolean;
7746 /**
7747 * One or more filters. instance-id - The ID of the instance.
7748 */
7749 Filters?: FilterList;
7750 /**
7751 * One or more instance IDs. Default: Describes all your instances. Constraints: Maximum 1000 explicitly specified instance IDs.
7752 */
7753 InstanceIds?: InstanceIdStringList;
7754 /**
7755 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter in the same call.
7756 */
7757 MaxResults?: DescribeInstanceCreditSpecificationsMaxResults;
7758 /**
7759 * The token to retrieve the next page of results.
7760 */
7761 NextToken?: String;
7762 }
7763 export interface DescribeInstanceCreditSpecificationsResult {
7764 /**
7765 * Information about the credit option for CPU usage of an instance.
7766 */
7767 InstanceCreditSpecifications?: InstanceCreditSpecificationList;
7768 /**
7769 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7770 */
7771 NextToken?: String;
7772 }
7773 export interface DescribeInstanceStatusRequest {
7774 /**
7775 * One or more filters. availability-zone - The Availability Zone of the instance. event.code - The code for the scheduled event (instance-reboot | system-reboot | system-maintenance | instance-retirement | instance-stop). event.description - A description of the event. event.instance-event-id - The ID of the event whose date and time you are modifying. event.not-after - The latest end time for the scheduled event (for example, 2014-09-15T17:15:20.000Z). event.not-before - The earliest start time for the scheduled event (for example, 2014-09-15T17:15:20.000Z). event.not-before-deadline - The deadline for starting the event (for example, 2014-09-15T17:15:20.000Z). instance-state-code - The code for the instance state, as a 16-bit unsigned integer. The high byte is used for internal purposes and should be ignored. The low byte is set based on the state represented. The valid values are 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped). instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped). instance-status.reachability - Filters on instance status where the name is reachability (passed | failed | initializing | insufficient-data). instance-status.status - The status of the instance (ok | impaired | initializing | insufficient-data | not-applicable). system-status.reachability - Filters on system status where the name is reachability (passed | failed | initializing | insufficient-data). system-status.status - The system status of the instance (ok | impaired | initializing | insufficient-data | not-applicable).
7776 */
7777 Filters?: FilterList;
7778 /**
7779 * One or more instance IDs. Default: Describes all your instances. Constraints: Maximum 100 explicitly specified instance IDs.
7780 */
7781 InstanceIds?: InstanceIdStringList;
7782 /**
7783 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter in the same call.
7784 */
7785 MaxResults?: Integer;
7786 /**
7787 * The token to retrieve the next page of results.
7788 */
7789 NextToken?: String;
7790 /**
7791 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7792 */
7793 DryRun?: Boolean;
7794 /**
7795 * When true, includes the health status for all instances. When false, includes the health status for running instances only. Default: false
7796 */
7797 IncludeAllInstances?: Boolean;
7798 }
7799 export interface DescribeInstanceStatusResult {
7800 /**
7801 * One or more instance status descriptions.
7802 */
7803 InstanceStatuses?: InstanceStatusList;
7804 /**
7805 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7806 */
7807 NextToken?: String;
7808 }
7809 export interface DescribeInstancesRequest {
7810 /**
7811 * One or more filters. affinity - The affinity setting for an instance running on a Dedicated Host (default | host). architecture - The instance architecture (i386 | x86_64). availability-zone - The Availability Zone of the instance. block-device-mapping.attach-time - The attach time for an EBS volume mapped to the instance, for example, 2010-09-15T17:15:20.000Z. block-device-mapping.delete-on-termination - A Boolean that indicates whether the EBS volume is deleted on instance termination. block-device-mapping.device-name - The device name specified in the block device mapping (for example, /dev/sdh or xvdh). block-device-mapping.status - The status for the EBS volume (attaching | attached | detaching | detached). block-device-mapping.volume-id - The volume ID of the EBS volume. client-token - The idempotency token you provided when you launched the instance. dns-name - The public DNS name of the instance. group-id - The ID of the security group for the instance. EC2-Classic only. group-name - The name of the security group for the instance. EC2-Classic only. hibernation-options.configured - A Boolean that indicates whether the instance is enabled for hibernation. A value of true means that the instance is enabled for hibernation. host-id - The ID of the Dedicated Host on which the instance is running, if applicable. hypervisor - The hypervisor type of the instance (ovm | xen). iam-instance-profile.arn - The instance profile associated with the instance. Specified as an ARN. image-id - The ID of the image used to launch the instance. instance-id - The ID of the instance. instance-lifecycle - Indicates whether this is a Spot Instance or a Scheduled Instance (spot | scheduled). instance-state-code - The state of the instance, as a 16-bit unsigned integer. The high byte is used for internal purposes and should be ignored. The low byte is set based on the state represented. The valid values are: 0 (pending), 16 (running), 32 (shutting-down), 48 (terminated), 64 (stopping), and 80 (stopped). instance-state-name - The state of the instance (pending | running | shutting-down | terminated | stopping | stopped). instance-type - The type of instance (for example, t2.micro). instance.group-id - The ID of the security group for the instance. instance.group-name - The name of the security group for the instance. ip-address - The public IPv4 address of the instance. kernel-id - The kernel ID. key-name - The name of the key pair used when the instance was launched. launch-index - When launching multiple instances, this is the index for the instance in the launch group (for example, 0, 1, 2, and so on). launch-time - The time when the instance was launched. monitoring-state - Indicates whether detailed monitoring is enabled (disabled | enabled). network-interface.addresses.private-ip-address - The private IPv4 address associated with the network interface. network-interface.addresses.primary - Specifies whether the IPv4 address of the network interface is the primary private IPv4 address. network-interface.addresses.association.public-ip - The ID of the association of an Elastic IP address (IPv4) with a network interface. network-interface.addresses.association.ip-owner-id - The owner ID of the private IPv4 address associated with the network interface. network-interface.association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface. network-interface.association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface. network-interface.association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface. network-interface.association.association-id - The association ID returned when the network interface was associated with an IPv4 address. network-interface.attachment.attachment-id - The ID of the interface attachment. network-interface.attachment.instance-id - The ID of the instance to which the network interface is attached. network-interface.attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached. network-interface.attachment.device-index - The device index to which the network interface is attached. network-interface.attachment.status - The status of the attachment (attaching | attached | detaching | detached). network-interface.attachment.attach-time - The time that the network interface was attached to an instance. network-interface.attachment.delete-on-termination - Specifies whether the attachment is deleted when an instance is terminated. network-interface.availability-zone - The Availability Zone for the network interface. network-interface.description - The description of the network interface. network-interface.group-id - The ID of a security group associated with the network interface. network-interface.group-name - The name of a security group associated with the network interface. network-interface.ipv6-addresses.ipv6-address - The IPv6 address associated with the network interface. network-interface.mac-address - The MAC address of the network interface. network-interface.network-interface-id - The ID of the network interface. network-interface.owner-id - The ID of the owner of the network interface. network-interface.private-dns-name - The private DNS name of the network interface. network-interface.requester-id - The requester ID for the network interface. network-interface.requester-managed - Indicates whether the network interface is being managed by AWS. network-interface.status - The status of the network interface (available) | in-use). network-interface.source-dest-check - Whether the network interface performs source/destination checking. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC. network-interface.subnet-id - The ID of the subnet for the network interface. network-interface.vpc-id - The ID of the VPC for the network interface. owner-id - The AWS account ID of the instance owner. placement-group-name - The name of the placement group for the instance. placement-partition-number - The partition in which the instance is located. platform - The platform. Use windows if you have Windows instances; otherwise, leave blank. private-dns-name - The private IPv4 DNS name of the instance. private-ip-address - The private IPv4 address of the instance. product-code - The product code associated with the AMI used to launch the instance. product-code.type - The type of product code (devpay | marketplace). ramdisk-id - The RAM disk ID. reason - The reason for the current state of the instance (for example, shows "User Initiated [date]" when you stop or terminate the instance). Similar to the state-reason-code filter. requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on). reservation-id - The ID of the instance's reservation. A reservation ID is created any time you launch an instance. A reservation ID has a one-to-one relationship with an instance launch request, but can be associated with more than one instance if you launch multiple instances using the same launch request. For example, if you launch one instance, you get one reservation ID. If you launch ten instances using the same launch request, you also get one reservation ID. root-device-name - The device name of the root device volume (for example, /dev/sda1). root-device-type - The type of the root device volume (ebs | instance-store). source-dest-check - Indicates whether the instance performs source/destination checking. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the instance to perform network address translation (NAT) in your VPC. spot-instance-request-id - The ID of the Spot Instance request. state-reason-code - The reason code for the state change. state-reason-message - A message that describes the state change. subnet-id - The ID of the subnet for the instance. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources that have a tag with a specific key, regardless of the tag value. tenancy - The tenancy of an instance (dedicated | default | host). virtualization-type - The virtualization type of the instance (paravirtual | hvm). vpc-id - The ID of the VPC that the instance is running in.
7812 */
7813 Filters?: FilterList;
7814 /**
7815 * One or more instance IDs. Default: Describes all your instances.
7816 */
7817 InstanceIds?: InstanceIdStringList;
7818 /**
7819 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7820 */
7821 DryRun?: Boolean;
7822 /**
7823 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 5 and 1000. You cannot specify this parameter and the instance IDs parameter in the same call.
7824 */
7825 MaxResults?: Integer;
7826 /**
7827 * The token to request the next page of results.
7828 */
7829 NextToken?: String;
7830 }
7831 export interface DescribeInstancesResult {
7832 /**
7833 * Zero or more reservations.
7834 */
7835 Reservations?: ReservationList;
7836 /**
7837 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7838 */
7839 NextToken?: String;
7840 }
7841 export type DescribeInternetGatewaysMaxResults = number;
7842 export interface DescribeInternetGatewaysRequest {
7843 /**
7844 * One or more filters. attachment.state - The current state of the attachment between the gateway and the VPC (available). Present only if a VPC is attached. attachment.vpc-id - The ID of an attached VPC. internet-gateway-id - The ID of the Internet gateway. owner-id - The ID of the AWS account that owns the internet gateway. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
7845 */
7846 Filters?: FilterList;
7847 /**
7848 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7849 */
7850 DryRun?: Boolean;
7851 /**
7852 * One or more internet gateway IDs. Default: Describes all your internet gateways.
7853 */
7854 InternetGatewayIds?: ValueStringList;
7855 /**
7856 * The token for the next page of results.
7857 */
7858 NextToken?: String;
7859 /**
7860 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
7861 */
7862 MaxResults?: DescribeInternetGatewaysMaxResults;
7863 }
7864 export interface DescribeInternetGatewaysResult {
7865 /**
7866 * Information about one or more internet gateways.
7867 */
7868 InternetGateways?: InternetGatewayList;
7869 /**
7870 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7871 */
7872 NextToken?: String;
7873 }
7874 export interface DescribeKeyPairsRequest {
7875 /**
7876 * One or more filters. fingerprint - The fingerprint of the key pair. key-name - The name of the key pair.
7877 */
7878 Filters?: FilterList;
7879 /**
7880 * One or more key pair names. Default: Describes all your key pairs.
7881 */
7882 KeyNames?: KeyNameStringList;
7883 /**
7884 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7885 */
7886 DryRun?: Boolean;
7887 }
7888 export interface DescribeKeyPairsResult {
7889 /**
7890 * Information about one or more key pairs.
7891 */
7892 KeyPairs?: KeyPairList;
7893 }
7894 export interface DescribeLaunchTemplateVersionsRequest {
7895 /**
7896 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7897 */
7898 DryRun?: Boolean;
7899 /**
7900 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
7901 */
7902 LaunchTemplateId?: String;
7903 /**
7904 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
7905 */
7906 LaunchTemplateName?: LaunchTemplateName;
7907 /**
7908 * One or more versions of the launch template.
7909 */
7910 Versions?: VersionStringList;
7911 /**
7912 * The version number after which to describe launch template versions.
7913 */
7914 MinVersion?: String;
7915 /**
7916 * The version number up to which to describe launch template versions.
7917 */
7918 MaxVersion?: String;
7919 /**
7920 * The token to request the next page of results.
7921 */
7922 NextToken?: String;
7923 /**
7924 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 1 and 200.
7925 */
7926 MaxResults?: Integer;
7927 /**
7928 * One or more filters. create-time - The time the launch template version was created. ebs-optimized - A boolean that indicates whether the instance is optimized for Amazon EBS I/O. iam-instance-profile - The ARN of the IAM instance profile. image-id - The ID of the AMI. instance-type - The instance type. is-default-version - A boolean that indicates whether the launch template version is the default version. kernel-id - The kernel ID. ram-disk-id - The RAM disk ID.
7929 */
7930 Filters?: FilterList;
7931 }
7932 export interface DescribeLaunchTemplateVersionsResult {
7933 /**
7934 * Information about the launch template versions.
7935 */
7936 LaunchTemplateVersions?: LaunchTemplateVersionSet;
7937 /**
7938 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7939 */
7940 NextToken?: String;
7941 }
7942 export interface DescribeLaunchTemplatesRequest {
7943 /**
7944 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7945 */
7946 DryRun?: Boolean;
7947 /**
7948 * One or more launch template IDs.
7949 */
7950 LaunchTemplateIds?: ValueStringList;
7951 /**
7952 * One or more launch template names.
7953 */
7954 LaunchTemplateNames?: LaunchTemplateNameStringList;
7955 /**
7956 * One or more filters. create-time - The time the launch template was created. launch-template-name - The name of the launch template. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
7957 */
7958 Filters?: FilterList;
7959 /**
7960 * The token to request the next page of results.
7961 */
7962 NextToken?: String;
7963 /**
7964 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. This value can be between 1 and 200.
7965 */
7966 MaxResults?: Integer;
7967 }
7968 export interface DescribeLaunchTemplatesResult {
7969 /**
7970 * Information about the launch templates.
7971 */
7972 LaunchTemplates?: LaunchTemplateSet;
7973 /**
7974 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
7975 */
7976 NextToken?: String;
7977 }
7978 export interface DescribeMovingAddressesRequest {
7979 /**
7980 * One or more filters. moving-status - The status of the Elastic IP address (MovingToVpc | RestoringToClassic).
7981 */
7982 Filters?: FilterList;
7983 /**
7984 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
7985 */
7986 DryRun?: Boolean;
7987 /**
7988 * The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value outside of this range, an error is returned. Default: If no value is provided, the default is 1000.
7989 */
7990 MaxResults?: Integer;
7991 /**
7992 * The token for the next page of results.
7993 */
7994 NextToken?: String;
7995 /**
7996 * One or more Elastic IP addresses.
7997 */
7998 PublicIps?: ValueStringList;
7999 }
8000 export interface DescribeMovingAddressesResult {
8001 /**
8002 * The status for each Elastic IP address.
8003 */
8004 MovingAddressStatuses?: MovingAddressStatusSet;
8005 /**
8006 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8007 */
8008 NextToken?: String;
8009 }
8010 export interface DescribeNatGatewaysRequest {
8011 /**
8012 * One or more filters. nat-gateway-id - The ID of the NAT gateway. state - The state of the NAT gateway (pending | failed | available | deleting | deleted). subnet-id - The ID of the subnet in which the NAT gateway resides. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. vpc-id - The ID of the VPC in which the NAT gateway resides.
8013 */
8014 Filter?: FilterList;
8015 /**
8016 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8017 */
8018 MaxResults?: Integer;
8019 /**
8020 * One or more NAT gateway IDs.
8021 */
8022 NatGatewayIds?: ValueStringList;
8023 /**
8024 * The token for the next page of results.
8025 */
8026 NextToken?: String;
8027 }
8028 export interface DescribeNatGatewaysResult {
8029 /**
8030 * Information about the NAT gateways.
8031 */
8032 NatGateways?: NatGatewayList;
8033 /**
8034 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8035 */
8036 NextToken?: String;
8037 }
8038 export type DescribeNetworkAclsMaxResults = number;
8039 export interface DescribeNetworkAclsRequest {
8040 /**
8041 * One or more filters. association.association-id - The ID of an association ID for the ACL. association.network-acl-id - The ID of the network ACL involved in the association. association.subnet-id - The ID of the subnet involved in the association. default - Indicates whether the ACL is the default network ACL for the VPC. entry.cidr - The IPv4 CIDR range specified in the entry. entry.icmp.code - The ICMP code specified in the entry, if any. entry.icmp.type - The ICMP type specified in the entry, if any. entry.ipv6-cidr - The IPv6 CIDR range specified in the entry. entry.port-range.from - The start of the port range specified in the entry. entry.port-range.to - The end of the port range specified in the entry. entry.protocol - The protocol specified in the entry (tcp | udp | icmp or a protocol number). entry.rule-action - Allows or denies the matching traffic (allow | deny). entry.rule-number - The number of an entry (in other words, rule) in the set of ACL entries. network-acl-id - The ID of the network ACL. owner-id - The ID of the AWS account that owns the network ACL. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. vpc-id - The ID of the VPC for the network ACL.
8042 */
8043 Filters?: FilterList;
8044 /**
8045 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8046 */
8047 DryRun?: Boolean;
8048 /**
8049 * One or more network ACL IDs. Default: Describes all your network ACLs.
8050 */
8051 NetworkAclIds?: ValueStringList;
8052 /**
8053 * The token for the next page of results.
8054 */
8055 NextToken?: String;
8056 /**
8057 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8058 */
8059 MaxResults?: DescribeNetworkAclsMaxResults;
8060 }
8061 export interface DescribeNetworkAclsResult {
8062 /**
8063 * Information about one or more network ACLs.
8064 */
8065 NetworkAcls?: NetworkAclList;
8066 /**
8067 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8068 */
8069 NextToken?: String;
8070 }
8071 export interface DescribeNetworkInterfaceAttributeRequest {
8072 /**
8073 * The attribute of the network interface. This parameter is required.
8074 */
8075 Attribute?: NetworkInterfaceAttribute;
8076 /**
8077 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8078 */
8079 DryRun?: Boolean;
8080 /**
8081 * The ID of the network interface.
8082 */
8083 NetworkInterfaceId: String;
8084 }
8085 export interface DescribeNetworkInterfaceAttributeResult {
8086 /**
8087 * The attachment (if any) of the network interface.
8088 */
8089 Attachment?: NetworkInterfaceAttachment;
8090 /**
8091 * The description of the network interface.
8092 */
8093 Description?: AttributeValue;
8094 /**
8095 * The security groups associated with the network interface.
8096 */
8097 Groups?: GroupIdentifierList;
8098 /**
8099 * The ID of the network interface.
8100 */
8101 NetworkInterfaceId?: String;
8102 /**
8103 * Indicates whether source/destination checking is enabled.
8104 */
8105 SourceDestCheck?: AttributeBooleanValue;
8106 }
8107 export interface DescribeNetworkInterfacePermissionsRequest {
8108 /**
8109 * One or more network interface permission IDs.
8110 */
8111 NetworkInterfacePermissionIds?: NetworkInterfacePermissionIdList;
8112 /**
8113 * One or more filters. network-interface-permission.network-interface-permission-id - The ID of the permission. network-interface-permission.network-interface-id - The ID of the network interface. network-interface-permission.aws-account-id - The AWS account ID. network-interface-permission.aws-service - The AWS service. network-interface-permission.permission - The type of permission (INSTANCE-ATTACH | EIP-ASSOCIATE).
8114 */
8115 Filters?: FilterList;
8116 /**
8117 * The token to request the next page of results.
8118 */
8119 NextToken?: String;
8120 /**
8121 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value. If this parameter is not specified, up to 50 results are returned by default.
8122 */
8123 MaxResults?: Integer;
8124 }
8125 export interface DescribeNetworkInterfacePermissionsResult {
8126 /**
8127 * The network interface permissions.
8128 */
8129 NetworkInterfacePermissions?: NetworkInterfacePermissionList;
8130 /**
8131 * The token to use to retrieve the next page of results.
8132 */
8133 NextToken?: String;
8134 }
8135 export interface DescribeNetworkInterfacesRequest {
8136 /**
8137 * One or more filters. addresses.private-ip-address - The private IPv4 addresses associated with the network interface. addresses.primary - Whether the private IPv4 address is the primary IP address associated with the network interface. addresses.association.public-ip - The association ID returned when the network interface was associated with the Elastic IP address (IPv4). addresses.association.owner-id - The owner ID of the addresses associated with the network interface. association.association-id - The association ID returned when the network interface was associated with an IPv4 address. association.allocation-id - The allocation ID returned when you allocated the Elastic IP address (IPv4) for your network interface. association.ip-owner-id - The owner of the Elastic IP address (IPv4) associated with the network interface. association.public-ip - The address of the Elastic IP address (IPv4) bound to the network interface. association.public-dns-name - The public DNS name for the network interface (IPv4). attachment.attachment-id - The ID of the interface attachment. attachment.attach.time - The time that the network interface was attached to an instance. attachment.delete-on-termination - Indicates whether the attachment is deleted when an instance is terminated. attachment.device-index - The device index to which the network interface is attached. attachment.instance-id - The ID of the instance to which the network interface is attached. attachment.instance-owner-id - The owner ID of the instance to which the network interface is attached. attachment.nat-gateway-id - The ID of the NAT gateway to which the network interface is attached. attachment.status - The status of the attachment (attaching | attached | detaching | detached). availability-zone - The Availability Zone of the network interface. description - The description of the network interface. group-id - The ID of a security group associated with the network interface. group-name - The name of a security group associated with the network interface. ipv6-addresses.ipv6-address - An IPv6 address associated with the network interface. mac-address - The MAC address of the network interface. network-interface-id - The ID of the network interface. owner-id - The AWS account ID of the network interface owner. private-ip-address - The private IPv4 address or addresses of the network interface. private-dns-name - The private DNS name of the network interface (IPv4). requester-id - The ID of the entity that launched the instance on your behalf (for example, AWS Management Console, Auto Scaling, and so on). requester-managed - Indicates whether the network interface is being managed by an AWS service (for example, AWS Management Console, Auto Scaling, and so on). source-desk-check - Indicates whether the network interface performs source/destination checking. A value of true means checking is enabled, and false means checking is disabled. The value must be false for the network interface to perform network address translation (NAT) in your VPC. status - The status of the network interface. If the network interface is not attached to an instance, the status is available; if a network interface is attached to an instance the status is in-use. subnet-id - The ID of the subnet for the network interface. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. vpc-id - The ID of the VPC for the network interface.
8138 */
8139 Filters?: FilterList;
8140 /**
8141 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8142 */
8143 DryRun?: Boolean;
8144 /**
8145 * One or more network interface IDs. Default: Describes all your network interfaces.
8146 */
8147 NetworkInterfaceIds?: NetworkInterfaceIdList;
8148 /**
8149 * The token to retrieve the next page of results.
8150 */
8151 NextToken?: String;
8152 /**
8153 * The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.
8154 */
8155 MaxResults?: Integer;
8156 }
8157 export interface DescribeNetworkInterfacesResult {
8158 /**
8159 * Information about one or more network interfaces.
8160 */
8161 NetworkInterfaces?: NetworkInterfaceList;
8162 /**
8163 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8164 */
8165 NextToken?: String;
8166 }
8167 export interface DescribePlacementGroupsRequest {
8168 /**
8169 * One or more filters. group-name - The name of the placement group. state - The state of the placement group (pending | available | deleting | deleted). strategy - The strategy of the placement group (cluster | spread | partition).
8170 */
8171 Filters?: FilterList;
8172 /**
8173 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8174 */
8175 DryRun?: Boolean;
8176 /**
8177 * One or more placement group names. Default: Describes all your placement groups, or only those otherwise specified.
8178 */
8179 GroupNames?: PlacementGroupStringList;
8180 }
8181 export interface DescribePlacementGroupsResult {
8182 /**
8183 * One or more placement groups.
8184 */
8185 PlacementGroups?: PlacementGroupList;
8186 }
8187 export interface DescribePrefixListsRequest {
8188 /**
8189 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8190 */
8191 DryRun?: Boolean;
8192 /**
8193 * One or more filters. prefix-list-id: The ID of a prefix list. prefix-list-name: The name of a prefix list.
8194 */
8195 Filters?: FilterList;
8196 /**
8197 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8198 */
8199 MaxResults?: Integer;
8200 /**
8201 * The token for the next page of results.
8202 */
8203 NextToken?: String;
8204 /**
8205 * One or more prefix list IDs.
8206 */
8207 PrefixListIds?: ValueStringList;
8208 }
8209 export interface DescribePrefixListsResult {
8210 /**
8211 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8212 */
8213 NextToken?: String;
8214 /**
8215 * All available prefix lists.
8216 */
8217 PrefixLists?: PrefixListSet;
8218 }
8219 export interface DescribePrincipalIdFormatRequest {
8220 /**
8221 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8222 */
8223 DryRun?: Boolean;
8224 /**
8225 * The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | instance | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | reservation | route-table | route-table-association | security-group | snapshot | subnet | subnet-cidr-block-association | volume | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway
8226 */
8227 Resources?: ResourceList;
8228 /**
8229 * The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned NextToken value.
8230 */
8231 MaxResults?: Integer;
8232 /**
8233 * The token to request the next page of results.
8234 */
8235 NextToken?: String;
8236 }
8237 export interface DescribePrincipalIdFormatResult {
8238 /**
8239 * Information about the ID format settings for the ARN.
8240 */
8241 Principals?: PrincipalIdFormatList;
8242 /**
8243 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8244 */
8245 NextToken?: String;
8246 }
8247 export interface DescribePublicIpv4PoolsRequest {
8248 /**
8249 * The IDs of the address pools.
8250 */
8251 PoolIds?: ValueStringList;
8252 /**
8253 * The token for the next page of results.
8254 */
8255 NextToken?: NextToken;
8256 /**
8257 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8258 */
8259 MaxResults?: PoolMaxResults;
8260 }
8261 export interface DescribePublicIpv4PoolsResult {
8262 /**
8263 * Information about the address pools.
8264 */
8265 PublicIpv4Pools?: PublicIpv4PoolSet;
8266 /**
8267 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8268 */
8269 NextToken?: String;
8270 }
8271 export interface DescribeRegionsRequest {
8272 /**
8273 * One or more filters. endpoint - The endpoint of the region (for example, ec2.us-east-1.amazonaws.com). region-name - The name of the region (for example, us-east-1).
8274 */
8275 Filters?: FilterList;
8276 /**
8277 * The names of one or more regions.
8278 */
8279 RegionNames?: RegionNameStringList;
8280 /**
8281 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8282 */
8283 DryRun?: Boolean;
8284 }
8285 export interface DescribeRegionsResult {
8286 /**
8287 * Information about one or more regions.
8288 */
8289 Regions?: RegionList;
8290 }
8291 export interface DescribeReservedInstancesListingsRequest {
8292 /**
8293 * One or more filters. reserved-instances-id - The ID of the Reserved Instances. reserved-instances-listing-id - The ID of the Reserved Instances listing. status - The status of the Reserved Instance listing (pending | active | cancelled | closed). status-message - The reason for the status.
8294 */
8295 Filters?: FilterList;
8296 /**
8297 * One or more Reserved Instance IDs.
8298 */
8299 ReservedInstancesId?: String;
8300 /**
8301 * One or more Reserved Instance listing IDs.
8302 */
8303 ReservedInstancesListingId?: String;
8304 }
8305 export interface DescribeReservedInstancesListingsResult {
8306 /**
8307 * Information about the Reserved Instance listing.
8308 */
8309 ReservedInstancesListings?: ReservedInstancesListingList;
8310 }
8311 export interface DescribeReservedInstancesModificationsRequest {
8312 /**
8313 * One or more filters. client-token - The idempotency token for the modification request. create-date - The time when the modification request was created. effective-date - The time when the modification becomes effective. modification-result.reserved-instances-id - The ID for the Reserved Instances created as part of the modification request. This ID is only available when the status of the modification is fulfilled. modification-result.target-configuration.availability-zone - The Availability Zone for the new Reserved Instances. modification-result.target-configuration.instance-count - The number of new Reserved Instances. modification-result.target-configuration.instance-type - The instance type of the new Reserved Instances. modification-result.target-configuration.platform - The network platform of the new Reserved Instances (EC2-Classic | EC2-VPC). reserved-instances-id - The ID of the Reserved Instances modified. reserved-instances-modification-id - The ID of the modification request. status - The status of the Reserved Instances modification request (processing | fulfilled | failed). status-message - The reason for the status. update-date - The time when the modification request was last updated.
8314 */
8315 Filters?: FilterList;
8316 /**
8317 * IDs for the submitted modification request.
8318 */
8319 ReservedInstancesModificationIds?: ReservedInstancesModificationIdStringList;
8320 /**
8321 * The token to retrieve the next page of results.
8322 */
8323 NextToken?: String;
8324 }
8325 export interface DescribeReservedInstancesModificationsResult {
8326 /**
8327 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8328 */
8329 NextToken?: String;
8330 /**
8331 * The Reserved Instance modification information.
8332 */
8333 ReservedInstancesModifications?: ReservedInstancesModificationList;
8334 }
8335 export interface DescribeReservedInstancesOfferingsRequest {
8336 /**
8337 * The Availability Zone in which the Reserved Instance can be used.
8338 */
8339 AvailabilityZone?: String;
8340 /**
8341 * One or more filters. availability-zone - The Availability Zone where the Reserved Instance can be used. duration - The duration of the Reserved Instance (for example, one year or three years), in seconds (31536000 | 94608000). fixed-price - The purchase price of the Reserved Instance (for example, 9800.0). instance-type - The instance type that is covered by the reservation. marketplace - Set to true to show only Reserved Instance Marketplace offerings. When this filter is not used, which is the default behavior, all offerings from both AWS and the Reserved Instance Marketplace are listed. product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC. (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC)) reserved-instances-offering-id - The Reserved Instances offering ID. scope - The scope of the Reserved Instance (Availability Zone or Region). usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).
8342 */
8343 Filters?: FilterList;
8344 /**
8345 * Include Reserved Instance Marketplace offerings in the response.
8346 */
8347 IncludeMarketplace?: Boolean;
8348 /**
8349 * The instance type that the reservation will cover (for example, m1.small). For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
8350 */
8351 InstanceType?: InstanceType;
8352 /**
8353 * The maximum duration (in seconds) to filter when searching for offerings. Default: 94608000 (3 years)
8354 */
8355 MaxDuration?: Long;
8356 /**
8357 * The maximum number of instances to filter when searching for offerings. Default: 20
8358 */
8359 MaxInstanceCount?: Integer;
8360 /**
8361 * The minimum duration (in seconds) to filter when searching for offerings. Default: 2592000 (1 month)
8362 */
8363 MinDuration?: Long;
8364 /**
8365 * The offering class of the Reserved Instance. Can be standard or convertible.
8366 */
8367 OfferingClass?: OfferingClassType;
8368 /**
8369 * The Reserved Instance product platform description. Instances that include (Amazon VPC) in the description are for use with Amazon VPC.
8370 */
8371 ProductDescription?: RIProductDescription;
8372 /**
8373 * One or more Reserved Instances offering IDs.
8374 */
8375 ReservedInstancesOfferingIds?: ReservedInstancesOfferingIdStringList;
8376 /**
8377 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8378 */
8379 DryRun?: Boolean;
8380 /**
8381 * The tenancy of the instances covered by the reservation. A Reserved Instance with a tenancy of dedicated is applied to instances that run in a VPC on single-tenant hardware (i.e., Dedicated Instances). Important: The host value cannot be used with this parameter. Use the default or dedicated values only. Default: default
8382 */
8383 InstanceTenancy?: Tenancy;
8384 /**
8385 * The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. The maximum is 100. Default: 100
8386 */
8387 MaxResults?: Integer;
8388 /**
8389 * The token to retrieve the next page of results.
8390 */
8391 NextToken?: String;
8392 /**
8393 * The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.
8394 */
8395 OfferingType?: OfferingTypeValues;
8396 }
8397 export interface DescribeReservedInstancesOfferingsResult {
8398 /**
8399 * A list of Reserved Instances offerings.
8400 */
8401 ReservedInstancesOfferings?: ReservedInstancesOfferingList;
8402 /**
8403 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8404 */
8405 NextToken?: String;
8406 }
8407 export interface DescribeReservedInstancesRequest {
8408 /**
8409 * One or more filters. availability-zone - The Availability Zone where the Reserved Instance can be used. duration - The duration of the Reserved Instance (one year or three years), in seconds (31536000 | 94608000). end - The time when the Reserved Instance expires (for example, 2015-08-07T11:54:42.000Z). fixed-price - The purchase price of the Reserved Instance (for example, 9800.0). instance-type - The instance type that is covered by the reservation. scope - The scope of the Reserved Instance (Region or Availability Zone). product-description - The Reserved Instance product platform description. Instances that include (Amazon VPC) in the product platform description will only be displayed to EC2-Classic account holders and are for use with Amazon VPC (Linux/UNIX | Linux/UNIX (Amazon VPC) | SUSE Linux | SUSE Linux (Amazon VPC) | Red Hat Enterprise Linux | Red Hat Enterprise Linux (Amazon VPC) | Windows | Windows (Amazon VPC) | Windows with SQL Server Standard | Windows with SQL Server Standard (Amazon VPC) | Windows with SQL Server Web | Windows with SQL Server Web (Amazon VPC) | Windows with SQL Server Enterprise | Windows with SQL Server Enterprise (Amazon VPC)). reserved-instances-id - The ID of the Reserved Instance. start - The time at which the Reserved Instance purchase request was placed (for example, 2014-08-07T11:54:42.000Z). state - The state of the Reserved Instance (payment-pending | active | payment-failed | retired). tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. usage-price - The usage price of the Reserved Instance, per hour (for example, 0.84).
8410 */
8411 Filters?: FilterList;
8412 /**
8413 * Describes whether the Reserved Instance is Standard or Convertible.
8414 */
8415 OfferingClass?: OfferingClassType;
8416 /**
8417 * One or more Reserved Instance IDs. Default: Describes all your Reserved Instances, or only those otherwise specified.
8418 */
8419 ReservedInstancesIds?: ReservedInstancesIdStringList;
8420 /**
8421 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8422 */
8423 DryRun?: Boolean;
8424 /**
8425 * The Reserved Instance offering type. If you are using tools that predate the 2011-11-01 API version, you only have access to the Medium Utilization Reserved Instance offering type.
8426 */
8427 OfferingType?: OfferingTypeValues;
8428 }
8429 export interface DescribeReservedInstancesResult {
8430 /**
8431 * A list of Reserved Instances.
8432 */
8433 ReservedInstances?: ReservedInstancesList;
8434 }
8435 export interface DescribeRouteTablesRequest {
8436 /**
8437 * One or more filters. association.route-table-association-id - The ID of an association ID for the route table. association.route-table-id - The ID of the route table involved in the association. association.subnet-id - The ID of the subnet involved in the association. association.main - Indicates whether the route table is the main route table for the VPC (true | false). Route tables that do not have an association ID are not returned in the response. owner-id - The ID of the AWS account that owns the route table. route-table-id - The ID of the route table. route.destination-cidr-block - The IPv4 CIDR range specified in a route in the table. route.destination-ipv6-cidr-block - The IPv6 CIDR range specified in a route in the route table. route.destination-prefix-list-id - The ID (prefix) of the AWS service specified in a route in the table. route.egress-only-internet-gateway-id - The ID of an egress-only Internet gateway specified in a route in the route table. route.gateway-id - The ID of a gateway specified in a route in the table. route.instance-id - The ID of an instance specified in a route in the table. route.nat-gateway-id - The ID of a NAT gateway. route.transit-gateway-id - The ID of a transit gateway. route.origin - Describes how the route was created. CreateRouteTable indicates that the route was automatically created when the route table was created; CreateRoute indicates that the route was manually added to the route table; EnableVgwRoutePropagation indicates that the route was propagated by route propagation. route.state - The state of a route in the route table (active | blackhole). The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, the specified NAT instance has been terminated, and so on). route.vpc-peering-connection-id - The ID of a VPC peering connection specified in a route in the table. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. transit-gateway-id - The ID of a transit gateway. vpc-id - The ID of the VPC for the route table.
8438 */
8439 Filters?: FilterList;
8440 /**
8441 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8442 */
8443 DryRun?: Boolean;
8444 /**
8445 * One or more route table IDs. Default: Describes all your route tables.
8446 */
8447 RouteTableIds?: ValueStringList;
8448 /**
8449 * The token for the next page of results.
8450 */
8451 NextToken?: String;
8452 /**
8453 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8454 */
8455 MaxResults?: Integer;
8456 }
8457 export interface DescribeRouteTablesResult {
8458 /**
8459 * Information about one or more route tables.
8460 */
8461 RouteTables?: RouteTableList;
8462 /**
8463 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8464 */
8465 NextToken?: String;
8466 }
8467 export interface DescribeScheduledInstanceAvailabilityRequest {
8468 /**
8469 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8470 */
8471 DryRun?: Boolean;
8472 /**
8473 * One or more filters. availability-zone - The Availability Zone (for example, us-west-2a). instance-type - The instance type (for example, c4.large). network-platform - The network platform (EC2-Classic or EC2-VPC). platform - The platform (Linux/UNIX or Windows).
8474 */
8475 Filters?: FilterList;
8476 /**
8477 * The time period for the first schedule to start.
8478 */
8479 FirstSlotStartTimeRange: SlotDateTimeRangeRequest;
8480 /**
8481 * The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 300. To retrieve the remaining results, make another call with the returned NextToken value.
8482 */
8483 MaxResults?: Integer;
8484 /**
8485 * The maximum available duration, in hours. This value must be greater than MinSlotDurationInHours and less than 1,720.
8486 */
8487 MaxSlotDurationInHours?: Integer;
8488 /**
8489 * The minimum available duration, in hours. The minimum required duration is 1,200 hours per year. For example, the minimum daily schedule is 4 hours, the minimum weekly schedule is 24 hours, and the minimum monthly schedule is 100 hours.
8490 */
8491 MinSlotDurationInHours?: Integer;
8492 /**
8493 * The token for the next set of results.
8494 */
8495 NextToken?: String;
8496 /**
8497 * The schedule recurrence.
8498 */
8499 Recurrence: ScheduledInstanceRecurrenceRequest;
8500 }
8501 export interface DescribeScheduledInstanceAvailabilityResult {
8502 /**
8503 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
8504 */
8505 NextToken?: String;
8506 /**
8507 * Information about the available Scheduled Instances.
8508 */
8509 ScheduledInstanceAvailabilitySet?: ScheduledInstanceAvailabilitySet;
8510 }
8511 export interface DescribeScheduledInstancesRequest {
8512 /**
8513 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8514 */
8515 DryRun?: Boolean;
8516 /**
8517 * One or more filters. availability-zone - The Availability Zone (for example, us-west-2a). instance-type - The instance type (for example, c4.large). network-platform - The network platform (EC2-Classic or EC2-VPC). platform - The platform (Linux/UNIX or Windows).
8518 */
8519 Filters?: FilterList;
8520 /**
8521 * The maximum number of results to return in a single call. This value can be between 5 and 300. The default value is 100. To retrieve the remaining results, make another call with the returned NextToken value.
8522 */
8523 MaxResults?: Integer;
8524 /**
8525 * The token for the next set of results.
8526 */
8527 NextToken?: String;
8528 /**
8529 * One or more Scheduled Instance IDs.
8530 */
8531 ScheduledInstanceIds?: ScheduledInstanceIdRequestSet;
8532 /**
8533 * The time period for the first schedule to start.
8534 */
8535 SlotStartTimeRange?: SlotStartTimeRangeRequest;
8536 }
8537 export interface DescribeScheduledInstancesResult {
8538 /**
8539 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
8540 */
8541 NextToken?: String;
8542 /**
8543 * Information about the Scheduled Instances.
8544 */
8545 ScheduledInstanceSet?: ScheduledInstanceSet;
8546 }
8547 export interface DescribeSecurityGroupReferencesRequest {
8548 /**
8549 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8550 */
8551 DryRun?: Boolean;
8552 /**
8553 * One or more security group IDs in your account.
8554 */
8555 GroupId: GroupIds;
8556 }
8557 export interface DescribeSecurityGroupReferencesResult {
8558 /**
8559 * Information about the VPCs with the referencing security groups.
8560 */
8561 SecurityGroupReferenceSet?: SecurityGroupReferences;
8562 }
8563 export interface DescribeSecurityGroupsRequest {
8564 /**
8565 * One or more filters. If using multiple filters for rules, the results include security groups for which any combination of rules - not necessarily a single rule - match all filters. description - The description of the security group. egress.ip-permission.cidr - An IPv4 CIDR block for an outbound security group rule. egress.ip-permission.from-port - For an outbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number. egress.ip-permission.group-id - The ID of a security group that has been referenced in an outbound security group rule. egress.ip-permission.group-name - The name of a security group that has been referenced in an outbound security group rule. egress.ip-permission.ipv6-cidr - An IPv6 CIDR block for an outbound security group rule. egress.ip-permission.prefix-list-id - The ID (prefix) of the AWS service to which a security group rule allows outbound access. egress.ip-permission.protocol - The IP protocol for an outbound security group rule (tcp | udp | icmp or a protocol number). egress.ip-permission.to-port - For an outbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code. egress.ip-permission.user-id - The ID of an AWS account that has been referenced in an outbound security group rule. group-id - The ID of the security group. group-name - The name of the security group. ip-permission.cidr - An IPv4 CIDR block for an inbound security group rule. ip-permission.from-port - For an inbound rule, the start of port range for the TCP and UDP protocols, or an ICMP type number. ip-permission.group-id - The ID of a security group that has been referenced in an inbound security group rule. ip-permission.group-name - The name of a security group that has been referenced in an inbound security group rule. ip-permission.ipv6-cidr - An IPv6 CIDR block for an inbound security group rule. ip-permission.prefix-list-id - The ID (prefix) of the AWS service from which a security group rule allows inbound access. ip-permission.protocol - The IP protocol for an inbound security group rule (tcp | udp | icmp or a protocol number). ip-permission.to-port - For an inbound rule, the end of port range for the TCP and UDP protocols, or an ICMP code. ip-permission.user-id - The ID of an AWS account that has been referenced in an inbound security group rule. owner-id - The AWS account ID of the owner of the security group. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. vpc-id - The ID of the VPC specified when the security group was created.
8566 */
8567 Filters?: FilterList;
8568 /**
8569 * One or more security group IDs. Required for security groups in a nondefault VPC. Default: Describes all your security groups.
8570 */
8571 GroupIds?: GroupIdStringList;
8572 /**
8573 * [EC2-Classic and default VPC only] One or more security group names. You can specify either the security group name or the security group ID. For security groups in a nondefault VPC, use the group-name filter to describe security groups by name. Default: Describes all your security groups.
8574 */
8575 GroupNames?: GroupNameStringList;
8576 /**
8577 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8578 */
8579 DryRun?: Boolean;
8580 /**
8581 * The token to request the next page of results.
8582 */
8583 NextToken?: String;
8584 /**
8585 * The maximum number of results to return in a single call. To retrieve the remaining results, make another request with the returned NextToken value. This value can be between 5 and 1000. If this parameter is not specified, then all results are returned.
8586 */
8587 MaxResults?: Integer;
8588 }
8589 export interface DescribeSecurityGroupsResult {
8590 /**
8591 * Information about one or more security groups.
8592 */
8593 SecurityGroups?: SecurityGroupList;
8594 /**
8595 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8596 */
8597 NextToken?: String;
8598 }
8599 export interface DescribeSnapshotAttributeRequest {
8600 /**
8601 * The snapshot attribute you would like to view.
8602 */
8603 Attribute: SnapshotAttributeName;
8604 /**
8605 * The ID of the EBS snapshot.
8606 */
8607 SnapshotId: String;
8608 /**
8609 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8610 */
8611 DryRun?: Boolean;
8612 }
8613 export interface DescribeSnapshotAttributeResult {
8614 /**
8615 * The users and groups that have the permissions for creating volumes from the snapshot.
8616 */
8617 CreateVolumePermissions?: CreateVolumePermissionList;
8618 /**
8619 * The product codes.
8620 */
8621 ProductCodes?: ProductCodeList;
8622 /**
8623 * The ID of the EBS snapshot.
8624 */
8625 SnapshotId?: String;
8626 }
8627 export interface DescribeSnapshotsRequest {
8628 /**
8629 * One or more filters. description - A description of the snapshot. owner-alias - Value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM console. owner-id - The ID of the AWS account that owns the snapshot. progress - The progress of the snapshot, as a percentage (for example, 80%). snapshot-id - The snapshot ID. start-time - The time stamp when the snapshot was initiated. status - The status of the snapshot (pending | completed | error). tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. volume-id - The ID of the volume the snapshot is for. volume-size - The size of the volume, in GiB.
8630 */
8631 Filters?: FilterList;
8632 /**
8633 * The maximum number of snapshot results returned by DescribeSnapshots in paginated output. When this parameter is used, DescribeSnapshots only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeSnapshots request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeSnapshots returns all results. You cannot specify this parameter and the snapshot IDs parameter in the same request.
8634 */
8635 MaxResults?: Integer;
8636 /**
8637 * The NextToken value returned from a previous paginated DescribeSnapshots request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.
8638 */
8639 NextToken?: String;
8640 /**
8641 * Describes the snapshots owned by one or more owners.
8642 */
8643 OwnerIds?: OwnerStringList;
8644 /**
8645 * One or more AWS accounts IDs that can create volumes from the snapshot.
8646 */
8647 RestorableByUserIds?: RestorableByStringList;
8648 /**
8649 * One or more snapshot IDs. Default: Describes the snapshots for which you have create volume permissions.
8650 */
8651 SnapshotIds?: SnapshotIdStringList;
8652 /**
8653 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8654 */
8655 DryRun?: Boolean;
8656 }
8657 export interface DescribeSnapshotsResult {
8658 /**
8659 * Information about the snapshots.
8660 */
8661 Snapshots?: SnapshotList;
8662 /**
8663 * The NextToken value to include in a future DescribeSnapshots request. When the results of a DescribeSnapshots request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
8664 */
8665 NextToken?: String;
8666 }
8667 export interface DescribeSpotDatafeedSubscriptionRequest {
8668 /**
8669 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8670 */
8671 DryRun?: Boolean;
8672 }
8673 export interface DescribeSpotDatafeedSubscriptionResult {
8674 /**
8675 * The Spot Instance data feed subscription.
8676 */
8677 SpotDatafeedSubscription?: SpotDatafeedSubscription;
8678 }
8679 export interface DescribeSpotFleetInstancesRequest {
8680 /**
8681 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8682 */
8683 DryRun?: Boolean;
8684 /**
8685 * The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.
8686 */
8687 MaxResults?: Integer;
8688 /**
8689 * The token for the next set of results.
8690 */
8691 NextToken?: String;
8692 /**
8693 * The ID of the Spot Fleet request.
8694 */
8695 SpotFleetRequestId: String;
8696 }
8697 export interface DescribeSpotFleetInstancesResponse {
8698 /**
8699 * The running instances. This list is refreshed periodically and might be out of date.
8700 */
8701 ActiveInstances?: ActiveInstanceSet;
8702 /**
8703 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
8704 */
8705 NextToken?: String;
8706 /**
8707 * The ID of the Spot Fleet request.
8708 */
8709 SpotFleetRequestId?: String;
8710 }
8711 export interface DescribeSpotFleetRequestHistoryRequest {
8712 /**
8713 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8714 */
8715 DryRun?: Boolean;
8716 /**
8717 * The type of events to describe. By default, all events are described.
8718 */
8719 EventType?: EventType;
8720 /**
8721 * The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.
8722 */
8723 MaxResults?: Integer;
8724 /**
8725 * The token for the next set of results.
8726 */
8727 NextToken?: String;
8728 /**
8729 * The ID of the Spot Fleet request.
8730 */
8731 SpotFleetRequestId: String;
8732 /**
8733 * The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
8734 */
8735 StartTime: DateTime;
8736 }
8737 export interface DescribeSpotFleetRequestHistoryResponse {
8738 /**
8739 * Information about the events in the history of the Spot Fleet request.
8740 */
8741 HistoryRecords?: HistoryRecords;
8742 /**
8743 * The last date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). All records up to this time were retrieved. If nextToken indicates that there are more results, this value is not present.
8744 */
8745 LastEvaluatedTime?: DateTime;
8746 /**
8747 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
8748 */
8749 NextToken?: String;
8750 /**
8751 * The ID of the Spot Fleet request.
8752 */
8753 SpotFleetRequestId?: String;
8754 /**
8755 * The starting date and time for the events, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
8756 */
8757 StartTime?: DateTime;
8758 }
8759 export interface DescribeSpotFleetRequestsRequest {
8760 /**
8761 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8762 */
8763 DryRun?: Boolean;
8764 /**
8765 * The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.
8766 */
8767 MaxResults?: Integer;
8768 /**
8769 * The token for the next set of results.
8770 */
8771 NextToken?: String;
8772 /**
8773 * The IDs of the Spot Fleet requests.
8774 */
8775 SpotFleetRequestIds?: ValueStringList;
8776 }
8777 export interface DescribeSpotFleetRequestsResponse {
8778 /**
8779 * The token required to retrieve the next set of results. This value is null when there are no more results to return.
8780 */
8781 NextToken?: String;
8782 /**
8783 * Information about the configuration of your Spot Fleet.
8784 */
8785 SpotFleetRequestConfigs?: SpotFleetRequestConfigSet;
8786 }
8787 export interface DescribeSpotInstanceRequestsRequest {
8788 /**
8789 * One or more filters. availability-zone-group - The Availability Zone group. create-time - The time stamp when the Spot Instance request was created. fault-code - The fault code related to the request. fault-message - The fault message related to the request. instance-id - The ID of the instance that fulfilled the request. launch-group - The Spot Instance launch group. launch.block-device-mapping.delete-on-termination - Indicates whether the EBS volume is deleted on instance termination. launch.block-device-mapping.device-name - The device name for the volume in the block device mapping (for example, /dev/sdh or xvdh). launch.block-device-mapping.snapshot-id - The ID of the snapshot for the EBS volume. launch.block-device-mapping.volume-size - The size of the EBS volume, in GiB. launch.block-device-mapping.volume-type - The type of EBS volume: gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1for Cold HDD, or standard for Magnetic. launch.group-id - The ID of the security group for the instance. launch.group-name - The name of the security group for the instance. launch.image-id - The ID of the AMI. launch.instance-type - The type of instance (for example, m3.medium). launch.kernel-id - The kernel ID. launch.key-name - The name of the key pair the instance launched with. launch.monitoring-enabled - Whether detailed monitoring is enabled for the Spot Instance. launch.ramdisk-id - The RAM disk ID. launched-availability-zone - The Availability Zone in which the request is launched. network-interface.addresses.primary - Indicates whether the IP address is the primary private IP address. network-interface.delete-on-termination - Indicates whether the network interface is deleted when the instance is terminated. network-interface.description - A description of the network interface. network-interface.device-index - The index of the device for the network interface attachment on the instance. network-interface.group-id - The ID of the security group associated with the network interface. network-interface.network-interface-id - The ID of the network interface. network-interface.private-ip-address - The primary private IP address of the network interface. network-interface.subnet-id - The ID of the subnet for the instance. product-description - The product description associated with the instance (Linux/UNIX | Windows). spot-instance-request-id - The Spot Instance request ID. spot-price - The maximum hourly price for any Spot Instance launched to fulfill the request. state - The state of the Spot Instance request (open | active | closed | cancelled | failed). Spot request status information can help you track your Amazon EC2 Spot Instance requests. For more information, see Spot Request Status in the Amazon EC2 User Guide for Linux Instances. status-code - The short code describing the most recent evaluation of your Spot Instance request. status-message - The message explaining the status of the Spot Instance request. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. type - The type of Spot Instance request (one-time | persistent). valid-from - The start date of the request. valid-until - The end date of the request.
8790 */
8791 Filters?: FilterList;
8792 /**
8793 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8794 */
8795 DryRun?: Boolean;
8796 /**
8797 * One or more Spot Instance request IDs.
8798 */
8799 SpotInstanceRequestIds?: SpotInstanceRequestIdList;
8800 /**
8801 * The token to request the next set of results. This value is null when there are no more results to return.
8802 */
8803 NextToken?: String;
8804 /**
8805 * The maximum number of results to return in a single call. Specify a value between 5 and 1000. To retrieve the remaining results, make another call with the returned NextToken value.
8806 */
8807 MaxResults?: Integer;
8808 }
8809 export interface DescribeSpotInstanceRequestsResult {
8810 /**
8811 * One or more Spot Instance requests.
8812 */
8813 SpotInstanceRequests?: SpotInstanceRequestList;
8814 /**
8815 * The token to use to retrieve the next set of results. This value is null when there are no more results to return.
8816 */
8817 NextToken?: String;
8818 }
8819 export interface DescribeSpotPriceHistoryRequest {
8820 /**
8821 * One or more filters. availability-zone - The Availability Zone for which prices should be returned. instance-type - The type of instance (for example, m3.medium). product-description - The product description for the Spot price (Linux/UNIX | SUSE Linux | Windows | Linux/UNIX (Amazon VPC) | SUSE Linux (Amazon VPC) | Windows (Amazon VPC)). spot-price - The Spot price. The value must match exactly (or use wildcards; greater than or less than comparison is not supported). timestamp - The time stamp of the Spot price history, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). You can use wildcards (* and ?). Greater than or less than comparison is not supported.
8822 */
8823 Filters?: FilterList;
8824 /**
8825 * Filters the results by the specified Availability Zone.
8826 */
8827 AvailabilityZone?: String;
8828 /**
8829 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8830 */
8831 DryRun?: Boolean;
8832 /**
8833 * The date and time, up to the current date, from which to stop retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
8834 */
8835 EndTime?: DateTime;
8836 /**
8837 * Filters the results by the specified instance types.
8838 */
8839 InstanceTypes?: InstanceTypeList;
8840 /**
8841 * The maximum number of results to return in a single call. Specify a value between 1 and 1000. The default value is 1000. To retrieve the remaining results, make another call with the returned NextToken value.
8842 */
8843 MaxResults?: Integer;
8844 /**
8845 * The token for the next set of results.
8846 */
8847 NextToken?: String;
8848 /**
8849 * Filters the results by the specified basic product descriptions.
8850 */
8851 ProductDescriptions?: ProductDescriptionList;
8852 /**
8853 * The date and time, up to the past 90 days, from which to start retrieving the price history data, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
8854 */
8855 StartTime?: DateTime;
8856 }
8857 export interface DescribeSpotPriceHistoryResult {
8858 /**
8859 * The token required to retrieve the next set of results. This value is null or an empty string when there are no more results to return.
8860 */
8861 NextToken?: String;
8862 /**
8863 * The historical Spot prices.
8864 */
8865 SpotPriceHistory?: SpotPriceHistoryList;
8866 }
8867 export interface DescribeStaleSecurityGroupsRequest {
8868 /**
8869 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8870 */
8871 DryRun?: Boolean;
8872 /**
8873 * The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results.
8874 */
8875 MaxResults?: MaxResults;
8876 /**
8877 * The token for the next set of items to return. (You received this token from a prior call.)
8878 */
8879 NextToken?: NextToken;
8880 /**
8881 * The ID of the VPC.
8882 */
8883 VpcId: String;
8884 }
8885 export interface DescribeStaleSecurityGroupsResult {
8886 /**
8887 * The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
8888 */
8889 NextToken?: String;
8890 /**
8891 * Information about the stale security groups.
8892 */
8893 StaleSecurityGroupSet?: StaleSecurityGroupSet;
8894 }
8895 export interface DescribeSubnetsRequest {
8896 /**
8897 * One or more filters. availability-zone - The Availability Zone for the subnet. You can also use availabilityZone as the filter name. availability-zone-id - The ID of the Availability Zone for the subnet. You can also use availabilityZoneId as the filter name. available-ip-address-count - The number of IPv4 addresses in the subnet that are available. cidr-block - The IPv4 CIDR block of the subnet. The CIDR block you specify must exactly match the subnet's CIDR block for information to be returned for the subnet. You can also use cidr or cidrBlock as the filter names. default-for-az - Indicates whether this is the default subnet for the Availability Zone. You can also use defaultForAz as the filter name. ipv6-cidr-block-association.ipv6-cidr-block - An IPv6 CIDR block associated with the subnet. ipv6-cidr-block-association.association-id - An association ID for an IPv6 CIDR block associated with the subnet. ipv6-cidr-block-association.state - The state of an IPv6 CIDR block associated with the subnet. owner-id - The ID of the AWS account that owns the subnet. state - The state of the subnet (pending | available). subnet-arn - The Amazon Resource Name (ARN) of the subnet. subnet-id - The ID of the subnet. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. vpc-id - The ID of the VPC for the subnet.
8898 */
8899 Filters?: FilterList;
8900 /**
8901 * One or more subnet IDs. Default: Describes all your subnets.
8902 */
8903 SubnetIds?: SubnetIdStringList;
8904 /**
8905 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8906 */
8907 DryRun?: Boolean;
8908 }
8909 export interface DescribeSubnetsResult {
8910 /**
8911 * Information about one or more subnets.
8912 */
8913 Subnets?: SubnetList;
8914 }
8915 export interface DescribeTagsRequest {
8916 /**
8917 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8918 */
8919 DryRun?: Boolean;
8920 /**
8921 * One or more filters. key - The tag key. resource-id - The ID of the resource. resource-type - The resource type (customer-gateway | dedicated-host | dhcp-options | elastic-ip | fleet | fpga-image | image | instance | host-reservation | internet-gateway | launch-template | natgateway | network-acl | network-interface | reserved-instances | route-table | security-group | snapshot | spot-instances-request | subnet | volume | vpc | vpc-peering-connection | vpn-connection | vpn-gateway). tag:&lt;key&gt; - The key/value combination of the tag. For example, specify "tag:Owner" for the filter name and "TeamA" for the filter value to find resources with the tag "Owner=TeamA". value - The tag value.
8922 */
8923 Filters?: FilterList;
8924 /**
8925 * The maximum number of results to return in a single call. This value can be between 5 and 1000. To retrieve the remaining results, make another call with the returned NextToken value.
8926 */
8927 MaxResults?: Integer;
8928 /**
8929 * The token to retrieve the next page of results.
8930 */
8931 NextToken?: String;
8932 }
8933 export interface DescribeTagsResult {
8934 /**
8935 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8936 */
8937 NextToken?: String;
8938 /**
8939 * The tags.
8940 */
8941 Tags?: TagDescriptionList;
8942 }
8943 export interface DescribeTransitGatewayAttachmentsRequest {
8944 /**
8945 * The IDs of the attachments.
8946 */
8947 TransitGatewayAttachmentIds?: TransitGatewayAttachmentIdStringList;
8948 /**
8949 * One or more filters. The possible values are: association.state - The state of the association (associating | associated | disassociating). association.transit-gateway-route-table-id - The ID of the route table for the transit gateway. resource-id - The ID of the resource. resource-owner-id - The ID of the AWS account that owns the resource. resource-type - The resource type (vpc | vpn). state - The state of the attachment (available | deleted | deleting | failed | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting). transit-gateway-attachment-id - The ID of the attachment. transit-gateway-id - The ID of the transit gateway. transit-gateway-owner-id - The ID of the AWS account that owns the transit gateway.
8950 */
8951 Filters?: FilterList;
8952 /**
8953 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8954 */
8955 MaxResults?: TransitGatewayMaxResults;
8956 /**
8957 * The token for the next page of results.
8958 */
8959 NextToken?: String;
8960 /**
8961 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8962 */
8963 DryRun?: Boolean;
8964 }
8965 export interface DescribeTransitGatewayAttachmentsResult {
8966 /**
8967 * Information about the attachments.
8968 */
8969 TransitGatewayAttachments?: TransitGatewayAttachmentList;
8970 /**
8971 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
8972 */
8973 NextToken?: String;
8974 }
8975 export interface DescribeTransitGatewayRouteTablesRequest {
8976 /**
8977 * The IDs of the transit gateway route tables.
8978 */
8979 TransitGatewayRouteTableIds?: TransitGatewayRouteTableIdStringList;
8980 /**
8981 * One or more filters. The possible values are: default-association-route-table - Indicates whether this is the default association route table for the transit gateway (true | false). default-propagation-route-table - Indicates whether this is the default propagation route table for the transit gateway (true | false). state - The state of the attachment (available | deleted | deleting | failed | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting). transit-gateway-id - The ID of the transit gateway. transit-gateway-route-table-id - The ID of the transit gateway route table.
8982 */
8983 Filters?: FilterList;
8984 /**
8985 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
8986 */
8987 MaxResults?: TransitGatewayMaxResults;
8988 /**
8989 * The token for the next page of results.
8990 */
8991 NextToken?: String;
8992 /**
8993 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
8994 */
8995 DryRun?: Boolean;
8996 }
8997 export interface DescribeTransitGatewayRouteTablesResult {
8998 /**
8999 * Information about the transit gateway route tables.
9000 */
9001 TransitGatewayRouteTables?: TransitGatewayRouteTableList;
9002 /**
9003 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9004 */
9005 NextToken?: String;
9006 }
9007 export interface DescribeTransitGatewayVpcAttachmentsRequest {
9008 /**
9009 * The IDs of the attachments.
9010 */
9011 TransitGatewayAttachmentIds?: TransitGatewayAttachmentIdStringList;
9012 /**
9013 * One or more filters. The possible values are: state - The state of the attachment (available | deleted | deleting | failed | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting). transit-gateway-attachment-id - The ID of the attachment. transit-gateway-id - The ID of the transit gateway. vpc-id - The ID of the VPC.
9014 */
9015 Filters?: FilterList;
9016 /**
9017 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9018 */
9019 MaxResults?: TransitGatewayMaxResults;
9020 /**
9021 * The token for the next page of results.
9022 */
9023 NextToken?: String;
9024 /**
9025 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9026 */
9027 DryRun?: Boolean;
9028 }
9029 export interface DescribeTransitGatewayVpcAttachmentsResult {
9030 /**
9031 * Information about the VPC attachments.
9032 */
9033 TransitGatewayVpcAttachments?: TransitGatewayVpcAttachmentList;
9034 /**
9035 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9036 */
9037 NextToken?: String;
9038 }
9039 export interface DescribeTransitGatewaysRequest {
9040 /**
9041 * The IDs of the transit gateways.
9042 */
9043 TransitGatewayIds?: TransitGatewayIdStringList;
9044 /**
9045 * One or more filters. The possible values are: options.propagation-default-route-table-id - The ID of the default propagation route table. options.amazon-side-asn - The private ASN for the Amazon side of a BGP session. options.association-default-route-table-id - The ID of the default association route table. options.auto-accept-shared-attachments - Indicates whether there is automatic acceptance of attachment requests (enable | disable). options.default-route-table-association - Indicates whether resource attachments are automatically associated with the default association route table (enable | disable). options.default-route-table-propagation - Indicates whether resource attachments automatically propagate routes to the default propagation route table (enable | disable). options.dns-support - Indicates whether DNS support is enabled (enable | disable). options.vpn-ecmp-support - Indicates whether Equal Cost Multipath Protocol support is enabled (enable | disable). owner-id - The ID of the AWS account that owns the transit gateway. state - The state of the attachment (available | deleted | deleting | failed | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting). transit-gateway-id - The ID of the transit gateway.
9046 */
9047 Filters?: FilterList;
9048 /**
9049 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9050 */
9051 MaxResults?: TransitGatewayMaxResults;
9052 /**
9053 * The token for the next page of results.
9054 */
9055 NextToken?: String;
9056 /**
9057 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9058 */
9059 DryRun?: Boolean;
9060 }
9061 export interface DescribeTransitGatewaysResult {
9062 /**
9063 * Information about the transit gateways.
9064 */
9065 TransitGateways?: TransitGatewayList;
9066 /**
9067 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9068 */
9069 NextToken?: String;
9070 }
9071 export interface DescribeVolumeAttributeRequest {
9072 /**
9073 * The attribute of the volume. This parameter is required.
9074 */
9075 Attribute: VolumeAttributeName;
9076 /**
9077 * The ID of the volume.
9078 */
9079 VolumeId: String;
9080 /**
9081 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9082 */
9083 DryRun?: Boolean;
9084 }
9085 export interface DescribeVolumeAttributeResult {
9086 /**
9087 * The state of autoEnableIO attribute.
9088 */
9089 AutoEnableIO?: AttributeBooleanValue;
9090 /**
9091 * A list of product codes.
9092 */
9093 ProductCodes?: ProductCodeList;
9094 /**
9095 * The ID of the volume.
9096 */
9097 VolumeId?: String;
9098 }
9099 export interface DescribeVolumeStatusRequest {
9100 /**
9101 * One or more filters. action.code - The action code for the event (for example, enable-volume-io). action.description - A description of the action. action.event-id - The event ID associated with the action. availability-zone - The Availability Zone of the instance. event.description - A description of the event. event.event-id - The event ID. event.event-type - The event type (for io-enabled: passed | failed; for io-performance: io-performance:degraded | io-performance:severely-degraded | io-performance:stalled). event.not-after - The latest end time for the event. event.not-before - The earliest start time for the event. volume-status.details-name - The cause for volume-status.status (io-enabled | io-performance). volume-status.details-status - The status of volume-status.details-name (for io-enabled: passed | failed; for io-performance: normal | degraded | severely-degraded | stalled). volume-status.status - The status of the volume (ok | impaired | warning | insufficient-data).
9102 */
9103 Filters?: FilterList;
9104 /**
9105 * The maximum number of volume results returned by DescribeVolumeStatus in paginated output. When this parameter is used, the request only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned. If this parameter is not used, then DescribeVolumeStatus returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.
9106 */
9107 MaxResults?: Integer;
9108 /**
9109 * The NextToken value to include in a future DescribeVolumeStatus request. When the results of the request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
9110 */
9111 NextToken?: String;
9112 /**
9113 * One or more volume IDs. Default: Describes all your volumes.
9114 */
9115 VolumeIds?: VolumeIdStringList;
9116 /**
9117 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9118 */
9119 DryRun?: Boolean;
9120 }
9121 export interface DescribeVolumeStatusResult {
9122 /**
9123 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9124 */
9125 NextToken?: String;
9126 /**
9127 * A list of volumes.
9128 */
9129 VolumeStatuses?: VolumeStatusList;
9130 }
9131 export interface DescribeVolumesModificationsRequest {
9132 /**
9133 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9134 */
9135 DryRun?: Boolean;
9136 /**
9137 * One or more volume IDs for which in-progress modifications will be described.
9138 */
9139 VolumeIds?: VolumeIdStringList;
9140 /**
9141 * One or more filters. Supported filters: volume-id, modification-state, target-size, target-iops, target-volume-type, original-size, original-iops, original-volume-type, start-time.
9142 */
9143 Filters?: FilterList;
9144 /**
9145 * The nextToken value returned by a previous paginated request.
9146 */
9147 NextToken?: String;
9148 /**
9149 * The maximum number of results (up to a limit of 500) to be returned in a paginated request.
9150 */
9151 MaxResults?: Integer;
9152 }
9153 export interface DescribeVolumesModificationsResult {
9154 /**
9155 * A list of returned VolumeModification objects.
9156 */
9157 VolumesModifications?: VolumeModificationList;
9158 /**
9159 * Token for pagination, null if there are no more results
9160 */
9161 NextToken?: String;
9162 }
9163 export interface DescribeVolumesRequest {
9164 /**
9165 * One or more filters. attachment.attach-time - The time stamp when the attachment initiated. attachment.delete-on-termination - Whether the volume is deleted on instance termination. attachment.device - The device name specified in the block device mapping (for example, /dev/sda1). attachment.instance-id - The ID of the instance the volume is attached to. attachment.status - The attachment state (attaching | attached | detaching). availability-zone - The Availability Zone in which the volume was created. create-time - The time stamp when the volume was created. encrypted - The encryption status of the volume. size - The size of the volume, in GiB. snapshot-id - The snapshot from which the volume was created. status - The status of the volume (creating | available | in-use | deleting | deleted | error). tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. volume-id - The volume ID. volume-type - The Amazon EBS volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.
9166 */
9167 Filters?: FilterList;
9168 /**
9169 * One or more volume IDs.
9170 */
9171 VolumeIds?: VolumeIdStringList;
9172 /**
9173 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9174 */
9175 DryRun?: Boolean;
9176 /**
9177 * The maximum number of volume results returned by DescribeVolumes in paginated output. When this parameter is used, DescribeVolumes only returns MaxResults results in a single page along with a NextToken response element. The remaining results of the initial request can be seen by sending another DescribeVolumes request with the returned NextToken value. This value can be between 5 and 500; if MaxResults is given a value larger than 500, only 500 results are returned. If this parameter is not used, then DescribeVolumes returns all results. You cannot specify this parameter and the volume IDs parameter in the same request.
9178 */
9179 MaxResults?: Integer;
9180 /**
9181 * The NextToken value returned from a previous paginated DescribeVolumes request where MaxResults was used and the results exceeded the value of that parameter. Pagination continues from the end of the previous results that returned the NextToken value. This value is null when there are no more results to return.
9182 */
9183 NextToken?: String;
9184 }
9185 export interface DescribeVolumesResult {
9186 /**
9187 * Information about the volumes.
9188 */
9189 Volumes?: VolumeList;
9190 /**
9191 * The NextToken value to include in a future DescribeVolumes request. When the results of a DescribeVolumes request exceed MaxResults, this value can be used to retrieve the next page of results. This value is null when there are no more results to return.
9192 */
9193 NextToken?: String;
9194 }
9195 export interface DescribeVpcAttributeRequest {
9196 /**
9197 * The VPC attribute.
9198 */
9199 Attribute: VpcAttributeName;
9200 /**
9201 * The ID of the VPC.
9202 */
9203 VpcId: String;
9204 /**
9205 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9206 */
9207 DryRun?: Boolean;
9208 }
9209 export interface DescribeVpcAttributeResult {
9210 /**
9211 * The ID of the VPC.
9212 */
9213 VpcId?: String;
9214 /**
9215 * Indicates whether the instances launched in the VPC get DNS hostnames. If this attribute is true, instances in the VPC get DNS hostnames; otherwise, they do not.
9216 */
9217 EnableDnsHostnames?: AttributeBooleanValue;
9218 /**
9219 * Indicates whether DNS resolution is enabled for the VPC. If this attribute is true, the Amazon DNS server resolves DNS hostnames for your instances to their corresponding IP addresses; otherwise, it does not.
9220 */
9221 EnableDnsSupport?: AttributeBooleanValue;
9222 }
9223 export interface DescribeVpcClassicLinkDnsSupportRequest {
9224 /**
9225 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9226 */
9227 MaxResults?: MaxResults;
9228 /**
9229 * The token for the next page of results.
9230 */
9231 NextToken?: NextToken;
9232 /**
9233 * One or more VPC IDs.
9234 */
9235 VpcIds?: VpcClassicLinkIdList;
9236 }
9237 export interface DescribeVpcClassicLinkDnsSupportResult {
9238 /**
9239 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9240 */
9241 NextToken?: NextToken;
9242 /**
9243 * Information about the ClassicLink DNS support status of the VPCs.
9244 */
9245 Vpcs?: ClassicLinkDnsSupportList;
9246 }
9247 export interface DescribeVpcClassicLinkRequest {
9248 /**
9249 * One or more filters. is-classic-link-enabled - Whether the VPC is enabled for ClassicLink (true | false). tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value.
9250 */
9251 Filters?: FilterList;
9252 /**
9253 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9254 */
9255 DryRun?: Boolean;
9256 /**
9257 * One or more VPCs for which you want to describe the ClassicLink status.
9258 */
9259 VpcIds?: VpcClassicLinkIdList;
9260 }
9261 export interface DescribeVpcClassicLinkResult {
9262 /**
9263 * The ClassicLink status of one or more VPCs.
9264 */
9265 Vpcs?: VpcClassicLinkList;
9266 }
9267 export interface DescribeVpcEndpointConnectionNotificationsRequest {
9268 /**
9269 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9270 */
9271 DryRun?: Boolean;
9272 /**
9273 * The ID of the notification.
9274 */
9275 ConnectionNotificationId?: String;
9276 /**
9277 * One or more filters. connection-notification-arn - The ARN of SNS topic for the notification. connection-notification-id - The ID of the notification. connection-notification-state - The state of the notification (Enabled | Disabled). connection-notification-type - The type of notification (Topic). service-id - The ID of the endpoint service. vpc-endpoint-id - The ID of the VPC endpoint.
9278 */
9279 Filters?: FilterList;
9280 /**
9281 * The maximum number of results to return in a single call. To retrieve the remaining results, make another request with the returned NextToken value.
9282 */
9283 MaxResults?: Integer;
9284 /**
9285 * The token to request the next page of results.
9286 */
9287 NextToken?: String;
9288 }
9289 export interface DescribeVpcEndpointConnectionNotificationsResult {
9290 /**
9291 * One or more notifications.
9292 */
9293 ConnectionNotificationSet?: ConnectionNotificationSet;
9294 /**
9295 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9296 */
9297 NextToken?: String;
9298 }
9299 export interface DescribeVpcEndpointConnectionsRequest {
9300 /**
9301 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9302 */
9303 DryRun?: Boolean;
9304 /**
9305 * One or more filters. service-id - The ID of the service. vpc-endpoint-owner - The AWS account number of the owner of the endpoint. vpc-endpoint-state - The state of the endpoint (pendingAcceptance | pending | available | deleting | deleted | rejected | failed). vpc-endpoint-id - The ID of the endpoint.
9306 */
9307 Filters?: FilterList;
9308 /**
9309 * The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned.
9310 */
9311 MaxResults?: Integer;
9312 /**
9313 * The token to retrieve the next page of results.
9314 */
9315 NextToken?: String;
9316 }
9317 export interface DescribeVpcEndpointConnectionsResult {
9318 /**
9319 * Information about one or more VPC endpoint connections.
9320 */
9321 VpcEndpointConnections?: VpcEndpointConnectionSet;
9322 /**
9323 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9324 */
9325 NextToken?: String;
9326 }
9327 export interface DescribeVpcEndpointServiceConfigurationsRequest {
9328 /**
9329 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9330 */
9331 DryRun?: Boolean;
9332 /**
9333 * The IDs of one or more services.
9334 */
9335 ServiceIds?: ValueStringList;
9336 /**
9337 * One or more filters. service-name - The name of the service. service-id - The ID of the service. service-state - The state of the service (Pending | Available | Deleting | Deleted | Failed).
9338 */
9339 Filters?: FilterList;
9340 /**
9341 * The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned.
9342 */
9343 MaxResults?: Integer;
9344 /**
9345 * The token to retrieve the next page of results.
9346 */
9347 NextToken?: String;
9348 }
9349 export interface DescribeVpcEndpointServiceConfigurationsResult {
9350 /**
9351 * Information about one or more services.
9352 */
9353 ServiceConfigurations?: ServiceConfigurationSet;
9354 /**
9355 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9356 */
9357 NextToken?: String;
9358 }
9359 export interface DescribeVpcEndpointServicePermissionsRequest {
9360 /**
9361 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9362 */
9363 DryRun?: Boolean;
9364 /**
9365 * The ID of the service.
9366 */
9367 ServiceId: String;
9368 /**
9369 * One or more filters. principal - The ARN of the principal. principal-type - The principal type (All | Service | OrganizationUnit | Account | User | Role).
9370 */
9371 Filters?: FilterList;
9372 /**
9373 * The maximum number of results to return for the request in a single page. The remaining results of the initial request can be seen by sending another request with the returned NextToken value. This value can be between 5 and 1000; if MaxResults is given a value larger than 1000, only 1000 results are returned.
9374 */
9375 MaxResults?: Integer;
9376 /**
9377 * The token to retrieve the next page of results.
9378 */
9379 NextToken?: String;
9380 }
9381 export interface DescribeVpcEndpointServicePermissionsResult {
9382 /**
9383 * Information about one or more allowed principals.
9384 */
9385 AllowedPrincipals?: AllowedPrincipalSet;
9386 /**
9387 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9388 */
9389 NextToken?: String;
9390 }
9391 export interface DescribeVpcEndpointServicesRequest {
9392 /**
9393 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9394 */
9395 DryRun?: Boolean;
9396 /**
9397 * One or more service names.
9398 */
9399 ServiceNames?: ValueStringList;
9400 /**
9401 * One or more filters. service-name: The name of the service.
9402 */
9403 Filters?: FilterList;
9404 /**
9405 * The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results. Constraint: If the value is greater than 1000, we return only 1000 items.
9406 */
9407 MaxResults?: Integer;
9408 /**
9409 * The token for the next set of items to return. (You received this token from a prior call.)
9410 */
9411 NextToken?: String;
9412 }
9413 export interface DescribeVpcEndpointServicesResult {
9414 /**
9415 * A list of supported services.
9416 */
9417 ServiceNames?: ValueStringList;
9418 /**
9419 * Information about the service.
9420 */
9421 ServiceDetails?: ServiceDetailSet;
9422 /**
9423 * The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
9424 */
9425 NextToken?: String;
9426 }
9427 export interface DescribeVpcEndpointsRequest {
9428 /**
9429 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9430 */
9431 DryRun?: Boolean;
9432 /**
9433 * One or more endpoint IDs.
9434 */
9435 VpcEndpointIds?: ValueStringList;
9436 /**
9437 * One or more filters. service-name: The name of the service. vpc-id: The ID of the VPC in which the endpoint resides. vpc-endpoint-id: The ID of the endpoint. vpc-endpoint-state: The state of the endpoint. (pending | available | deleting | deleted)
9438 */
9439 Filters?: FilterList;
9440 /**
9441 * The maximum number of items to return for this request. The request returns a token that you can specify in a subsequent call to get the next set of results. Constraint: If the value is greater than 1000, we return only 1000 items.
9442 */
9443 MaxResults?: Integer;
9444 /**
9445 * The token for the next set of items to return. (You received this token from a prior call.)
9446 */
9447 NextToken?: String;
9448 }
9449 export interface DescribeVpcEndpointsResult {
9450 /**
9451 * Information about the endpoints.
9452 */
9453 VpcEndpoints?: VpcEndpointSet;
9454 /**
9455 * The token to use when requesting the next set of items. If there are no additional items to return, the string is empty.
9456 */
9457 NextToken?: String;
9458 }
9459 export type DescribeVpcPeeringConnectionsMaxResults = number;
9460 export interface DescribeVpcPeeringConnectionsRequest {
9461 /**
9462 * One or more filters. accepter-vpc-info.cidr-block - The IPv4 CIDR block of the accepter VPC. accepter-vpc-info.owner-id - The AWS account ID of the owner of the accepter VPC. accepter-vpc-info.vpc-id - The ID of the accepter VPC. expiration-time - The expiration date and time for the VPC peering connection. requester-vpc-info.cidr-block - The IPv4 CIDR block of the requester's VPC. requester-vpc-info.owner-id - The AWS account ID of the owner of the requester VPC. requester-vpc-info.vpc-id - The ID of the requester VPC. status-code - The status of the VPC peering connection (pending-acceptance | failed | expired | provisioning | active | deleting | deleted | rejected). status-message - A message that provides more information about the status of the VPC peering connection, if applicable. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. vpc-peering-connection-id - The ID of the VPC peering connection.
9463 */
9464 Filters?: FilterList;
9465 /**
9466 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9467 */
9468 DryRun?: Boolean;
9469 /**
9470 * One or more VPC peering connection IDs. Default: Describes all your VPC peering connections.
9471 */
9472 VpcPeeringConnectionIds?: ValueStringList;
9473 /**
9474 * The token for the next page of results.
9475 */
9476 NextToken?: String;
9477 /**
9478 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9479 */
9480 MaxResults?: DescribeVpcPeeringConnectionsMaxResults;
9481 }
9482 export interface DescribeVpcPeeringConnectionsResult {
9483 /**
9484 * Information about the VPC peering connections.
9485 */
9486 VpcPeeringConnections?: VpcPeeringConnectionList;
9487 /**
9488 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9489 */
9490 NextToken?: String;
9491 }
9492 export type DescribeVpcsMaxResults = number;
9493 export interface DescribeVpcsRequest {
9494 /**
9495 * One or more filters. cidr - The primary IPv4 CIDR block of the VPC. The CIDR block you specify must exactly match the VPC's CIDR block for information to be returned for the VPC. Must contain the slash followed by one or two digits (for example, /28). cidr-block-association.cidr-block - An IPv4 CIDR block associated with the VPC. cidr-block-association.association-id - The association ID for an IPv4 CIDR block associated with the VPC. cidr-block-association.state - The state of an IPv4 CIDR block associated with the VPC. dhcp-options-id - The ID of a set of DHCP options. ipv6-cidr-block-association.ipv6-cidr-block - An IPv6 CIDR block associated with the VPC. ipv6-cidr-block-association.association-id - The association ID for an IPv6 CIDR block associated with the VPC. ipv6-cidr-block-association.state - The state of an IPv6 CIDR block associated with the VPC. isDefault - Indicates whether the VPC is the default VPC. owner-id - The ID of the AWS account that owns the VPC. state - The state of the VPC (pending | available). tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. vpc-id - The ID of the VPC.
9496 */
9497 Filters?: FilterList;
9498 /**
9499 * One or more VPC IDs. Default: Describes all your VPCs.
9500 */
9501 VpcIds?: VpcIdStringList;
9502 /**
9503 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9504 */
9505 DryRun?: Boolean;
9506 /**
9507 * The token for the next page of results.
9508 */
9509 NextToken?: String;
9510 /**
9511 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
9512 */
9513 MaxResults?: DescribeVpcsMaxResults;
9514 }
9515 export interface DescribeVpcsResult {
9516 /**
9517 * Information about one or more VPCs.
9518 */
9519 Vpcs?: VpcList;
9520 /**
9521 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
9522 */
9523 NextToken?: String;
9524 }
9525 export interface DescribeVpnConnectionsRequest {
9526 /**
9527 * One or more filters. customer-gateway-configuration - The configuration information for the customer gateway. customer-gateway-id - The ID of a customer gateway associated with the VPN connection. state - The state of the VPN connection (pending | available | deleting | deleted). option.static-routes-only - Indicates whether the connection has static routes only. Used for devices that do not support Border Gateway Protocol (BGP). route.destination-cidr-block - The destination CIDR block. This corresponds to the subnet used in a customer data center. bgp-asn - The BGP Autonomous System Number (ASN) associated with a BGP device. tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. type - The type of VPN connection. Currently the only supported type is ipsec.1. vpn-connection-id - The ID of the VPN connection. vpn-gateway-id - The ID of a virtual private gateway associated with the VPN connection.
9528 */
9529 Filters?: FilterList;
9530 /**
9531 * One or more VPN connection IDs. Default: Describes your VPN connections.
9532 */
9533 VpnConnectionIds?: VpnConnectionIdStringList;
9534 /**
9535 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9536 */
9537 DryRun?: Boolean;
9538 }
9539 export interface DescribeVpnConnectionsResult {
9540 /**
9541 * Information about one or more VPN connections.
9542 */
9543 VpnConnections?: VpnConnectionList;
9544 }
9545 export interface DescribeVpnGatewaysRequest {
9546 /**
9547 * One or more filters. amazon-side-asn - The Autonomous System Number (ASN) for the Amazon side of the gateway. attachment.state - The current state of the attachment between the gateway and the VPC (attaching | attached | detaching | detached). attachment.vpc-id - The ID of an attached VPC. availability-zone - The Availability Zone for the virtual private gateway (if applicable). state - The state of the virtual private gateway (pending | available | deleting | deleted). tag:&lt;key&gt; - The key/value combination of a tag assigned to the resource. Use the tag key in the filter name and the tag value as the filter value. For example, to find all resources that have a tag with the key Owner and the value TeamA, specify tag:Owner for the filter name and TeamA for the filter value. tag-key - The key of a tag assigned to the resource. Use this filter to find all resources assigned a tag with a specific key, regardless of the tag value. type - The type of virtual private gateway. Currently the only supported type is ipsec.1. vpn-gateway-id - The ID of the virtual private gateway.
9548 */
9549 Filters?: FilterList;
9550 /**
9551 * One or more virtual private gateway IDs. Default: Describes all your virtual private gateways.
9552 */
9553 VpnGatewayIds?: VpnGatewayIdStringList;
9554 /**
9555 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9556 */
9557 DryRun?: Boolean;
9558 }
9559 export interface DescribeVpnGatewaysResult {
9560 /**
9561 * Information about one or more virtual private gateways.
9562 */
9563 VpnGateways?: VpnGatewayList;
9564 }
9565 export interface DetachClassicLinkVpcRequest {
9566 /**
9567 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9568 */
9569 DryRun?: Boolean;
9570 /**
9571 * The ID of the instance to unlink from the VPC.
9572 */
9573 InstanceId: String;
9574 /**
9575 * The ID of the VPC to which the instance is linked.
9576 */
9577 VpcId: String;
9578 }
9579 export interface DetachClassicLinkVpcResult {
9580 /**
9581 * Returns true if the request succeeds; otherwise, it returns an error.
9582 */
9583 Return?: Boolean;
9584 }
9585 export interface DetachInternetGatewayRequest {
9586 /**
9587 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9588 */
9589 DryRun?: Boolean;
9590 /**
9591 * The ID of the internet gateway.
9592 */
9593 InternetGatewayId: String;
9594 /**
9595 * The ID of the VPC.
9596 */
9597 VpcId: String;
9598 }
9599 export interface DetachNetworkInterfaceRequest {
9600 /**
9601 * The ID of the attachment.
9602 */
9603 AttachmentId: String;
9604 /**
9605 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9606 */
9607 DryRun?: Boolean;
9608 /**
9609 * Specifies whether to force a detachment.
9610 */
9611 Force?: Boolean;
9612 }
9613 export interface DetachVolumeRequest {
9614 /**
9615 * The device name.
9616 */
9617 Device?: String;
9618 /**
9619 * Forces detachment if the previous detachment attempt did not occur cleanly (for example, logging into an instance, unmounting the volume, and detaching normally). This option can lead to data loss or a corrupted file system. Use this option only as a last resort to detach a volume from a failed instance. The instance won't have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures.
9620 */
9621 Force?: Boolean;
9622 /**
9623 * The ID of the instance.
9624 */
9625 InstanceId?: String;
9626 /**
9627 * The ID of the volume.
9628 */
9629 VolumeId: String;
9630 /**
9631 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9632 */
9633 DryRun?: Boolean;
9634 }
9635 export interface DetachVpnGatewayRequest {
9636 /**
9637 * The ID of the VPC.
9638 */
9639 VpcId: String;
9640 /**
9641 * The ID of the virtual private gateway.
9642 */
9643 VpnGatewayId: String;
9644 /**
9645 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9646 */
9647 DryRun?: Boolean;
9648 }
9649 export type DeviceType = "ebs"|"instance-store"|string;
9650 export interface DhcpConfiguration {
9651 /**
9652 * The name of a DHCP option.
9653 */
9654 Key?: String;
9655 /**
9656 * One or more values for the DHCP option.
9657 */
9658 Values?: DhcpConfigurationValueList;
9659 }
9660 export type DhcpConfigurationList = DhcpConfiguration[];
9661 export type DhcpConfigurationValueList = AttributeValue[];
9662 export interface DhcpOptions {
9663 /**
9664 * One or more DHCP options in the set.
9665 */
9666 DhcpConfigurations?: DhcpConfigurationList;
9667 /**
9668 * The ID of the set of DHCP options.
9669 */
9670 DhcpOptionsId?: String;
9671 /**
9672 * The ID of the AWS account that owns the DHCP options set.
9673 */
9674 OwnerId?: String;
9675 /**
9676 * Any tags assigned to the DHCP options set.
9677 */
9678 Tags?: TagList;
9679 }
9680 export type DhcpOptionsIdStringList = String[];
9681 export type DhcpOptionsList = DhcpOptions[];
9682 export interface DirectoryServiceAuthentication {
9683 /**
9684 * The ID of the Active Directory used for authentication.
9685 */
9686 DirectoryId?: String;
9687 }
9688 export interface DirectoryServiceAuthenticationRequest {
9689 /**
9690 * The ID of the Active Directory to be used for authentication.
9691 */
9692 DirectoryId?: String;
9693 }
9694 export interface DisableTransitGatewayRouteTablePropagationRequest {
9695 /**
9696 * The ID of the propagation route table.
9697 */
9698 TransitGatewayRouteTableId: String;
9699 /**
9700 * The ID of the attachment.
9701 */
9702 TransitGatewayAttachmentId: String;
9703 /**
9704 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9705 */
9706 DryRun?: Boolean;
9707 }
9708 export interface DisableTransitGatewayRouteTablePropagationResult {
9709 /**
9710 * Information about route propagation.
9711 */
9712 Propagation?: TransitGatewayPropagation;
9713 }
9714 export interface DisableVgwRoutePropagationRequest {
9715 /**
9716 * The ID of the virtual private gateway.
9717 */
9718 GatewayId: String;
9719 /**
9720 * The ID of the route table.
9721 */
9722 RouteTableId: String;
9723 }
9724 export interface DisableVpcClassicLinkDnsSupportRequest {
9725 /**
9726 * The ID of the VPC.
9727 */
9728 VpcId?: String;
9729 }
9730 export interface DisableVpcClassicLinkDnsSupportResult {
9731 /**
9732 * Returns true if the request succeeds; otherwise, it returns an error.
9733 */
9734 Return?: Boolean;
9735 }
9736 export interface DisableVpcClassicLinkRequest {
9737 /**
9738 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9739 */
9740 DryRun?: Boolean;
9741 /**
9742 * The ID of the VPC.
9743 */
9744 VpcId: String;
9745 }
9746 export interface DisableVpcClassicLinkResult {
9747 /**
9748 * Returns true if the request succeeds; otherwise, it returns an error.
9749 */
9750 Return?: Boolean;
9751 }
9752 export interface DisassociateAddressRequest {
9753 /**
9754 * [EC2-VPC] The association ID. Required for EC2-VPC.
9755 */
9756 AssociationId?: String;
9757 /**
9758 * [EC2-Classic] The Elastic IP address. Required for EC2-Classic.
9759 */
9760 PublicIp?: String;
9761 /**
9762 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9763 */
9764 DryRun?: Boolean;
9765 }
9766 export interface DisassociateClientVpnTargetNetworkRequest {
9767 /**
9768 * The ID of the Client VPN endpoint from which to disassociate the target network.
9769 */
9770 ClientVpnEndpointId: String;
9771 /**
9772 * The ID of the target network association.
9773 */
9774 AssociationId: String;
9775 /**
9776 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9777 */
9778 DryRun?: Boolean;
9779 }
9780 export interface DisassociateClientVpnTargetNetworkResult {
9781 /**
9782 * The ID of the target network association.
9783 */
9784 AssociationId?: String;
9785 /**
9786 * The current state of the target network association.
9787 */
9788 Status?: AssociationStatus;
9789 }
9790 export interface DisassociateIamInstanceProfileRequest {
9791 /**
9792 * The ID of the IAM instance profile association.
9793 */
9794 AssociationId: String;
9795 }
9796 export interface DisassociateIamInstanceProfileResult {
9797 /**
9798 * Information about the IAM instance profile association.
9799 */
9800 IamInstanceProfileAssociation?: IamInstanceProfileAssociation;
9801 }
9802 export interface DisassociateRouteTableRequest {
9803 /**
9804 * The association ID representing the current association between the route table and subnet.
9805 */
9806 AssociationId: String;
9807 /**
9808 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9809 */
9810 DryRun?: Boolean;
9811 }
9812 export interface DisassociateSubnetCidrBlockRequest {
9813 /**
9814 * The association ID for the CIDR block.
9815 */
9816 AssociationId: String;
9817 }
9818 export interface DisassociateSubnetCidrBlockResult {
9819 /**
9820 * Information about the IPv6 CIDR block association.
9821 */
9822 Ipv6CidrBlockAssociation?: SubnetIpv6CidrBlockAssociation;
9823 /**
9824 * The ID of the subnet.
9825 */
9826 SubnetId?: String;
9827 }
9828 export interface DisassociateTransitGatewayRouteTableRequest {
9829 /**
9830 * The ID of the transit gateway route table.
9831 */
9832 TransitGatewayRouteTableId: String;
9833 /**
9834 * The ID of the attachment.
9835 */
9836 TransitGatewayAttachmentId: String;
9837 /**
9838 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
9839 */
9840 DryRun?: Boolean;
9841 }
9842 export interface DisassociateTransitGatewayRouteTableResult {
9843 /**
9844 * Information about the association.
9845 */
9846 Association?: TransitGatewayAssociation;
9847 }
9848 export interface DisassociateVpcCidrBlockRequest {
9849 /**
9850 * The association ID for the CIDR block.
9851 */
9852 AssociationId: String;
9853 }
9854 export interface DisassociateVpcCidrBlockResult {
9855 /**
9856 * Information about the IPv6 CIDR block association.
9857 */
9858 Ipv6CidrBlockAssociation?: VpcIpv6CidrBlockAssociation;
9859 /**
9860 * Information about the IPv4 CIDR block association.
9861 */
9862 CidrBlockAssociation?: VpcCidrBlockAssociation;
9863 /**
9864 * The ID of the VPC.
9865 */
9866 VpcId?: String;
9867 }
9868 export interface DiskImage {
9869 /**
9870 * A description of the disk image.
9871 */
9872 Description?: String;
9873 /**
9874 * Information about the disk image.
9875 */
9876 Image?: DiskImageDetail;
9877 /**
9878 * Information about the volume.
9879 */
9880 Volume?: VolumeDetail;
9881 }
9882 export interface DiskImageDescription {
9883 /**
9884 * The checksum computed for the disk image.
9885 */
9886 Checksum?: String;
9887 /**
9888 * The disk image format.
9889 */
9890 Format?: DiskImageFormat;
9891 /**
9892 * A presigned URL for the import manifest stored in Amazon S3. For information about creating a presigned URL for an Amazon S3 object, read the "Query String Request Authentication Alternative" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide. For information about the import manifest referenced by this API action, see VM Import Manifest.
9893 */
9894 ImportManifestUrl?: String;
9895 /**
9896 * The size of the disk image, in GiB.
9897 */
9898 Size?: Long;
9899 }
9900 export interface DiskImageDetail {
9901 /**
9902 * The size of the disk image, in GiB.
9903 */
9904 Bytes: Long;
9905 /**
9906 * The disk image format.
9907 */
9908 Format: DiskImageFormat;
9909 /**
9910 * A presigned URL for the import manifest stored in Amazon S3 and presented here as an Amazon S3 presigned URL. For information about creating a presigned URL for an Amazon S3 object, read the "Query String Request Authentication Alternative" section of the Authenticating REST Requests topic in the Amazon Simple Storage Service Developer Guide. For information about the import manifest referenced by this API action, see VM Import Manifest.
9911 */
9912 ImportManifestUrl: String;
9913 }
9914 export type DiskImageFormat = "VMDK"|"RAW"|"VHD"|string;
9915 export type DiskImageList = DiskImage[];
9916 export interface DiskImageVolumeDescription {
9917 /**
9918 * The volume identifier.
9919 */
9920 Id?: String;
9921 /**
9922 * The size of the volume, in GiB.
9923 */
9924 Size?: Long;
9925 }
9926 export interface DnsEntry {
9927 /**
9928 * The DNS name.
9929 */
9930 DnsName?: String;
9931 /**
9932 * The ID of the private hosted zone.
9933 */
9934 HostedZoneId?: String;
9935 }
9936 export type DnsEntrySet = DnsEntry[];
9937 export interface DnsServersOptionsModifyStructure {
9938 /**
9939 * The IPv4 address range, in CIDR notation, of the DNS servers to be used. You can specify up to two DNS servers. Ensure that the DNS servers can be reached by the clients. The specified values overwrite the existing values.
9940 */
9941 CustomDnsServers?: ValueStringList;
9942 /**
9943 * Indicates whether DNS servers should be used. Specify False to delete the existing DNS servers.
9944 */
9945 Enabled?: Boolean;
9946 }
9947 export type DnsSupportValue = "enable"|"disable"|string;
9948 export type DomainType = "vpc"|"standard"|string;
9949 export type Double = number;
9950 export interface EbsBlockDevice {
9951 /**
9952 * Indicates whether the EBS volume is deleted on instance termination.
9953 */
9954 DeleteOnTermination?: Boolean;
9955 /**
9956 * The number of I/O operations per second (IOPS) that the volume supports. For io1 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide. Constraints: Range is 100-16,000 IOPS for gp2 volumes and 100 to 64,000IOPS for io1 volumes, in most Regions. The maximum IOPS for io1 of 64,000 is guaranteed only on Nitro-based instances. Other instance families guarantee performance up to 32,000 IOPS. Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.
9957 */
9958 Iops?: Integer;
9959 /**
9960 * The ID of the snapshot.
9961 */
9962 SnapshotId?: String;
9963 /**
9964 * The size of the volume, in GiB. Constraints: 1-16384 for General Purpose SSD (gp2), 4-16384 for Provisioned IOPS SSD (io1), 500-16384 for Throughput Optimized HDD (st1), 500-16384 for Cold HDD (sc1), and 1-1024 for Magnetic (standard) volumes. If you specify a snapshot, the volume size must be equal to or larger than the snapshot size. Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
9965 */
9966 VolumeSize?: Integer;
9967 /**
9968 * The volume type: gp2, io1, st1, sc1, or standard. Default: standard
9969 */
9970 VolumeType?: VolumeType;
9971 /**
9972 * Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you cannot specify an encryption value. This is because only blank volumes can be encrypted on creation. If you are creating a snapshot from an existing EBS volume, you cannot specify an encryption value that differs from that of the EBS volume. We recommend that you omit the encryption value from the block device mappings when creating an image from an instance.
9973 */
9974 Encrypted?: Boolean;
9975 /**
9976 * Identifier (key ID, key alias, ID ARN, or alias ARN) for a user-managed CMK under which the EBS volume is encrypted. This parameter is only supported on BlockDeviceMapping objects called by RunInstances, RequestSpotFleet, and RequestSpotInstances.
9977 */
9978 KmsKeyId?: String;
9979 }
9980 export interface EbsInstanceBlockDevice {
9981 /**
9982 * The time stamp when the attachment initiated.
9983 */
9984 AttachTime?: DateTime;
9985 /**
9986 * Indicates whether the volume is deleted on instance termination.
9987 */
9988 DeleteOnTermination?: Boolean;
9989 /**
9990 * The attachment state.
9991 */
9992 Status?: AttachmentStatus;
9993 /**
9994 * The ID of the EBS volume.
9995 */
9996 VolumeId?: String;
9997 }
9998 export interface EbsInstanceBlockDeviceSpecification {
9999 /**
10000 * Indicates whether the volume is deleted on instance termination.
10001 */
10002 DeleteOnTermination?: Boolean;
10003 /**
10004 * The ID of the EBS volume.
10005 */
10006 VolumeId?: String;
10007 }
10008 export interface EgressOnlyInternetGateway {
10009 /**
10010 * Information about the attachment of the egress-only internet gateway.
10011 */
10012 Attachments?: InternetGatewayAttachmentList;
10013 /**
10014 * The ID of the egress-only internet gateway.
10015 */
10016 EgressOnlyInternetGatewayId?: EgressOnlyInternetGatewayId;
10017 }
10018 export type EgressOnlyInternetGatewayId = string;
10019 export type EgressOnlyInternetGatewayIdList = EgressOnlyInternetGatewayId[];
10020 export type EgressOnlyInternetGatewayList = EgressOnlyInternetGateway[];
10021 export interface ElasticGpuAssociation {
10022 /**
10023 * The ID of the Elastic Graphics accelerator.
10024 */
10025 ElasticGpuId?: String;
10026 /**
10027 * The ID of the association.
10028 */
10029 ElasticGpuAssociationId?: String;
10030 /**
10031 * The state of the association between the instance and the Elastic Graphics accelerator.
10032 */
10033 ElasticGpuAssociationState?: String;
10034 /**
10035 * The time the Elastic Graphics accelerator was associated with the instance.
10036 */
10037 ElasticGpuAssociationTime?: String;
10038 }
10039 export type ElasticGpuAssociationList = ElasticGpuAssociation[];
10040 export interface ElasticGpuHealth {
10041 /**
10042 * The health status.
10043 */
10044 Status?: ElasticGpuStatus;
10045 }
10046 export type ElasticGpuIdSet = String[];
10047 export type ElasticGpuSet = ElasticGpus[];
10048 export interface ElasticGpuSpecification {
10049 /**
10050 * The type of Elastic Graphics accelerator.
10051 */
10052 Type: String;
10053 }
10054 export type ElasticGpuSpecificationList = ElasticGpuSpecification[];
10055 export interface ElasticGpuSpecificationResponse {
10056 /**
10057 * The elastic GPU type.
10058 */
10059 Type?: String;
10060 }
10061 export type ElasticGpuSpecificationResponseList = ElasticGpuSpecificationResponse[];
10062 export type ElasticGpuSpecifications = ElasticGpuSpecification[];
10063 export type ElasticGpuState = "ATTACHED"|string;
10064 export type ElasticGpuStatus = "OK"|"IMPAIRED"|string;
10065 export interface ElasticGpus {
10066 /**
10067 * The ID of the Elastic Graphics accelerator.
10068 */
10069 ElasticGpuId?: String;
10070 /**
10071 * The Availability Zone in the which the Elastic Graphics accelerator resides.
10072 */
10073 AvailabilityZone?: String;
10074 /**
10075 * The type of Elastic Graphics accelerator.
10076 */
10077 ElasticGpuType?: String;
10078 /**
10079 * The status of the Elastic Graphics accelerator.
10080 */
10081 ElasticGpuHealth?: ElasticGpuHealth;
10082 /**
10083 * The state of the Elastic Graphics accelerator.
10084 */
10085 ElasticGpuState?: ElasticGpuState;
10086 /**
10087 * The ID of the instance to which the Elastic Graphics accelerator is attached.
10088 */
10089 InstanceId?: String;
10090 }
10091 export interface ElasticInferenceAccelerator {
10092 /**
10093 * The type of elastic inference accelerator. The possible values are eia1.small, eia1.medium, and eia1.large.
10094 */
10095 Type: String;
10096 }
10097 export interface ElasticInferenceAcceleratorAssociation {
10098 /**
10099 * The Amazon Resource Name (ARN) of the elastic inference accelerator.
10100 */
10101 ElasticInferenceAcceleratorArn?: String;
10102 /**
10103 * The ID of the association.
10104 */
10105 ElasticInferenceAcceleratorAssociationId?: String;
10106 /**
10107 * The state of the elastic inference accelerator.
10108 */
10109 ElasticInferenceAcceleratorAssociationState?: String;
10110 /**
10111 * The time at which the elastic inference accelerator is associated with an instance.
10112 */
10113 ElasticInferenceAcceleratorAssociationTime?: DateTime;
10114 }
10115 export type ElasticInferenceAcceleratorAssociationList = ElasticInferenceAcceleratorAssociation[];
10116 export type ElasticInferenceAccelerators = ElasticInferenceAccelerator[];
10117 export interface EnableTransitGatewayRouteTablePropagationRequest {
10118 /**
10119 * The ID of the propagation route table.
10120 */
10121 TransitGatewayRouteTableId: String;
10122 /**
10123 * The ID of the attachment.
10124 */
10125 TransitGatewayAttachmentId: String;
10126 /**
10127 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10128 */
10129 DryRun?: Boolean;
10130 }
10131 export interface EnableTransitGatewayRouteTablePropagationResult {
10132 /**
10133 * Information about route propagation.
10134 */
10135 Propagation?: TransitGatewayPropagation;
10136 }
10137 export interface EnableVgwRoutePropagationRequest {
10138 /**
10139 * The ID of the virtual private gateway.
10140 */
10141 GatewayId: String;
10142 /**
10143 * The ID of the route table.
10144 */
10145 RouteTableId: String;
10146 }
10147 export interface EnableVolumeIORequest {
10148 /**
10149 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10150 */
10151 DryRun?: Boolean;
10152 /**
10153 * The ID of the volume.
10154 */
10155 VolumeId: String;
10156 }
10157 export interface EnableVpcClassicLinkDnsSupportRequest {
10158 /**
10159 * The ID of the VPC.
10160 */
10161 VpcId?: String;
10162 }
10163 export interface EnableVpcClassicLinkDnsSupportResult {
10164 /**
10165 * Returns true if the request succeeds; otherwise, it returns an error.
10166 */
10167 Return?: Boolean;
10168 }
10169 export interface EnableVpcClassicLinkRequest {
10170 /**
10171 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10172 */
10173 DryRun?: Boolean;
10174 /**
10175 * The ID of the VPC.
10176 */
10177 VpcId: String;
10178 }
10179 export interface EnableVpcClassicLinkResult {
10180 /**
10181 * Returns true if the request succeeds; otherwise, it returns an error.
10182 */
10183 Return?: Boolean;
10184 }
10185 export type EndDateType = "unlimited"|"limited"|string;
10186 export type EndpointSet = ClientVpnEndpoint[];
10187 export type EventCode = "instance-reboot"|"system-reboot"|"system-maintenance"|"instance-retirement"|"instance-stop"|string;
10188 export interface EventInformation {
10189 /**
10190 * The description of the event.
10191 */
10192 EventDescription?: String;
10193 /**
10194 * The event. The following are the error events: iamFleetRoleInvalid - The Spot Fleet did not have the required permissions either to launch or terminate an instance. spotFleetRequestConfigurationInvalid - The configuration is not valid. For more information, see the description of the event. spotInstanceCountLimitExceeded - You've reached the limit on the number of Spot Instances that you can launch. The following are the fleetRequestChange events: active - The Spot Fleet has been validated and Amazon EC2 is attempting to maintain the target number of running Spot Instances. cancelled - The Spot Fleet is canceled and has no running Spot Instances. The Spot Fleet will be deleted two days after its instances were terminated. cancelled_running - The Spot Fleet is canceled and does not launch additional Spot Instances. Existing Spot Instances continue to run until they are interrupted or terminated. cancelled_terminating - The Spot Fleet is canceled and its Spot Instances are terminating. expired - The Spot Fleet request has expired. A subsequent event indicates that the instances were terminated, if the request was created with TerminateInstancesWithExpiration set. modify_in_progress - A request to modify the Spot Fleet request was accepted and is in progress. modify_successful - The Spot Fleet request was modified. price_update - The price for a launch configuration was adjusted because it was too high. This change is permanent. submitted - The Spot Fleet request is being evaluated and Amazon EC2 is preparing to launch the target number of Spot Instances. The following are the instanceChange events: launched - A request was fulfilled and a new instance was launched. terminated - An instance was terminated by the user. The following are the Information events: launchSpecTemporarilyBlacklisted - The configuration is not valid and several attempts to launch instances have failed. For more information, see the description of the event. launchSpecUnusable - The price in a launch specification is not valid because it is below the Spot price or the Spot price is above the On-Demand price. fleetProgressHalted - The price in every launch specification is not valid. A launch specification might become valid if the Spot price changes.
10195 */
10196 EventSubType?: String;
10197 /**
10198 * The ID of the instance. This information is available only for instanceChange events.
10199 */
10200 InstanceId?: String;
10201 }
10202 export type EventType = "instanceChange"|"fleetRequestChange"|"error"|string;
10203 export type ExcessCapacityTerminationPolicy = "noTermination"|"default"|string;
10204 export type ExecutableByStringList = String[];
10205 export interface ExportClientVpnClientCertificateRevocationListRequest {
10206 /**
10207 * The ID of the Client VPN endpoint.
10208 */
10209 ClientVpnEndpointId: String;
10210 /**
10211 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10212 */
10213 DryRun?: Boolean;
10214 }
10215 export interface ExportClientVpnClientCertificateRevocationListResult {
10216 /**
10217 * Information about the client certificate revocation list.
10218 */
10219 CertificateRevocationList?: String;
10220 /**
10221 * The current state of the client certificate revocation list.
10222 */
10223 Status?: ClientCertificateRevocationListStatus;
10224 }
10225 export interface ExportClientVpnClientConfigurationRequest {
10226 /**
10227 * The ID of the Client VPN endpoint.
10228 */
10229 ClientVpnEndpointId: String;
10230 /**
10231 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10232 */
10233 DryRun?: Boolean;
10234 }
10235 export interface ExportClientVpnClientConfigurationResult {
10236 /**
10237 * The contents of the Client VPN endpoint configuration file.
10238 */
10239 ClientConfiguration?: String;
10240 }
10241 export type ExportEnvironment = "citrix"|"vmware"|"microsoft"|string;
10242 export interface ExportTask {
10243 /**
10244 * A description of the resource being exported.
10245 */
10246 Description?: String;
10247 /**
10248 * The ID of the export task.
10249 */
10250 ExportTaskId?: String;
10251 /**
10252 * Information about the export task.
10253 */
10254 ExportToS3Task?: ExportToS3Task;
10255 /**
10256 * Information about the instance to export.
10257 */
10258 InstanceExportDetails?: InstanceExportDetails;
10259 /**
10260 * The state of the export task.
10261 */
10262 State?: ExportTaskState;
10263 /**
10264 * The status message related to the export task.
10265 */
10266 StatusMessage?: String;
10267 }
10268 export type ExportTaskIdStringList = String[];
10269 export type ExportTaskList = ExportTask[];
10270 export type ExportTaskState = "active"|"cancelling"|"cancelled"|"completed"|string;
10271 export interface ExportToS3Task {
10272 /**
10273 * The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.
10274 */
10275 ContainerFormat?: ContainerFormat;
10276 /**
10277 * The format for the exported image.
10278 */
10279 DiskImageFormat?: DiskImageFormat;
10280 /**
10281 * The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.
10282 */
10283 S3Bucket?: String;
10284 /**
10285 * The encryption key for your S3 bucket.
10286 */
10287 S3Key?: String;
10288 }
10289 export interface ExportToS3TaskSpecification {
10290 /**
10291 * The container format used to combine disk images with metadata (such as OVF). If absent, only the disk image is exported.
10292 */
10293 ContainerFormat?: ContainerFormat;
10294 /**
10295 * The format for the exported image.
10296 */
10297 DiskImageFormat?: DiskImageFormat;
10298 /**
10299 * The S3 bucket for the destination image. The destination bucket must exist and grant WRITE and READ_ACP permissions to the AWS account vm-import-export@amazon.com.
10300 */
10301 S3Bucket?: String;
10302 /**
10303 * The image is written to a single object in the S3 bucket at the S3 key s3prefix + exportTaskId + '.' + diskImageFormat.
10304 */
10305 S3Prefix?: String;
10306 }
10307 export interface ExportTransitGatewayRoutesRequest {
10308 /**
10309 * The ID of the route table.
10310 */
10311 TransitGatewayRouteTableId: String;
10312 /**
10313 * One or more filters. The possible values are: attachment.transit-gateway-attachment-id- The id of the transit gateway attachment. attachment.resource-id - The resource id of the transit gateway attachment. route-search.exact-match - The exact match of the specified filter. route-search.longest-prefix-match - The longest prefix that matches the route. route-search.subnet-of-match - The routes with a subnet that match the specified CIDR filter. route-search.supernet-of-match - The routes with a CIDR that encompass the CIDR filter. For example, if you have 10.0.1.0/29 and 10.0.1.0/31 routes in your route table and you specify supernet-of-match as 10.0.1.0/30, then the result returns 10.0.1.0/29. state - The state of the attachment (available | deleted | deleting | failed | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting). transit-gateway-route-destination-cidr-block - The CIDR range. type - The type of roue (active | blackhole).
10314 */
10315 Filters?: FilterList;
10316 /**
10317 * The name of the S3 bucket.
10318 */
10319 S3Bucket: String;
10320 /**
10321 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10322 */
10323 DryRun?: Boolean;
10324 }
10325 export interface ExportTransitGatewayRoutesResult {
10326 /**
10327 * The URL of the exported file in Amazon S3. For example, s3://bucket_name/VPCTransitGateway/TransitGatewayRouteTables/file_name.
10328 */
10329 S3Location?: String;
10330 }
10331 export interface Filter {
10332 /**
10333 * The name of the filter. Filter names are case-sensitive.
10334 */
10335 Name?: String;
10336 /**
10337 * One or more filter values. Filter values are case-sensitive.
10338 */
10339 Values?: ValueStringList;
10340 }
10341 export type FilterList = Filter[];
10342 export type FleetActivityStatus = "error"|"pending-fulfillment"|"pending-termination"|"fulfilled"|string;
10343 export interface FleetData {
10344 /**
10345 * The progress of the EC2 Fleet. If there is an error, the status is error. After all requests are placed, the status is pending_fulfillment. If the size of the EC2 Fleet is equal to or greater than its target capacity, the status is fulfilled. If the size of the EC2 Fleet is decreased, the status is pending_termination while instances are terminating.
10346 */
10347 ActivityStatus?: FleetActivityStatus;
10348 /**
10349 * The creation date and time of the EC2 Fleet.
10350 */
10351 CreateTime?: DateTime;
10352 /**
10353 * The ID of the EC2 Fleet.
10354 */
10355 FleetId?: FleetIdentifier;
10356 /**
10357 * The state of the EC2 Fleet.
10358 */
10359 FleetState?: FleetStateCode;
10360 /**
10361 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraints: Maximum 64 ASCII characters
10362 */
10363 ClientToken?: String;
10364 /**
10365 * Indicates whether running instances should be terminated if the target capacity of the EC2 Fleet is decreased below the current size of the EC2 Fleet.
10366 */
10367 ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy;
10368 /**
10369 * The number of units fulfilled by this request compared to the set target capacity.
10370 */
10371 FulfilledCapacity?: Double;
10372 /**
10373 * The number of units fulfilled by this request compared to the set target On-Demand capacity.
10374 */
10375 FulfilledOnDemandCapacity?: Double;
10376 /**
10377 * The launch template and overrides.
10378 */
10379 LaunchTemplateConfigs?: FleetLaunchTemplateConfigList;
10380 /**
10381 * The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.
10382 */
10383 TargetCapacitySpecification?: TargetCapacitySpecification;
10384 /**
10385 * Indicates whether running instances should be terminated when the EC2 Fleet expires.
10386 */
10387 TerminateInstancesWithExpiration?: Boolean;
10388 /**
10389 * The type of request. Indicates whether the EC2 Fleet only requests the target capacity, or also attempts to maintain it. If you request a certain target capacity, EC2 Fleet only places the required requests; it does not attempt to replenish instances if capacity is diminished, and does not submit requests in alternative capacity pools if capacity is unavailable. To maintain a certain target capacity, EC2 Fleet places the required requests to meet this target capacity. It also automatically replenishes any interrupted Spot Instances. Default: maintain.
10390 */
10391 Type?: FleetType;
10392 /**
10393 * The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
10394 */
10395 ValidFrom?: DateTime;
10396 /**
10397 * The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new instance requests are placed or able to fulfill the request. The default end date is 7 days from the current date.
10398 */
10399 ValidUntil?: DateTime;
10400 /**
10401 * Indicates whether EC2 Fleet should replace unhealthy instances.
10402 */
10403 ReplaceUnhealthyInstances?: Boolean;
10404 /**
10405 * The configuration of Spot Instances in an EC2 Fleet.
10406 */
10407 SpotOptions?: SpotOptions;
10408 /**
10409 * The allocation strategy of On-Demand Instances in an EC2 Fleet.
10410 */
10411 OnDemandOptions?: OnDemandOptions;
10412 /**
10413 * The tags for an EC2 Fleet resource.
10414 */
10415 Tags?: TagList;
10416 /**
10417 * Information about the instances that could not be launched by the fleet. Valid only when Type is set to instant.
10418 */
10419 Errors?: DescribeFleetsErrorSet;
10420 /**
10421 * Information about the instances that were launched by the fleet. Valid only when Type is set to instant.
10422 */
10423 Instances?: DescribeFleetsInstancesSet;
10424 }
10425 export type FleetEventType = "instance-change"|"fleet-change"|"service-error"|string;
10426 export type FleetExcessCapacityTerminationPolicy = "no-termination"|"termination"|string;
10427 export type FleetIdSet = FleetIdentifier[];
10428 export type FleetIdentifier = string;
10429 export interface FleetLaunchTemplateConfig {
10430 /**
10431 * The launch template.
10432 */
10433 LaunchTemplateSpecification?: FleetLaunchTemplateSpecification;
10434 /**
10435 * Any parameters that you specify override the same parameters in the launch template.
10436 */
10437 Overrides?: FleetLaunchTemplateOverridesList;
10438 }
10439 export type FleetLaunchTemplateConfigList = FleetLaunchTemplateConfig[];
10440 export type FleetLaunchTemplateConfigListRequest = FleetLaunchTemplateConfigRequest[];
10441 export interface FleetLaunchTemplateConfigRequest {
10442 /**
10443 * The launch template to use. You must specify either the launch template ID or launch template name in the request.
10444 */
10445 LaunchTemplateSpecification?: FleetLaunchTemplateSpecificationRequest;
10446 /**
10447 * Any parameters that you specify override the same parameters in the launch template.
10448 */
10449 Overrides?: FleetLaunchTemplateOverridesListRequest;
10450 }
10451 export interface FleetLaunchTemplateOverrides {
10452 /**
10453 * The instance type.
10454 */
10455 InstanceType?: InstanceType;
10456 /**
10457 * The maximum price per unit hour that you are willing to pay for a Spot Instance.
10458 */
10459 MaxPrice?: String;
10460 /**
10461 * The ID of the subnet in which to launch the instances.
10462 */
10463 SubnetId?: String;
10464 /**
10465 * The Availability Zone in which to launch the instances.
10466 */
10467 AvailabilityZone?: String;
10468 /**
10469 * The number of units provided by the specified instance type.
10470 */
10471 WeightedCapacity?: Double;
10472 /**
10473 * The priority for the launch template override. If AllocationStrategy is set to prioritized, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity. The highest priority is launched first. Valid values are whole numbers starting at 0. The lower the number, the higher the priority. If no number is set, the override has the lowest priority.
10474 */
10475 Priority?: Double;
10476 /**
10477 * The location where the instance launched, if applicable.
10478 */
10479 Placement?: PlacementResponse;
10480 }
10481 export type FleetLaunchTemplateOverridesList = FleetLaunchTemplateOverrides[];
10482 export type FleetLaunchTemplateOverridesListRequest = FleetLaunchTemplateOverridesRequest[];
10483 export interface FleetLaunchTemplateOverridesRequest {
10484 /**
10485 * The instance type.
10486 */
10487 InstanceType?: InstanceType;
10488 /**
10489 * The maximum price per unit hour that you are willing to pay for a Spot Instance.
10490 */
10491 MaxPrice?: String;
10492 /**
10493 * The ID of the subnet in which to launch the instances.
10494 */
10495 SubnetId?: String;
10496 /**
10497 * The Availability Zone in which to launch the instances.
10498 */
10499 AvailabilityZone?: String;
10500 /**
10501 * The number of units provided by the specified instance type.
10502 */
10503 WeightedCapacity?: Double;
10504 /**
10505 * The priority for the launch template override. If AllocationStrategy is set to prioritized, EC2 Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity. The highest priority is launched first. Valid values are whole numbers starting at 0. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority.
10506 */
10507 Priority?: Double;
10508 /**
10509 * The location where the instance launched, if applicable.
10510 */
10511 Placement?: Placement;
10512 }
10513 export interface FleetLaunchTemplateSpecification {
10514 /**
10515 * The ID of the launch template. You must specify either a template ID or a template name.
10516 */
10517 LaunchTemplateId?: String;
10518 /**
10519 * The name of the launch template. You must specify either a template name or a template ID.
10520 */
10521 LaunchTemplateName?: LaunchTemplateName;
10522 /**
10523 * The version number of the launch template. You must specify a version number.
10524 */
10525 Version?: String;
10526 }
10527 export interface FleetLaunchTemplateSpecificationRequest {
10528 /**
10529 * The ID of the launch template.
10530 */
10531 LaunchTemplateId?: String;
10532 /**
10533 * The name of the launch template.
10534 */
10535 LaunchTemplateName?: LaunchTemplateName;
10536 /**
10537 * The version number of the launch template.
10538 */
10539 Version?: String;
10540 }
10541 export type FleetOnDemandAllocationStrategy = "lowest-price"|"prioritized"|string;
10542 export type FleetSet = FleetData[];
10543 export type FleetStateCode = "submitted"|"active"|"deleted"|"failed"|"deleted-running"|"deleted-terminating"|"modifying"|string;
10544 export type FleetType = "request"|"maintain"|"instant"|string;
10545 export type Float = number;
10546 export interface FlowLog {
10547 /**
10548 * The date and time the flow log was created.
10549 */
10550 CreationTime?: DateTime;
10551 /**
10552 * Information about the error that occurred. Rate limited indicates that CloudWatch Logs throttling has been applied for one or more network interfaces, or that you've reached the limit on the number of log groups that you can create. Access error indicates that the IAM role associated with the flow log does not have sufficient permissions to publish to CloudWatch Logs. Unknown error indicates an internal error.
10553 */
10554 DeliverLogsErrorMessage?: String;
10555 /**
10556 * The ARN of the IAM role that posts logs to CloudWatch Logs.
10557 */
10558 DeliverLogsPermissionArn?: String;
10559 /**
10560 * The status of the logs delivery (SUCCESS | FAILED).
10561 */
10562 DeliverLogsStatus?: String;
10563 /**
10564 * The flow log ID.
10565 */
10566 FlowLogId?: String;
10567 /**
10568 * The status of the flow log (ACTIVE).
10569 */
10570 FlowLogStatus?: String;
10571 /**
10572 * The name of the flow log group.
10573 */
10574 LogGroupName?: String;
10575 /**
10576 * The ID of the resource on which the flow log was created.
10577 */
10578 ResourceId?: String;
10579 /**
10580 * The type of traffic captured for the flow log.
10581 */
10582 TrafficType?: TrafficType;
10583 /**
10584 * Specifies the type of destination to which the flow log data is published. Flow log data can be published to CloudWatch Logs or Amazon S3.
10585 */
10586 LogDestinationType?: LogDestinationType;
10587 /**
10588 * Specifies the destination to which the flow log data is published. Flow log data can be published to an CloudWatch Logs log group or an Amazon S3 bucket. If the flow log publishes to CloudWatch Logs, this element indicates the Amazon Resource Name (ARN) of the CloudWatch Logs log group to which the data is published. If the flow log publishes to Amazon S3, this element indicates the ARN of the Amazon S3 bucket to which the data is published.
10589 */
10590 LogDestination?: String;
10591 }
10592 export type FlowLogSet = FlowLog[];
10593 export type FlowLogsResourceType = "VPC"|"Subnet"|"NetworkInterface"|string;
10594 export interface FpgaImage {
10595 /**
10596 * The FPGA image identifier (AFI ID).
10597 */
10598 FpgaImageId?: String;
10599 /**
10600 * The global FPGA image identifier (AGFI ID).
10601 */
10602 FpgaImageGlobalId?: String;
10603 /**
10604 * The name of the AFI.
10605 */
10606 Name?: String;
10607 /**
10608 * The description of the AFI.
10609 */
10610 Description?: String;
10611 /**
10612 * The version of the AWS Shell that was used to create the bitstream.
10613 */
10614 ShellVersion?: String;
10615 /**
10616 * Information about the PCI bus.
10617 */
10618 PciId?: PciId;
10619 /**
10620 * Information about the state of the AFI.
10621 */
10622 State?: FpgaImageState;
10623 /**
10624 * The date and time the AFI was created.
10625 */
10626 CreateTime?: DateTime;
10627 /**
10628 * The time of the most recent update to the AFI.
10629 */
10630 UpdateTime?: DateTime;
10631 /**
10632 * The AWS account ID of the AFI owner.
10633 */
10634 OwnerId?: String;
10635 /**
10636 * The alias of the AFI owner. Possible values include self, amazon, and aws-marketplace.
10637 */
10638 OwnerAlias?: String;
10639 /**
10640 * The product codes for the AFI.
10641 */
10642 ProductCodes?: ProductCodeList;
10643 /**
10644 * Any tags assigned to the AFI.
10645 */
10646 Tags?: TagList;
10647 /**
10648 * Indicates whether the AFI is public.
10649 */
10650 Public?: Boolean;
10651 /**
10652 * Indicates whether data retention support is enabled for the AFI.
10653 */
10654 DataRetentionSupport?: Boolean;
10655 }
10656 export interface FpgaImageAttribute {
10657 /**
10658 * The ID of the AFI.
10659 */
10660 FpgaImageId?: String;
10661 /**
10662 * The name of the AFI.
10663 */
10664 Name?: String;
10665 /**
10666 * The description of the AFI.
10667 */
10668 Description?: String;
10669 /**
10670 * One or more load permissions.
10671 */
10672 LoadPermissions?: LoadPermissionList;
10673 /**
10674 * One or more product codes.
10675 */
10676 ProductCodes?: ProductCodeList;
10677 }
10678 export type FpgaImageAttributeName = "description"|"name"|"loadPermission"|"productCodes"|string;
10679 export type FpgaImageIdList = String[];
10680 export type FpgaImageList = FpgaImage[];
10681 export interface FpgaImageState {
10682 /**
10683 * The state. The following are the possible values: pending - AFI bitstream generation is in progress. available - The AFI is available for use. failed - AFI bitstream generation failed. unavailable - The AFI is no longer available for use.
10684 */
10685 Code?: FpgaImageStateCode;
10686 /**
10687 * If the state is failed, this is the error message.
10688 */
10689 Message?: String;
10690 }
10691 export type FpgaImageStateCode = "pending"|"failed"|"available"|"unavailable"|string;
10692 export type GatewayType = "ipsec.1"|string;
10693 export interface GetConsoleOutputRequest {
10694 /**
10695 * The ID of the instance.
10696 */
10697 InstanceId: String;
10698 /**
10699 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10700 */
10701 DryRun?: Boolean;
10702 /**
10703 * When enabled, retrieves the latest console output for the instance. Default: disabled (false)
10704 */
10705 Latest?: Boolean;
10706 }
10707 export interface GetConsoleOutputResult {
10708 /**
10709 * The ID of the instance.
10710 */
10711 InstanceId?: String;
10712 /**
10713 * The console output, base64-encoded. If you are using a command line tool, the tool decodes the output for you.
10714 */
10715 Output?: String;
10716 /**
10717 * The time at which the output was last updated.
10718 */
10719 Timestamp?: DateTime;
10720 }
10721 export interface GetConsoleScreenshotRequest {
10722 /**
10723 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10724 */
10725 DryRun?: Boolean;
10726 /**
10727 * The ID of the instance.
10728 */
10729 InstanceId: String;
10730 /**
10731 * When set to true, acts as keystroke input and wakes up an instance that's in standby or "sleep" mode.
10732 */
10733 WakeUp?: Boolean;
10734 }
10735 export interface GetConsoleScreenshotResult {
10736 /**
10737 * The data that comprises the image.
10738 */
10739 ImageData?: String;
10740 /**
10741 * The ID of the instance.
10742 */
10743 InstanceId?: String;
10744 }
10745 export interface GetHostReservationPurchasePreviewRequest {
10746 /**
10747 * The IDs of the Dedicated Hosts with which the reservation is associated.
10748 */
10749 HostIdSet: RequestHostIdSet;
10750 /**
10751 * The offering ID of the reservation.
10752 */
10753 OfferingId: String;
10754 }
10755 export interface GetHostReservationPurchasePreviewResult {
10756 /**
10757 * The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.
10758 */
10759 CurrencyCode?: CurrencyCodeValues;
10760 /**
10761 * The purchase information of the Dedicated Host reservation and the Dedicated Hosts associated with it.
10762 */
10763 Purchase?: PurchaseSet;
10764 /**
10765 * The potential total hourly price of the reservation per hour.
10766 */
10767 TotalHourlyPrice?: String;
10768 /**
10769 * The potential total upfront price. This is billed immediately.
10770 */
10771 TotalUpfrontPrice?: String;
10772 }
10773 export interface GetLaunchTemplateDataRequest {
10774 /**
10775 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10776 */
10777 DryRun?: Boolean;
10778 /**
10779 * The ID of the instance.
10780 */
10781 InstanceId: String;
10782 }
10783 export interface GetLaunchTemplateDataResult {
10784 /**
10785 * The instance data.
10786 */
10787 LaunchTemplateData?: ResponseLaunchTemplateData;
10788 }
10789 export interface GetPasswordDataRequest {
10790 /**
10791 * The ID of the Windows instance.
10792 */
10793 InstanceId: String;
10794 /**
10795 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10796 */
10797 DryRun?: Boolean;
10798 }
10799 export interface GetPasswordDataResult {
10800 /**
10801 * The ID of the Windows instance.
10802 */
10803 InstanceId?: String;
10804 /**
10805 * The password of the instance. Returns an empty string if the password is not available.
10806 */
10807 PasswordData?: String;
10808 /**
10809 * The time the data was last updated.
10810 */
10811 Timestamp?: DateTime;
10812 }
10813 export interface GetReservedInstancesExchangeQuoteRequest {
10814 /**
10815 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10816 */
10817 DryRun?: Boolean;
10818 /**
10819 * The IDs of the Convertible Reserved Instances to exchange.
10820 */
10821 ReservedInstanceIds: ReservedInstanceIdSet;
10822 /**
10823 * The configuration of the target Convertible Reserved Instance to exchange for your current Convertible Reserved Instances.
10824 */
10825 TargetConfigurations?: TargetConfigurationRequestSet;
10826 }
10827 export interface GetReservedInstancesExchangeQuoteResult {
10828 /**
10829 * The currency of the transaction.
10830 */
10831 CurrencyCode?: String;
10832 /**
10833 * If true, the exchange is valid. If false, the exchange cannot be completed.
10834 */
10835 IsValidExchange?: Boolean;
10836 /**
10837 * The new end date of the reservation term.
10838 */
10839 OutputReservedInstancesWillExpireAt?: DateTime;
10840 /**
10841 * The total true upfront charge for the exchange.
10842 */
10843 PaymentDue?: String;
10844 /**
10845 * The cost associated with the Reserved Instance.
10846 */
10847 ReservedInstanceValueRollup?: ReservationValue;
10848 /**
10849 * The configuration of your Convertible Reserved Instances.
10850 */
10851 ReservedInstanceValueSet?: ReservedInstanceReservationValueSet;
10852 /**
10853 * The cost associated with the Reserved Instance.
10854 */
10855 TargetConfigurationValueRollup?: ReservationValue;
10856 /**
10857 * The values of the target Convertible Reserved Instances.
10858 */
10859 TargetConfigurationValueSet?: TargetReservationValueSet;
10860 /**
10861 * Describes the reason why the exchange cannot be completed.
10862 */
10863 ValidationFailureReason?: String;
10864 }
10865 export interface GetTransitGatewayAttachmentPropagationsRequest {
10866 /**
10867 * The ID of the attachment.
10868 */
10869 TransitGatewayAttachmentId: String;
10870 /**
10871 * One or more filters. The possible values are: transit-gateway-route-table-id - The ID of the transit gateway route table.
10872 */
10873 Filters?: FilterList;
10874 /**
10875 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10876 */
10877 MaxResults?: TransitGatewayMaxResults;
10878 /**
10879 * The token for the next page of results.
10880 */
10881 NextToken?: String;
10882 /**
10883 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10884 */
10885 DryRun?: Boolean;
10886 }
10887 export interface GetTransitGatewayAttachmentPropagationsResult {
10888 /**
10889 * Information about the propagation route tables.
10890 */
10891 TransitGatewayAttachmentPropagations?: TransitGatewayAttachmentPropagationList;
10892 /**
10893 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10894 */
10895 NextToken?: String;
10896 }
10897 export interface GetTransitGatewayRouteTableAssociationsRequest {
10898 /**
10899 * The ID of the transit gateway route table.
10900 */
10901 TransitGatewayRouteTableId: String;
10902 /**
10903 * One or more filters. The possible values are: resource-id - The ID of the resource. resource-type - The resource type (vpc | vpn). transit-gateway-attachment-id - The ID of the attachment.
10904 */
10905 Filters?: FilterList;
10906 /**
10907 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10908 */
10909 MaxResults?: TransitGatewayMaxResults;
10910 /**
10911 * The token for the next page of results.
10912 */
10913 NextToken?: String;
10914 /**
10915 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10916 */
10917 DryRun?: Boolean;
10918 }
10919 export interface GetTransitGatewayRouteTableAssociationsResult {
10920 /**
10921 * Information about the associations.
10922 */
10923 Associations?: TransitGatewayRouteTableAssociationList;
10924 /**
10925 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10926 */
10927 NextToken?: String;
10928 }
10929 export interface GetTransitGatewayRouteTablePropagationsRequest {
10930 /**
10931 * The ID of the transit gateway route table.
10932 */
10933 TransitGatewayRouteTableId: String;
10934 /**
10935 * One or more filters. The possible values are: resource-id - The ID of the resource. resource-type - The resource type (vpc | vpn). transit-gateway-attachment-id - The ID of the attachment.
10936 */
10937 Filters?: FilterList;
10938 /**
10939 * The maximum number of results to return with a single call. To retrieve the remaining results, make another call with the returned nextToken value.
10940 */
10941 MaxResults?: TransitGatewayMaxResults;
10942 /**
10943 * The token for the next page of results.
10944 */
10945 NextToken?: String;
10946 /**
10947 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
10948 */
10949 DryRun?: Boolean;
10950 }
10951 export interface GetTransitGatewayRouteTablePropagationsResult {
10952 /**
10953 * Information about the route table propagations.
10954 */
10955 TransitGatewayRouteTablePropagations?: TransitGatewayRouteTablePropagationList;
10956 /**
10957 * The token to use to retrieve the next page of results. This value is null when there are no more results to return.
10958 */
10959 NextToken?: String;
10960 }
10961 export type GroupIdStringList = String[];
10962 export interface GroupIdentifier {
10963 /**
10964 * The name of the security group.
10965 */
10966 GroupName?: String;
10967 /**
10968 * The ID of the security group.
10969 */
10970 GroupId?: String;
10971 }
10972 export type GroupIdentifierList = GroupIdentifier[];
10973 export type GroupIdentifierSet = SecurityGroupIdentifier[];
10974 export type GroupIds = String[];
10975 export type GroupNameStringList = String[];
10976 export interface HibernationOptions {
10977 /**
10978 * If this parameter is set to true, your instance is enabled for hibernation; otherwise, it is not enabled for hibernation.
10979 */
10980 Configured?: Boolean;
10981 }
10982 export interface HibernationOptionsRequest {
10983 /**
10984 * If you set this parameter to true, your instance is enabled for hibernation. Default: false
10985 */
10986 Configured?: Boolean;
10987 }
10988 export interface HistoryRecord {
10989 /**
10990 * Information about the event.
10991 */
10992 EventInformation?: EventInformation;
10993 /**
10994 * The event type. error - An error with the Spot Fleet request. fleetRequestChange - A change in the status or configuration of the Spot Fleet request. instanceChange - An instance was launched or terminated. Information - An informational event.
10995 */
10996 EventType?: EventType;
10997 /**
10998 * The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
10999 */
11000 Timestamp?: DateTime;
11001 }
11002 export interface HistoryRecordEntry {
11003 /**
11004 * Information about the event.
11005 */
11006 EventInformation?: EventInformation;
11007 /**
11008 * The event type.
11009 */
11010 EventType?: FleetEventType;
11011 /**
11012 * The date and time of the event, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
11013 */
11014 Timestamp?: DateTime;
11015 }
11016 export type HistoryRecordSet = HistoryRecordEntry[];
11017 export type HistoryRecords = HistoryRecord[];
11018 export interface Host {
11019 /**
11020 * Whether auto-placement is on or off.
11021 */
11022 AutoPlacement?: AutoPlacement;
11023 /**
11024 * The Availability Zone of the Dedicated Host.
11025 */
11026 AvailabilityZone?: String;
11027 /**
11028 * The number of new instances that can be launched onto the Dedicated Host.
11029 */
11030 AvailableCapacity?: AvailableCapacity;
11031 /**
11032 * Unique, case-sensitive identifier that you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.
11033 */
11034 ClientToken?: String;
11035 /**
11036 * The ID of the Dedicated Host.
11037 */
11038 HostId?: String;
11039 /**
11040 * The hardware specifications of the Dedicated Host.
11041 */
11042 HostProperties?: HostProperties;
11043 /**
11044 * The reservation ID of the Dedicated Host. This returns a null response if the Dedicated Host doesn't have an associated reservation.
11045 */
11046 HostReservationId?: String;
11047 /**
11048 * The IDs and instance type that are currently running on the Dedicated Host.
11049 */
11050 Instances?: HostInstanceList;
11051 /**
11052 * The Dedicated Host's state.
11053 */
11054 State?: AllocationState;
11055 /**
11056 * The time that the Dedicated Host was allocated.
11057 */
11058 AllocationTime?: DateTime;
11059 /**
11060 * The time that the Dedicated Host was released.
11061 */
11062 ReleaseTime?: DateTime;
11063 /**
11064 * Any tags assigned to the Dedicated Host.
11065 */
11066 Tags?: TagList;
11067 }
11068 export interface HostInstance {
11069 /**
11070 * the IDs of instances that are running on the Dedicated Host.
11071 */
11072 InstanceId?: String;
11073 /**
11074 * The instance type size (for example, m3.medium) of the running instance.
11075 */
11076 InstanceType?: String;
11077 }
11078 export type HostInstanceList = HostInstance[];
11079 export type HostList = Host[];
11080 export interface HostOffering {
11081 /**
11082 * The currency of the offering.
11083 */
11084 CurrencyCode?: CurrencyCodeValues;
11085 /**
11086 * The duration of the offering (in seconds).
11087 */
11088 Duration?: Integer;
11089 /**
11090 * The hourly price of the offering.
11091 */
11092 HourlyPrice?: String;
11093 /**
11094 * The instance family of the offering.
11095 */
11096 InstanceFamily?: String;
11097 /**
11098 * The ID of the offering.
11099 */
11100 OfferingId?: String;
11101 /**
11102 * The available payment option.
11103 */
11104 PaymentOption?: PaymentOption;
11105 /**
11106 * The upfront price of the offering. Does not apply to No Upfront offerings.
11107 */
11108 UpfrontPrice?: String;
11109 }
11110 export type HostOfferingSet = HostOffering[];
11111 export interface HostProperties {
11112 /**
11113 * The number of cores on the Dedicated Host.
11114 */
11115 Cores?: Integer;
11116 /**
11117 * The instance type size that the Dedicated Host supports (for example, m3.medium).
11118 */
11119 InstanceType?: String;
11120 /**
11121 * The number of sockets on the Dedicated Host.
11122 */
11123 Sockets?: Integer;
11124 /**
11125 * The number of vCPUs on the Dedicated Host.
11126 */
11127 TotalVCpus?: Integer;
11128 }
11129 export interface HostReservation {
11130 /**
11131 * The number of Dedicated Hosts the reservation is associated with.
11132 */
11133 Count?: Integer;
11134 /**
11135 * The currency in which the upfrontPrice and hourlyPrice amounts are specified. At this time, the only supported currency is USD.
11136 */
11137 CurrencyCode?: CurrencyCodeValues;
11138 /**
11139 * The length of the reservation's term, specified in seconds. Can be 31536000 (1 year) | 94608000 (3 years).
11140 */
11141 Duration?: Integer;
11142 /**
11143 * The date and time that the reservation ends.
11144 */
11145 End?: DateTime;
11146 /**
11147 * The IDs of the Dedicated Hosts associated with the reservation.
11148 */
11149 HostIdSet?: ResponseHostIdSet;
11150 /**
11151 * The ID of the reservation that specifies the associated Dedicated Hosts.
11152 */
11153 HostReservationId?: String;
11154 /**
11155 * The hourly price of the reservation.
11156 */
11157 HourlyPrice?: String;
11158 /**
11159 * The instance family of the Dedicated Host Reservation. The instance family on the Dedicated Host must be the same in order for it to benefit from the reservation.
11160 */
11161 InstanceFamily?: String;
11162 /**
11163 * The ID of the reservation. This remains the same regardless of which Dedicated Hosts are associated with it.
11164 */
11165 OfferingId?: String;
11166 /**
11167 * The payment option selected for this reservation.
11168 */
11169 PaymentOption?: PaymentOption;
11170 /**
11171 * The date and time that the reservation started.
11172 */
11173 Start?: DateTime;
11174 /**
11175 * The state of the reservation.
11176 */
11177 State?: ReservationState;
11178 /**
11179 * The upfront price of the reservation.
11180 */
11181 UpfrontPrice?: String;
11182 /**
11183 * Any tags assigned to the Dedicated Host Reservation.
11184 */
11185 Tags?: TagList;
11186 }
11187 export type HostReservationIdSet = String[];
11188 export type HostReservationSet = HostReservation[];
11189 export type HostTenancy = "dedicated"|"host"|string;
11190 export type HypervisorType = "ovm"|"xen"|string;
11191 export interface IamInstanceProfile {
11192 /**
11193 * The Amazon Resource Name (ARN) of the instance profile.
11194 */
11195 Arn?: String;
11196 /**
11197 * The ID of the instance profile.
11198 */
11199 Id?: String;
11200 }
11201 export interface IamInstanceProfileAssociation {
11202 /**
11203 * The ID of the association.
11204 */
11205 AssociationId?: String;
11206 /**
11207 * The ID of the instance.
11208 */
11209 InstanceId?: String;
11210 /**
11211 * The IAM instance profile.
11212 */
11213 IamInstanceProfile?: IamInstanceProfile;
11214 /**
11215 * The state of the association.
11216 */
11217 State?: IamInstanceProfileAssociationState;
11218 /**
11219 * The time the IAM instance profile was associated with the instance.
11220 */
11221 Timestamp?: DateTime;
11222 }
11223 export type IamInstanceProfileAssociationSet = IamInstanceProfileAssociation[];
11224 export type IamInstanceProfileAssociationState = "associating"|"associated"|"disassociating"|"disassociated"|string;
11225 export interface IamInstanceProfileSpecification {
11226 /**
11227 * The Amazon Resource Name (ARN) of the instance profile.
11228 */
11229 Arn?: String;
11230 /**
11231 * The name of the instance profile.
11232 */
11233 Name?: String;
11234 }
11235 export interface IcmpTypeCode {
11236 /**
11237 * The ICMP code. A value of -1 means all codes for the specified ICMP type.
11238 */
11239 Code?: Integer;
11240 /**
11241 * The ICMP type. A value of -1 means all types.
11242 */
11243 Type?: Integer;
11244 }
11245 export interface IdFormat {
11246 /**
11247 * The date in UTC at which you are permanently switched over to using longer IDs. If a deadline is not yet available for this resource type, this field is not returned.
11248 */
11249 Deadline?: DateTime;
11250 /**
11251 * The type of resource.
11252 */
11253 Resource?: String;
11254 /**
11255 * Indicates whether longer IDs (17-character IDs) are enabled for the resource.
11256 */
11257 UseLongIds?: Boolean;
11258 }
11259 export type IdFormatList = IdFormat[];
11260 export interface Image {
11261 /**
11262 * The architecture of the image.
11263 */
11264 Architecture?: ArchitectureValues;
11265 /**
11266 * The date and time the image was created.
11267 */
11268 CreationDate?: String;
11269 /**
11270 * The ID of the AMI.
11271 */
11272 ImageId?: String;
11273 /**
11274 * The location of the AMI.
11275 */
11276 ImageLocation?: String;
11277 /**
11278 * The type of image.
11279 */
11280 ImageType?: ImageTypeValues;
11281 /**
11282 * Indicates whether the image has public launch permissions. The value is true if this image has public launch permissions or false if it has only implicit and explicit launch permissions.
11283 */
11284 Public?: Boolean;
11285 /**
11286 * The kernel associated with the image, if any. Only applicable for machine images.
11287 */
11288 KernelId?: String;
11289 /**
11290 * The AWS account ID of the image owner.
11291 */
11292 OwnerId?: String;
11293 /**
11294 * The value is Windows for Windows AMIs; otherwise blank.
11295 */
11296 Platform?: PlatformValues;
11297 /**
11298 * Any product codes associated with the AMI.
11299 */
11300 ProductCodes?: ProductCodeList;
11301 /**
11302 * The RAM disk associated with the image, if any. Only applicable for machine images.
11303 */
11304 RamdiskId?: String;
11305 /**
11306 * The current state of the AMI. If the state is available, the image is successfully registered and can be used to launch an instance.
11307 */
11308 State?: ImageState;
11309 /**
11310 * Any block device mapping entries.
11311 */
11312 BlockDeviceMappings?: BlockDeviceMappingList;
11313 /**
11314 * The description of the AMI that was provided during image creation.
11315 */
11316 Description?: String;
11317 /**
11318 * Specifies whether enhanced networking with ENA is enabled.
11319 */
11320 EnaSupport?: Boolean;
11321 /**
11322 * The hypervisor type of the image.
11323 */
11324 Hypervisor?: HypervisorType;
11325 /**
11326 * The AWS account alias (for example, amazon, self) or the AWS account ID of the AMI owner.
11327 */
11328 ImageOwnerAlias?: String;
11329 /**
11330 * The name of the AMI that was provided during image creation.
11331 */
11332 Name?: String;
11333 /**
11334 * The device name of the root device volume (for example, /dev/sda1).
11335 */
11336 RootDeviceName?: String;
11337 /**
11338 * The type of root device used by the AMI. The AMI can use an EBS volume or an instance store volume.
11339 */
11340 RootDeviceType?: DeviceType;
11341 /**
11342 * Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
11343 */
11344 SriovNetSupport?: String;
11345 /**
11346 * The reason for the state change.
11347 */
11348 StateReason?: StateReason;
11349 /**
11350 * Any tags assigned to the image.
11351 */
11352 Tags?: TagList;
11353 /**
11354 * The type of virtualization of the AMI.
11355 */
11356 VirtualizationType?: VirtualizationType;
11357 }
11358 export interface ImageAttribute {
11359 /**
11360 * One or more block device mapping entries.
11361 */
11362 BlockDeviceMappings?: BlockDeviceMappingList;
11363 /**
11364 * The ID of the AMI.
11365 */
11366 ImageId?: String;
11367 /**
11368 * One or more launch permissions.
11369 */
11370 LaunchPermissions?: LaunchPermissionList;
11371 /**
11372 * One or more product codes.
11373 */
11374 ProductCodes?: ProductCodeList;
11375 /**
11376 * A description for the AMI.
11377 */
11378 Description?: AttributeValue;
11379 /**
11380 * The kernel ID.
11381 */
11382 KernelId?: AttributeValue;
11383 /**
11384 * The RAM disk ID.
11385 */
11386 RamdiskId?: AttributeValue;
11387 /**
11388 * Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
11389 */
11390 SriovNetSupport?: AttributeValue;
11391 }
11392 export type ImageAttributeName = "description"|"kernel"|"ramdisk"|"launchPermission"|"productCodes"|"blockDeviceMapping"|"sriovNetSupport"|string;
11393 export interface ImageDiskContainer {
11394 /**
11395 * The description of the disk image.
11396 */
11397 Description?: String;
11398 /**
11399 * The block device mapping for the disk.
11400 */
11401 DeviceName?: String;
11402 /**
11403 * The format of the disk image being imported. Valid values: VHD | VMDK | OVA
11404 */
11405 Format?: String;
11406 /**
11407 * The ID of the EBS snapshot to be used for importing the snapshot.
11408 */
11409 SnapshotId?: String;
11410 /**
11411 * The URL to the Amazon S3-based disk image being imported. The URL can either be a https URL (https://..) or an Amazon S3 URL (s3://..)
11412 */
11413 Url?: String;
11414 /**
11415 * The S3 bucket for the disk image.
11416 */
11417 UserBucket?: UserBucket;
11418 }
11419 export type ImageDiskContainerList = ImageDiskContainer[];
11420 export type ImageIdStringList = String[];
11421 export type ImageList = Image[];
11422 export type ImageState = "pending"|"available"|"invalid"|"deregistered"|"transient"|"failed"|"error"|string;
11423 export type ImageTypeValues = "machine"|"kernel"|"ramdisk"|string;
11424 export interface ImportClientVpnClientCertificateRevocationListRequest {
11425 /**
11426 * The ID of the Client VPN endpoint to which the client certificate revocation list applies.
11427 */
11428 ClientVpnEndpointId: String;
11429 /**
11430 * The client certificate revocation list file. For more information, see Generate a Client Certificate Revocation List in the AWS Client VPN Administrator Guide.
11431 */
11432 CertificateRevocationList: String;
11433 /**
11434 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
11435 */
11436 DryRun?: Boolean;
11437 }
11438 export interface ImportClientVpnClientCertificateRevocationListResult {
11439 /**
11440 * Returns true if the request succeeds; otherwise, it returns an error.
11441 */
11442 Return?: Boolean;
11443 }
11444 export interface ImportImageRequest {
11445 /**
11446 * The architecture of the virtual machine. Valid values: i386 | x86_64
11447 */
11448 Architecture?: String;
11449 /**
11450 * The client-specific data.
11451 */
11452 ClientData?: ClientData;
11453 /**
11454 * The token to enable idempotency for VM import requests.
11455 */
11456 ClientToken?: String;
11457 /**
11458 * A description string for the import image task.
11459 */
11460 Description?: String;
11461 /**
11462 * Information about the disk containers.
11463 */
11464 DiskContainers?: ImageDiskContainerList;
11465 /**
11466 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
11467 */
11468 DryRun?: Boolean;
11469 /**
11470 * Specifies whether the destination AMI of the imported image should be encrypted. The default CMK for EBS is used unless you specify a non-default AWS Key Management Service (AWS KMS) CMK using KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
11471 */
11472 Encrypted?: Boolean;
11473 /**
11474 * The target hypervisor platform. Valid values: xen
11475 */
11476 Hypervisor?: String;
11477 /**
11478 * An identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted AMI. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set. The CMK identifier may be provided in any of the following formats: Key ID Key alias, in the form alias/ExampleAlias ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. ARN using key alias. The alias ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the alias namespace, and then the CMK alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. AWS parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure. The specified CMK must exist in the region that the AMI is being copied to.
11479 */
11480 KmsKeyId?: String;
11481 /**
11482 * The license type to be used for the Amazon Machine Image (AMI) after importing. Note: You may only use BYOL if you have existing licenses with rights to use these licenses in a third party cloud like AWS. For more information, see Prerequisites in the VM Import/Export User Guide. Valid values include: Auto - Detects the source-system operating system (OS) and applies the appropriate license. AWS - Replaces the source-system license with an AWS license, if appropriate. BYOL - Retains the source-system license, if appropriate. Default value: Auto
11483 */
11484 LicenseType?: String;
11485 /**
11486 * The operating system of the virtual machine. Valid values: Windows | Linux
11487 */
11488 Platform?: String;
11489 /**
11490 * The name of the role to use when not using the default role, 'vmimport'.
11491 */
11492 RoleName?: String;
11493 }
11494 export interface ImportImageResult {
11495 /**
11496 * The architecture of the virtual machine.
11497 */
11498 Architecture?: String;
11499 /**
11500 * A description of the import task.
11501 */
11502 Description?: String;
11503 /**
11504 * Indicates whether the AMI is encypted.
11505 */
11506 Encrypted?: Boolean;
11507 /**
11508 * The target hypervisor of the import task.
11509 */
11510 Hypervisor?: String;
11511 /**
11512 * The ID of the Amazon Machine Image (AMI) created by the import task.
11513 */
11514 ImageId?: String;
11515 /**
11516 * The task ID of the import image task.
11517 */
11518 ImportTaskId?: String;
11519 /**
11520 * The identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to create the encrypted AMI.
11521 */
11522 KmsKeyId?: String;
11523 /**
11524 * The license type of the virtual machine.
11525 */
11526 LicenseType?: String;
11527 /**
11528 * The operating system of the virtual machine.
11529 */
11530 Platform?: String;
11531 /**
11532 * The progress of the task.
11533 */
11534 Progress?: String;
11535 /**
11536 * Information about the snapshots.
11537 */
11538 SnapshotDetails?: SnapshotDetailList;
11539 /**
11540 * A brief status of the task.
11541 */
11542 Status?: String;
11543 /**
11544 * A detailed status message of the import task.
11545 */
11546 StatusMessage?: String;
11547 }
11548 export interface ImportImageTask {
11549 /**
11550 * The architecture of the virtual machine. Valid values: i386 | x86_64
11551 */
11552 Architecture?: String;
11553 /**
11554 * A description of the import task.
11555 */
11556 Description?: String;
11557 /**
11558 * Indicates whether the image is encrypted.
11559 */
11560 Encrypted?: Boolean;
11561 /**
11562 * The target hypervisor for the import task. Valid values: xen
11563 */
11564 Hypervisor?: String;
11565 /**
11566 * The ID of the Amazon Machine Image (AMI) of the imported virtual machine.
11567 */
11568 ImageId?: String;
11569 /**
11570 * The ID of the import image task.
11571 */
11572 ImportTaskId?: String;
11573 /**
11574 * The identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to create the encrypted image.
11575 */
11576 KmsKeyId?: String;
11577 /**
11578 * The license type of the virtual machine.
11579 */
11580 LicenseType?: String;
11581 /**
11582 * The description string for the import image task.
11583 */
11584 Platform?: String;
11585 /**
11586 * The percentage of progress of the import image task.
11587 */
11588 Progress?: String;
11589 /**
11590 * Information about the snapshots.
11591 */
11592 SnapshotDetails?: SnapshotDetailList;
11593 /**
11594 * A brief status for the import image task.
11595 */
11596 Status?: String;
11597 /**
11598 * A descriptive status message for the import image task.
11599 */
11600 StatusMessage?: String;
11601 }
11602 export type ImportImageTaskList = ImportImageTask[];
11603 export interface ImportInstanceLaunchSpecification {
11604 /**
11605 * Reserved.
11606 */
11607 AdditionalInfo?: String;
11608 /**
11609 * The architecture of the instance.
11610 */
11611 Architecture?: ArchitectureValues;
11612 /**
11613 * One or more security group IDs.
11614 */
11615 GroupIds?: SecurityGroupIdStringList;
11616 /**
11617 * One or more security group names.
11618 */
11619 GroupNames?: SecurityGroupStringList;
11620 /**
11621 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
11622 */
11623 InstanceInitiatedShutdownBehavior?: ShutdownBehavior;
11624 /**
11625 * The instance type. For more information about the instance types that you can import, see Instance Types in the VM Import/Export User Guide.
11626 */
11627 InstanceType?: InstanceType;
11628 /**
11629 * Indicates whether monitoring is enabled.
11630 */
11631 Monitoring?: Boolean;
11632 /**
11633 * The placement information for the instance.
11634 */
11635 Placement?: Placement;
11636 /**
11637 * [EC2-VPC] An available IP address from the IP address range of the subnet.
11638 */
11639 PrivateIpAddress?: String;
11640 /**
11641 * [EC2-VPC] The ID of the subnet in which to launch the instance.
11642 */
11643 SubnetId?: String;
11644 /**
11645 * The Base64-encoded user data to make available to the instance.
11646 */
11647 UserData?: UserData;
11648 }
11649 export interface ImportInstanceRequest {
11650 /**
11651 * A description for the instance being imported.
11652 */
11653 Description?: String;
11654 /**
11655 * The disk image.
11656 */
11657 DiskImages?: DiskImageList;
11658 /**
11659 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
11660 */
11661 DryRun?: Boolean;
11662 /**
11663 * The launch specification.
11664 */
11665 LaunchSpecification?: ImportInstanceLaunchSpecification;
11666 /**
11667 * The instance operating system.
11668 */
11669 Platform: PlatformValues;
11670 }
11671 export interface ImportInstanceResult {
11672 /**
11673 * Information about the conversion task.
11674 */
11675 ConversionTask?: ConversionTask;
11676 }
11677 export interface ImportInstanceTaskDetails {
11678 /**
11679 * A description of the task.
11680 */
11681 Description?: String;
11682 /**
11683 * The ID of the instance.
11684 */
11685 InstanceId?: String;
11686 /**
11687 * The instance operating system.
11688 */
11689 Platform?: PlatformValues;
11690 /**
11691 * One or more volumes.
11692 */
11693 Volumes?: ImportInstanceVolumeDetailSet;
11694 }
11695 export interface ImportInstanceVolumeDetailItem {
11696 /**
11697 * The Availability Zone where the resulting instance will reside.
11698 */
11699 AvailabilityZone?: String;
11700 /**
11701 * The number of bytes converted so far.
11702 */
11703 BytesConverted?: Long;
11704 /**
11705 * A description of the task.
11706 */
11707 Description?: String;
11708 /**
11709 * The image.
11710 */
11711 Image?: DiskImageDescription;
11712 /**
11713 * The status of the import of this particular disk image.
11714 */
11715 Status?: String;
11716 /**
11717 * The status information or errors related to the disk image.
11718 */
11719 StatusMessage?: String;
11720 /**
11721 * The volume.
11722 */
11723 Volume?: DiskImageVolumeDescription;
11724 }
11725 export type ImportInstanceVolumeDetailSet = ImportInstanceVolumeDetailItem[];
11726 export interface ImportKeyPairRequest {
11727 /**
11728 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
11729 */
11730 DryRun?: Boolean;
11731 /**
11732 * A unique name for the key pair.
11733 */
11734 KeyName: String;
11735 /**
11736 * The public key. For API calls, the text must be base64-encoded. For command line tools, base64 encoding is performed for you.
11737 */
11738 PublicKeyMaterial: _Blob;
11739 }
11740 export interface ImportKeyPairResult {
11741 /**
11742 * The MD5 public key fingerprint as specified in section 4 of RFC 4716.
11743 */
11744 KeyFingerprint?: String;
11745 /**
11746 * The key pair name you provided.
11747 */
11748 KeyName?: String;
11749 }
11750 export interface ImportSnapshotRequest {
11751 /**
11752 * The client-specific data.
11753 */
11754 ClientData?: ClientData;
11755 /**
11756 * Token to enable idempotency for VM import requests.
11757 */
11758 ClientToken?: String;
11759 /**
11760 * The description string for the import snapshot task.
11761 */
11762 Description?: String;
11763 /**
11764 * Information about the disk container.
11765 */
11766 DiskContainer?: SnapshotDiskContainer;
11767 /**
11768 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
11769 */
11770 DryRun?: Boolean;
11771 /**
11772 * Specifies whether the destination snapshot of the imported image should be encrypted. The default CMK for EBS is used unless you specify a non-default AWS Key Management Service (AWS KMS) CMK using KmsKeyId. For more information, see Amazon EBS Encryption in the Amazon Elastic Compute Cloud User Guide.
11773 */
11774 Encrypted?: Boolean;
11775 /**
11776 * An identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) to use when creating the encrypted snapshot. This parameter is only required if you want to use a non-default CMK; if this parameter is not specified, the default CMK for EBS is used. If a KmsKeyId is specified, the Encrypted flag must also be set. The CMK identifier may be provided in any of the following formats: Key ID Key alias, in the form alias/ExampleAlias ARN using key ID. The ID ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the key namespace, and then the CMK ID. For example, arn:aws:kms:us-east-1:012345678910:key/abcd1234-a123-456a-a12b-a123b4cd56ef. ARN using key alias. The alias ARN contains the arn:aws:kms namespace, followed by the region of the CMK, the AWS account ID of the CMK owner, the alias namespace, and then the CMK alias. For example, arn:aws:kms:us-east-1:012345678910:alias/ExampleAlias. AWS parses KmsKeyId asynchronously, meaning that the action you call may appear to complete even though you provided an invalid identifier. This action will eventually report failure. The specified CMK must exist in the region that the snapshot is being copied to.
11777 */
11778 KmsKeyId?: String;
11779 /**
11780 * The name of the role to use when not using the default role, 'vmimport'.
11781 */
11782 RoleName?: String;
11783 }
11784 export interface ImportSnapshotResult {
11785 /**
11786 * A description of the import snapshot task.
11787 */
11788 Description?: String;
11789 /**
11790 * The ID of the import snapshot task.
11791 */
11792 ImportTaskId?: String;
11793 /**
11794 * Information about the import snapshot task.
11795 */
11796 SnapshotTaskDetail?: SnapshotTaskDetail;
11797 }
11798 export interface ImportSnapshotTask {
11799 /**
11800 * A description of the import snapshot task.
11801 */
11802 Description?: String;
11803 /**
11804 * The ID of the import snapshot task.
11805 */
11806 ImportTaskId?: String;
11807 /**
11808 * Describes an import snapshot task.
11809 */
11810 SnapshotTaskDetail?: SnapshotTaskDetail;
11811 }
11812 export type ImportSnapshotTaskList = ImportSnapshotTask[];
11813 export type ImportTaskIdList = String[];
11814 export interface ImportVolumeRequest {
11815 /**
11816 * The Availability Zone for the resulting EBS volume.
11817 */
11818 AvailabilityZone: String;
11819 /**
11820 * A description of the volume.
11821 */
11822 Description?: String;
11823 /**
11824 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
11825 */
11826 DryRun?: Boolean;
11827 /**
11828 * The disk image.
11829 */
11830 Image: DiskImageDetail;
11831 /**
11832 * The volume size.
11833 */
11834 Volume: VolumeDetail;
11835 }
11836 export interface ImportVolumeResult {
11837 /**
11838 * Information about the conversion task.
11839 */
11840 ConversionTask?: ConversionTask;
11841 }
11842 export interface ImportVolumeTaskDetails {
11843 /**
11844 * The Availability Zone where the resulting volume will reside.
11845 */
11846 AvailabilityZone?: String;
11847 /**
11848 * The number of bytes converted so far.
11849 */
11850 BytesConverted?: Long;
11851 /**
11852 * The description you provided when starting the import volume task.
11853 */
11854 Description?: String;
11855 /**
11856 * The image.
11857 */
11858 Image?: DiskImageDescription;
11859 /**
11860 * The volume.
11861 */
11862 Volume?: DiskImageVolumeDescription;
11863 }
11864 export interface Instance {
11865 /**
11866 * The AMI launch index, which can be used to find this instance in the launch group.
11867 */
11868 AmiLaunchIndex?: Integer;
11869 /**
11870 * The ID of the AMI used to launch the instance.
11871 */
11872 ImageId?: String;
11873 /**
11874 * The ID of the instance.
11875 */
11876 InstanceId?: String;
11877 /**
11878 * The instance type.
11879 */
11880 InstanceType?: InstanceType;
11881 /**
11882 * The kernel associated with this instance, if applicable.
11883 */
11884 KernelId?: String;
11885 /**
11886 * The name of the key pair, if this instance was launched with an associated key pair.
11887 */
11888 KeyName?: String;
11889 /**
11890 * The time the instance was launched.
11891 */
11892 LaunchTime?: DateTime;
11893 /**
11894 * The monitoring for the instance.
11895 */
11896 Monitoring?: Monitoring;
11897 /**
11898 * The location where the instance launched, if applicable.
11899 */
11900 Placement?: Placement;
11901 /**
11902 * The value is Windows for Windows instances; otherwise blank.
11903 */
11904 Platform?: PlatformValues;
11905 /**
11906 * (IPv4 only) The private DNS hostname name assigned to the instance. This DNS hostname can only be used inside the Amazon EC2 network. This name is not available until the instance enters the running state. [EC2-VPC] The Amazon-provided DNS server resolves Amazon-provided private DNS hostnames if you've enabled DNS resolution and DNS hostnames in your VPC. If you are not using the Amazon-provided DNS server in your VPC, your custom domain name servers must resolve the hostname as appropriate.
11907 */
11908 PrivateDnsName?: String;
11909 /**
11910 * The private IPv4 address assigned to the instance.
11911 */
11912 PrivateIpAddress?: String;
11913 /**
11914 * The product codes attached to this instance, if applicable.
11915 */
11916 ProductCodes?: ProductCodeList;
11917 /**
11918 * (IPv4 only) The public DNS name assigned to the instance. This name is not available until the instance enters the running state. For EC2-VPC, this name is only available if you've enabled DNS hostnames for your VPC.
11919 */
11920 PublicDnsName?: String;
11921 /**
11922 * The public IPv4 address assigned to the instance, if applicable.
11923 */
11924 PublicIpAddress?: String;
11925 /**
11926 * The RAM disk associated with this instance, if applicable.
11927 */
11928 RamdiskId?: String;
11929 /**
11930 * The current state of the instance.
11931 */
11932 State?: InstanceState;
11933 /**
11934 * The reason for the most recent state transition. This might be an empty string.
11935 */
11936 StateTransitionReason?: String;
11937 /**
11938 * [EC2-VPC] The ID of the subnet in which the instance is running.
11939 */
11940 SubnetId?: String;
11941 /**
11942 * [EC2-VPC] The ID of the VPC in which the instance is running.
11943 */
11944 VpcId?: String;
11945 /**
11946 * The architecture of the image.
11947 */
11948 Architecture?: ArchitectureValues;
11949 /**
11950 * Any block device mapping entries for the instance.
11951 */
11952 BlockDeviceMappings?: InstanceBlockDeviceMappingList;
11953 /**
11954 * The idempotency token you provided when you launched the instance, if applicable.
11955 */
11956 ClientToken?: String;
11957 /**
11958 * Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.
11959 */
11960 EbsOptimized?: Boolean;
11961 /**
11962 * Specifies whether enhanced networking with ENA is enabled.
11963 */
11964 EnaSupport?: Boolean;
11965 /**
11966 * The hypervisor type of the instance.
11967 */
11968 Hypervisor?: HypervisorType;
11969 /**
11970 * The IAM instance profile associated with the instance, if applicable.
11971 */
11972 IamInstanceProfile?: IamInstanceProfile;
11973 /**
11974 * Indicates whether this is a Spot Instance or a Scheduled Instance.
11975 */
11976 InstanceLifecycle?: InstanceLifecycleType;
11977 /**
11978 * The Elastic GPU associated with the instance.
11979 */
11980 ElasticGpuAssociations?: ElasticGpuAssociationList;
11981 /**
11982 * The elastic inference accelerator associated with the instance.
11983 */
11984 ElasticInferenceAcceleratorAssociations?: ElasticInferenceAcceleratorAssociationList;
11985 /**
11986 * [EC2-VPC] One or more network interfaces for the instance.
11987 */
11988 NetworkInterfaces?: InstanceNetworkInterfaceList;
11989 /**
11990 * The device name of the root device volume (for example, /dev/sda1).
11991 */
11992 RootDeviceName?: String;
11993 /**
11994 * The root device type used by the AMI. The AMI can use an EBS volume or an instance store volume.
11995 */
11996 RootDeviceType?: DeviceType;
11997 /**
11998 * One or more security groups for the instance.
11999 */
12000 SecurityGroups?: GroupIdentifierList;
12001 /**
12002 * Specifies whether to enable an instance launched in a VPC to perform NAT. This controls whether source/destination checking is enabled on the instance. A value of true means that checking is enabled, and false means that checking is disabled. The value must be false for the instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.
12003 */
12004 SourceDestCheck?: Boolean;
12005 /**
12006 * If the request is a Spot Instance request, the ID of the request.
12007 */
12008 SpotInstanceRequestId?: String;
12009 /**
12010 * Specifies whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
12011 */
12012 SriovNetSupport?: String;
12013 /**
12014 * The reason for the most recent state transition.
12015 */
12016 StateReason?: StateReason;
12017 /**
12018 * Any tags assigned to the instance.
12019 */
12020 Tags?: TagList;
12021 /**
12022 * The virtualization type of the instance.
12023 */
12024 VirtualizationType?: VirtualizationType;
12025 /**
12026 * The CPU options for the instance.
12027 */
12028 CpuOptions?: CpuOptions;
12029 /**
12030 * The ID of the Capacity Reservation.
12031 */
12032 CapacityReservationId?: String;
12033 /**
12034 * Information about the Capacity Reservation targeting option.
12035 */
12036 CapacityReservationSpecification?: CapacityReservationSpecificationResponse;
12037 /**
12038 * Indicates whether the instance is enabled for hibernation.
12039 */
12040 HibernationOptions?: HibernationOptions;
12041 /**
12042 * The license configurations.
12043 */
12044 Licenses?: LicenseList;
12045 }
12046 export interface InstanceAttribute {
12047 /**
12048 * The security groups associated with the instance.
12049 */
12050 Groups?: GroupIdentifierList;
12051 /**
12052 * The block device mapping of the instance.
12053 */
12054 BlockDeviceMappings?: InstanceBlockDeviceMappingList;
12055 /**
12056 * If the value is true, you can't terminate the instance through the Amazon EC2 console, CLI, or API; otherwise, you can.
12057 */
12058 DisableApiTermination?: AttributeBooleanValue;
12059 /**
12060 * Indicates whether enhanced networking with ENA is enabled.
12061 */
12062 EnaSupport?: AttributeBooleanValue;
12063 /**
12064 * Indicates whether the instance is optimized for Amazon EBS I/O.
12065 */
12066 EbsOptimized?: AttributeBooleanValue;
12067 /**
12068 * The ID of the instance.
12069 */
12070 InstanceId?: String;
12071 /**
12072 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
12073 */
12074 InstanceInitiatedShutdownBehavior?: AttributeValue;
12075 /**
12076 * The instance type.
12077 */
12078 InstanceType?: AttributeValue;
12079 /**
12080 * The kernel ID.
12081 */
12082 KernelId?: AttributeValue;
12083 /**
12084 * A list of product codes.
12085 */
12086 ProductCodes?: ProductCodeList;
12087 /**
12088 * The RAM disk ID.
12089 */
12090 RamdiskId?: AttributeValue;
12091 /**
12092 * The device name of the root device volume (for example, /dev/sda1).
12093 */
12094 RootDeviceName?: AttributeValue;
12095 /**
12096 * Indicates whether source/destination checking is enabled. A value of true means that checking is enabled, and false means that checking is disabled. This value must be false for a NAT instance to perform NAT.
12097 */
12098 SourceDestCheck?: AttributeBooleanValue;
12099 /**
12100 * Indicates whether enhanced networking with the Intel 82599 Virtual Function interface is enabled.
12101 */
12102 SriovNetSupport?: AttributeValue;
12103 /**
12104 * The user data.
12105 */
12106 UserData?: AttributeValue;
12107 }
12108 export type InstanceAttributeName = "instanceType"|"kernel"|"ramdisk"|"userData"|"disableApiTermination"|"instanceInitiatedShutdownBehavior"|"rootDeviceName"|"blockDeviceMapping"|"productCodes"|"sourceDestCheck"|"groupSet"|"ebsOptimized"|"sriovNetSupport"|"enaSupport"|string;
12109 export interface InstanceBlockDeviceMapping {
12110 /**
12111 * The device name (for example, /dev/sdh or xvdh).
12112 */
12113 DeviceName?: String;
12114 /**
12115 * Parameters used to automatically set up EBS volumes when the instance is launched.
12116 */
12117 Ebs?: EbsInstanceBlockDevice;
12118 }
12119 export type InstanceBlockDeviceMappingList = InstanceBlockDeviceMapping[];
12120 export interface InstanceBlockDeviceMappingSpecification {
12121 /**
12122 * The device name (for example, /dev/sdh or xvdh).
12123 */
12124 DeviceName?: String;
12125 /**
12126 * Parameters used to automatically set up EBS volumes when the instance is launched.
12127 */
12128 Ebs?: EbsInstanceBlockDeviceSpecification;
12129 /**
12130 * suppress the specified device included in the block device mapping.
12131 */
12132 NoDevice?: String;
12133 /**
12134 * The virtual device name.
12135 */
12136 VirtualName?: String;
12137 }
12138 export type InstanceBlockDeviceMappingSpecificationList = InstanceBlockDeviceMappingSpecification[];
12139 export interface InstanceCapacity {
12140 /**
12141 * The number of instances that can still be launched onto the Dedicated Host.
12142 */
12143 AvailableCapacity?: Integer;
12144 /**
12145 * The instance type size supported by the Dedicated Host.
12146 */
12147 InstanceType?: String;
12148 /**
12149 * The total number of instances that can be launched onto the Dedicated Host.
12150 */
12151 TotalCapacity?: Integer;
12152 }
12153 export interface InstanceCount {
12154 /**
12155 * The number of listed Reserved Instances in the state specified by the state.
12156 */
12157 InstanceCount?: Integer;
12158 /**
12159 * The states of the listed Reserved Instances.
12160 */
12161 State?: ListingState;
12162 }
12163 export type InstanceCountList = InstanceCount[];
12164 export interface InstanceCreditSpecification {
12165 /**
12166 * The ID of the instance.
12167 */
12168 InstanceId?: String;
12169 /**
12170 * The credit option for CPU usage of the instance. Valid values are standard and unlimited.
12171 */
12172 CpuCredits?: String;
12173 }
12174 export type InstanceCreditSpecificationList = InstanceCreditSpecification[];
12175 export type InstanceCreditSpecificationListRequest = InstanceCreditSpecificationRequest[];
12176 export interface InstanceCreditSpecificationRequest {
12177 /**
12178 * The ID of the instance.
12179 */
12180 InstanceId?: String;
12181 /**
12182 * The credit option for CPU usage of the instance. Valid values are standard and unlimited.
12183 */
12184 CpuCredits?: String;
12185 }
12186 export type InstanceEventId = string;
12187 export interface InstanceExportDetails {
12188 /**
12189 * The ID of the resource being exported.
12190 */
12191 InstanceId?: String;
12192 /**
12193 * The target virtualization environment.
12194 */
12195 TargetEnvironment?: ExportEnvironment;
12196 }
12197 export type InstanceHealthStatus = "healthy"|"unhealthy"|string;
12198 export type InstanceId = string;
12199 export type InstanceIdSet = String[];
12200 export type InstanceIdStringList = String[];
12201 export type InstanceIdsSet = InstanceId[];
12202 export type InstanceInterruptionBehavior = "hibernate"|"stop"|"terminate"|string;
12203 export interface InstanceIpv6Address {
12204 /**
12205 * The IPv6 address.
12206 */
12207 Ipv6Address?: String;
12208 }
12209 export type InstanceIpv6AddressList = InstanceIpv6Address[];
12210 export type InstanceIpv6AddressListRequest = InstanceIpv6AddressRequest[];
12211 export interface InstanceIpv6AddressRequest {
12212 /**
12213 * The IPv6 address.
12214 */
12215 Ipv6Address?: String;
12216 }
12217 export type InstanceLifecycle = "spot"|"on-demand"|string;
12218 export type InstanceLifecycleType = "spot"|"scheduled"|string;
12219 export type InstanceList = Instance[];
12220 export interface InstanceMarketOptionsRequest {
12221 /**
12222 * The market type.
12223 */
12224 MarketType?: MarketType;
12225 /**
12226 * The options for Spot Instances.
12227 */
12228 SpotOptions?: SpotMarketOptions;
12229 }
12230 export type InstanceMatchCriteria = "open"|"targeted"|string;
12231 export interface InstanceMonitoring {
12232 /**
12233 * The ID of the instance.
12234 */
12235 InstanceId?: String;
12236 /**
12237 * The monitoring for the instance.
12238 */
12239 Monitoring?: Monitoring;
12240 }
12241 export type InstanceMonitoringList = InstanceMonitoring[];
12242 export interface InstanceNetworkInterface {
12243 /**
12244 * The association information for an Elastic IPv4 associated with the network interface.
12245 */
12246 Association?: InstanceNetworkInterfaceAssociation;
12247 /**
12248 * The network interface attachment.
12249 */
12250 Attachment?: InstanceNetworkInterfaceAttachment;
12251 /**
12252 * The description.
12253 */
12254 Description?: String;
12255 /**
12256 * One or more security groups.
12257 */
12258 Groups?: GroupIdentifierList;
12259 /**
12260 * One or more IPv6 addresses associated with the network interface.
12261 */
12262 Ipv6Addresses?: InstanceIpv6AddressList;
12263 /**
12264 * The MAC address.
12265 */
12266 MacAddress?: String;
12267 /**
12268 * The ID of the network interface.
12269 */
12270 NetworkInterfaceId?: String;
12271 /**
12272 * The ID of the AWS account that created the network interface.
12273 */
12274 OwnerId?: String;
12275 /**
12276 * The private DNS name.
12277 */
12278 PrivateDnsName?: String;
12279 /**
12280 * The IPv4 address of the network interface within the subnet.
12281 */
12282 PrivateIpAddress?: String;
12283 /**
12284 * One or more private IPv4 addresses associated with the network interface.
12285 */
12286 PrivateIpAddresses?: InstancePrivateIpAddressList;
12287 /**
12288 * Indicates whether to validate network traffic to or from this network interface.
12289 */
12290 SourceDestCheck?: Boolean;
12291 /**
12292 * The status of the network interface.
12293 */
12294 Status?: NetworkInterfaceStatus;
12295 /**
12296 * The ID of the subnet.
12297 */
12298 SubnetId?: String;
12299 /**
12300 * The ID of the VPC.
12301 */
12302 VpcId?: String;
12303 }
12304 export interface InstanceNetworkInterfaceAssociation {
12305 /**
12306 * The ID of the owner of the Elastic IP address.
12307 */
12308 IpOwnerId?: String;
12309 /**
12310 * The public DNS name.
12311 */
12312 PublicDnsName?: String;
12313 /**
12314 * The public IP address or Elastic IP address bound to the network interface.
12315 */
12316 PublicIp?: String;
12317 }
12318 export interface InstanceNetworkInterfaceAttachment {
12319 /**
12320 * The time stamp when the attachment initiated.
12321 */
12322 AttachTime?: DateTime;
12323 /**
12324 * The ID of the network interface attachment.
12325 */
12326 AttachmentId?: String;
12327 /**
12328 * Indicates whether the network interface is deleted when the instance is terminated.
12329 */
12330 DeleteOnTermination?: Boolean;
12331 /**
12332 * The index of the device on the instance for the network interface attachment.
12333 */
12334 DeviceIndex?: Integer;
12335 /**
12336 * The attachment state.
12337 */
12338 Status?: AttachmentStatus;
12339 }
12340 export type InstanceNetworkInterfaceList = InstanceNetworkInterface[];
12341 export interface InstanceNetworkInterfaceSpecification {
12342 /**
12343 * Indicates whether to assign a public IPv4 address to an instance you launch in a VPC. The public IP address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.
12344 */
12345 AssociatePublicIpAddress?: Boolean;
12346 /**
12347 * If set to true, the interface is deleted when the instance is terminated. You can specify true only if creating a new network interface when launching an instance.
12348 */
12349 DeleteOnTermination?: Boolean;
12350 /**
12351 * The description of the network interface. Applies only if creating a network interface when launching an instance.
12352 */
12353 Description?: String;
12354 /**
12355 * The index of the device on the instance for the network interface attachment. If you are specifying a network interface in a RunInstances request, you must provide the device index.
12356 */
12357 DeviceIndex?: Integer;
12358 /**
12359 * The IDs of the security groups for the network interface. Applies only if creating a network interface when launching an instance.
12360 */
12361 Groups?: SecurityGroupIdStringList;
12362 /**
12363 * A number of IPv6 addresses to assign to the network interface. Amazon EC2 chooses the IPv6 addresses from the range of the subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch.
12364 */
12365 Ipv6AddressCount?: Integer;
12366 /**
12367 * One or more IPv6 addresses to assign to the network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch.
12368 */
12369 Ipv6Addresses?: InstanceIpv6AddressList;
12370 /**
12371 * The ID of the network interface.
12372 */
12373 NetworkInterfaceId?: String;
12374 /**
12375 * The private IPv4 address of the network interface. Applies only if creating a network interface when launching an instance. You cannot specify this option if you're launching more than one instance in a RunInstances request.
12376 */
12377 PrivateIpAddress?: String;
12378 /**
12379 * One or more private IPv4 addresses to assign to the network interface. Only one private IPv4 address can be designated as primary. You cannot specify this option if you're launching more than one instance in a RunInstances request.
12380 */
12381 PrivateIpAddresses?: PrivateIpAddressSpecificationList;
12382 /**
12383 * The number of secondary private IPv4 addresses. You can't specify this option and specify more than one private IP address using the private IP addresses option. You cannot specify this option if you're launching more than one instance in a RunInstances request.
12384 */
12385 SecondaryPrivateIpAddressCount?: Integer;
12386 /**
12387 * The ID of the subnet associated with the network string. Applies only if creating a network interface when launching an instance.
12388 */
12389 SubnetId?: String;
12390 }
12391 export type InstanceNetworkInterfaceSpecificationList = InstanceNetworkInterfaceSpecification[];
12392 export interface InstancePrivateIpAddress {
12393 /**
12394 * The association information for an Elastic IP address for the network interface.
12395 */
12396 Association?: InstanceNetworkInterfaceAssociation;
12397 /**
12398 * Indicates whether this IPv4 address is the primary private IP address of the network interface.
12399 */
12400 Primary?: Boolean;
12401 /**
12402 * The private IPv4 DNS name.
12403 */
12404 PrivateDnsName?: String;
12405 /**
12406 * The private IPv4 address of the network interface.
12407 */
12408 PrivateIpAddress?: String;
12409 }
12410 export type InstancePrivateIpAddressList = InstancePrivateIpAddress[];
12411 export interface InstanceState {
12412 /**
12413 * The state of the instance as a 16-bit unsigned integer. The high byte is all of the bits between 2^8 and (2^16)-1, which equals decimal values between 256 and 65,535. These numerical values are used for internal purposes and should be ignored. The low byte is all of the bits between 2^0 and (2^8)-1, which equals decimal values between 0 and 255. The valid values for instance-state-code will all be in the range of the low byte and they are: 0 : pending 16 : running 32 : shutting-down 48 : terminated 64 : stopping 80 : stopped You can ignore the high byte value by zeroing out all of the bits above 2^8 or 256 in decimal.
12414 */
12415 Code?: Integer;
12416 /**
12417 * The current state of the instance.
12418 */
12419 Name?: InstanceStateName;
12420 }
12421 export interface InstanceStateChange {
12422 /**
12423 * The current state of the instance.
12424 */
12425 CurrentState?: InstanceState;
12426 /**
12427 * The ID of the instance.
12428 */
12429 InstanceId?: String;
12430 /**
12431 * The previous state of the instance.
12432 */
12433 PreviousState?: InstanceState;
12434 }
12435 export type InstanceStateChangeList = InstanceStateChange[];
12436 export type InstanceStateName = "pending"|"running"|"shutting-down"|"terminated"|"stopping"|"stopped"|string;
12437 export interface InstanceStatus {
12438 /**
12439 * The Availability Zone of the instance.
12440 */
12441 AvailabilityZone?: String;
12442 /**
12443 * Any scheduled events associated with the instance.
12444 */
12445 Events?: InstanceStatusEventList;
12446 /**
12447 * The ID of the instance.
12448 */
12449 InstanceId?: String;
12450 /**
12451 * The intended state of the instance. DescribeInstanceStatus requires that an instance be in the running state.
12452 */
12453 InstanceState?: InstanceState;
12454 /**
12455 * Reports impaired functionality that stems from issues internal to the instance, such as impaired reachability.
12456 */
12457 InstanceStatus?: InstanceStatusSummary;
12458 /**
12459 * Reports impaired functionality that stems from issues related to the systems that support an instance, such as hardware failures and network connectivity problems.
12460 */
12461 SystemStatus?: InstanceStatusSummary;
12462 }
12463 export interface InstanceStatusDetails {
12464 /**
12465 * The time when a status check failed. For an instance that was launched and impaired, this is the time when the instance was launched.
12466 */
12467 ImpairedSince?: DateTime;
12468 /**
12469 * The type of instance status.
12470 */
12471 Name?: StatusName;
12472 /**
12473 * The status.
12474 */
12475 Status?: StatusType;
12476 }
12477 export type InstanceStatusDetailsList = InstanceStatusDetails[];
12478 export interface InstanceStatusEvent {
12479 /**
12480 * The ID of the event.
12481 */
12482 InstanceEventId?: InstanceEventId;
12483 /**
12484 * The event code.
12485 */
12486 Code?: EventCode;
12487 /**
12488 * A description of the event. After a scheduled event is completed, it can still be described for up to a week. If the event has been completed, this description starts with the following text: [Completed].
12489 */
12490 Description?: String;
12491 /**
12492 * The latest scheduled end time for the event.
12493 */
12494 NotAfter?: DateTime;
12495 /**
12496 * The earliest scheduled start time for the event.
12497 */
12498 NotBefore?: DateTime;
12499 /**
12500 * The deadline for starting the event.
12501 */
12502 NotBeforeDeadline?: DateTime;
12503 }
12504 export type InstanceStatusEventList = InstanceStatusEvent[];
12505 export type InstanceStatusList = InstanceStatus[];
12506 export interface InstanceStatusSummary {
12507 /**
12508 * The system instance health or application instance health.
12509 */
12510 Details?: InstanceStatusDetailsList;
12511 /**
12512 * The status.
12513 */
12514 Status?: SummaryStatus;
12515 }
12516 export type InstanceType = "t1.micro"|"t2.nano"|"t2.micro"|"t2.small"|"t2.medium"|"t2.large"|"t2.xlarge"|"t2.2xlarge"|"t3.nano"|"t3.micro"|"t3.small"|"t3.medium"|"t3.large"|"t3.xlarge"|"t3.2xlarge"|"m1.small"|"m1.medium"|"m1.large"|"m1.xlarge"|"m3.medium"|"m3.large"|"m3.xlarge"|"m3.2xlarge"|"m4.large"|"m4.xlarge"|"m4.2xlarge"|"m4.4xlarge"|"m4.10xlarge"|"m4.16xlarge"|"m2.xlarge"|"m2.2xlarge"|"m2.4xlarge"|"cr1.8xlarge"|"r3.large"|"r3.xlarge"|"r3.2xlarge"|"r3.4xlarge"|"r3.8xlarge"|"r4.large"|"r4.xlarge"|"r4.2xlarge"|"r4.4xlarge"|"r4.8xlarge"|"r4.16xlarge"|"r5.large"|"r5.xlarge"|"r5.2xlarge"|"r5.4xlarge"|"r5.12xlarge"|"r5.24xlarge"|"r5.metal"|"r5a.large"|"r5a.xlarge"|"r5a.2xlarge"|"r5a.4xlarge"|"r5a.12xlarge"|"r5a.24xlarge"|"r5d.large"|"r5d.xlarge"|"r5d.2xlarge"|"r5d.4xlarge"|"r5d.12xlarge"|"r5d.24xlarge"|"r5d.metal"|"x1.16xlarge"|"x1.32xlarge"|"x1e.xlarge"|"x1e.2xlarge"|"x1e.4xlarge"|"x1e.8xlarge"|"x1e.16xlarge"|"x1e.32xlarge"|"i2.xlarge"|"i2.2xlarge"|"i2.4xlarge"|"i2.8xlarge"|"i3.large"|"i3.xlarge"|"i3.2xlarge"|"i3.4xlarge"|"i3.8xlarge"|"i3.16xlarge"|"i3.metal"|"hi1.4xlarge"|"hs1.8xlarge"|"c1.medium"|"c1.xlarge"|"c3.large"|"c3.xlarge"|"c3.2xlarge"|"c3.4xlarge"|"c3.8xlarge"|"c4.large"|"c4.xlarge"|"c4.2xlarge"|"c4.4xlarge"|"c4.8xlarge"|"c5.large"|"c5.xlarge"|"c5.2xlarge"|"c5.4xlarge"|"c5.9xlarge"|"c5.18xlarge"|"c5d.large"|"c5d.xlarge"|"c5d.2xlarge"|"c5d.4xlarge"|"c5d.9xlarge"|"c5d.18xlarge"|"c5n.large"|"c5n.xlarge"|"c5n.2xlarge"|"c5n.4xlarge"|"c5n.9xlarge"|"c5n.18xlarge"|"cc1.4xlarge"|"cc2.8xlarge"|"g2.2xlarge"|"g2.8xlarge"|"g3.4xlarge"|"g3.8xlarge"|"g3.16xlarge"|"g3s.xlarge"|"cg1.4xlarge"|"p2.xlarge"|"p2.8xlarge"|"p2.16xlarge"|"p3.2xlarge"|"p3.8xlarge"|"p3.16xlarge"|"p3dn.24xlarge"|"d2.xlarge"|"d2.2xlarge"|"d2.4xlarge"|"d2.8xlarge"|"f1.2xlarge"|"f1.4xlarge"|"f1.16xlarge"|"m5.large"|"m5.xlarge"|"m5.2xlarge"|"m5.4xlarge"|"m5.12xlarge"|"m5.24xlarge"|"m5.metal"|"m5a.large"|"m5a.xlarge"|"m5a.2xlarge"|"m5a.4xlarge"|"m5a.12xlarge"|"m5a.24xlarge"|"m5d.large"|"m5d.xlarge"|"m5d.2xlarge"|"m5d.4xlarge"|"m5d.12xlarge"|"m5d.24xlarge"|"m5d.metal"|"h1.2xlarge"|"h1.4xlarge"|"h1.8xlarge"|"h1.16xlarge"|"z1d.large"|"z1d.xlarge"|"z1d.2xlarge"|"z1d.3xlarge"|"z1d.6xlarge"|"z1d.12xlarge"|"z1d.metal"|"u-6tb1.metal"|"u-9tb1.metal"|"u-12tb1.metal"|"a1.medium"|"a1.large"|"a1.xlarge"|"a1.2xlarge"|"a1.4xlarge"|string;
12517 export type InstanceTypeList = InstanceType[];
12518 export type Integer = number;
12519 export type InterfacePermissionType = "INSTANCE-ATTACH"|"EIP-ASSOCIATE"|string;
12520 export interface InternetGateway {
12521 /**
12522 * Any VPCs attached to the internet gateway.
12523 */
12524 Attachments?: InternetGatewayAttachmentList;
12525 /**
12526 * The ID of the internet gateway.
12527 */
12528 InternetGatewayId?: String;
12529 /**
12530 * The ID of the AWS account that owns the internet gateway.
12531 */
12532 OwnerId?: String;
12533 /**
12534 * Any tags assigned to the internet gateway.
12535 */
12536 Tags?: TagList;
12537 }
12538 export interface InternetGatewayAttachment {
12539 /**
12540 * The current state of the attachment. For an internet gateway, the state is available when attached to a VPC; otherwise, this value is not returned.
12541 */
12542 State?: AttachmentStatus;
12543 /**
12544 * The ID of the VPC.
12545 */
12546 VpcId?: String;
12547 }
12548 export type InternetGatewayAttachmentList = InternetGatewayAttachment[];
12549 export type InternetGatewayList = InternetGateway[];
12550 export interface IpPermission {
12551 /**
12552 * The start of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 type number. A value of -1 indicates all ICMP/ICMPv6 types. If you specify all ICMP/ICMPv6 types, you must specify all codes.
12553 */
12554 FromPort?: Integer;
12555 /**
12556 * The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). [EC2-VPC only] Use -1 to specify all protocols. When authorizing security group rules, specifying -1 or a protocol number other than tcp, udp, icmp, or 58 (ICMPv6) allows traffic on all ports, regardless of any port range you specify. For tcp, udp, and icmp, you must specify a port range. For 58 (ICMPv6), you can optionally specify a port range; if you don't, traffic for all types and codes is allowed when authorizing rules.
12557 */
12558 IpProtocol?: String;
12559 /**
12560 * One or more IPv4 ranges.
12561 */
12562 IpRanges?: IpRangeList;
12563 /**
12564 * [EC2-VPC only] One or more IPv6 ranges.
12565 */
12566 Ipv6Ranges?: Ipv6RangeList;
12567 /**
12568 * [EC2-VPC only] One or more prefix list IDs for an AWS service. With AuthorizeSecurityGroupEgress, this is the AWS service that you want to access through a VPC endpoint from instances associated with the security group.
12569 */
12570 PrefixListIds?: PrefixListIdList;
12571 /**
12572 * The end of port range for the TCP and UDP protocols, or an ICMP/ICMPv6 code. A value of -1 indicates all ICMP/ICMPv6 codes for the specified ICMP type. If you specify all ICMP/ICMPv6 types, you must specify all codes.
12573 */
12574 ToPort?: Integer;
12575 /**
12576 * One or more security group and AWS account ID pairs.
12577 */
12578 UserIdGroupPairs?: UserIdGroupPairList;
12579 }
12580 export type IpPermissionList = IpPermission[];
12581 export interface IpRange {
12582 /**
12583 * The IPv4 CIDR range. You can either specify a CIDR range or a source security group, not both. To specify a single IPv4 address, use the /32 prefix length.
12584 */
12585 CidrIp?: String;
12586 /**
12587 * A description for the security group rule that references this IPv4 address range. Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
12588 */
12589 Description?: String;
12590 }
12591 export type IpRangeList = IpRange[];
12592 export type IpRanges = String[];
12593 export type Ipv6Address = string;
12594 export type Ipv6AddressList = String[];
12595 export interface Ipv6CidrBlock {
12596 /**
12597 * The IPv6 CIDR block.
12598 */
12599 Ipv6CidrBlock?: String;
12600 }
12601 export type Ipv6CidrBlockSet = Ipv6CidrBlock[];
12602 export interface Ipv6Range {
12603 /**
12604 * The IPv6 CIDR range. You can either specify a CIDR range or a source security group, not both. To specify a single IPv6 address, use the /128 prefix length.
12605 */
12606 CidrIpv6?: String;
12607 /**
12608 * A description for the security group rule that references this IPv6 address range. Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
12609 */
12610 Description?: String;
12611 }
12612 export type Ipv6RangeList = Ipv6Range[];
12613 export type Ipv6SupportValue = "enable"|"disable"|string;
12614 export type KeyNameStringList = String[];
12615 export interface KeyPair {
12616 /**
12617 * The SHA-1 digest of the DER encoded private key.
12618 */
12619 KeyFingerprint?: String;
12620 /**
12621 * An unencrypted PEM encoded RSA private key.
12622 */
12623 KeyMaterial?: String;
12624 /**
12625 * The name of the key pair.
12626 */
12627 KeyName?: String;
12628 }
12629 export interface KeyPairInfo {
12630 /**
12631 * If you used CreateKeyPair to create the key pair, this is the SHA-1 digest of the DER encoded private key. If you used ImportKeyPair to provide AWS the public key, this is the MD5 public key fingerprint as specified in section 4 of RFC4716.
12632 */
12633 KeyFingerprint?: String;
12634 /**
12635 * The name of the key pair.
12636 */
12637 KeyName?: String;
12638 }
12639 export type KeyPairList = KeyPairInfo[];
12640 export interface LaunchPermission {
12641 /**
12642 * The name of the group.
12643 */
12644 Group?: PermissionGroup;
12645 /**
12646 * The AWS account ID.
12647 */
12648 UserId?: String;
12649 }
12650 export type LaunchPermissionList = LaunchPermission[];
12651 export interface LaunchPermissionModifications {
12652 /**
12653 * The AWS account ID to add to the list of launch permissions for the AMI.
12654 */
12655 Add?: LaunchPermissionList;
12656 /**
12657 * The AWS account ID to remove from the list of launch permissions for the AMI.
12658 */
12659 Remove?: LaunchPermissionList;
12660 }
12661 export interface LaunchSpecification {
12662 /**
12663 * The Base64-encoded user data for the instance.
12664 */
12665 UserData?: String;
12666 /**
12667 * One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
12668 */
12669 SecurityGroups?: GroupIdentifierList;
12670 /**
12671 * Deprecated.
12672 */
12673 AddressingType?: String;
12674 /**
12675 * One or more block device mapping entries.
12676 */
12677 BlockDeviceMappings?: BlockDeviceMappingList;
12678 /**
12679 * Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance. Default: false
12680 */
12681 EbsOptimized?: Boolean;
12682 /**
12683 * The IAM instance profile.
12684 */
12685 IamInstanceProfile?: IamInstanceProfileSpecification;
12686 /**
12687 * The ID of the AMI.
12688 */
12689 ImageId?: String;
12690 /**
12691 * The instance type.
12692 */
12693 InstanceType?: InstanceType;
12694 /**
12695 * The ID of the kernel.
12696 */
12697 KernelId?: String;
12698 /**
12699 * The name of the key pair.
12700 */
12701 KeyName?: String;
12702 /**
12703 * One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.
12704 */
12705 NetworkInterfaces?: InstanceNetworkInterfaceSpecificationList;
12706 /**
12707 * The placement information for the instance.
12708 */
12709 Placement?: SpotPlacement;
12710 /**
12711 * The ID of the RAM disk.
12712 */
12713 RamdiskId?: String;
12714 /**
12715 * The ID of the subnet in which to launch the instance.
12716 */
12717 SubnetId?: String;
12718 Monitoring?: RunInstancesMonitoringEnabled;
12719 }
12720 export type LaunchSpecsList = SpotFleetLaunchSpecification[];
12721 export interface LaunchTemplate {
12722 /**
12723 * The ID of the launch template.
12724 */
12725 LaunchTemplateId?: String;
12726 /**
12727 * The name of the launch template.
12728 */
12729 LaunchTemplateName?: LaunchTemplateName;
12730 /**
12731 * The time launch template was created.
12732 */
12733 CreateTime?: DateTime;
12734 /**
12735 * The principal that created the launch template.
12736 */
12737 CreatedBy?: String;
12738 /**
12739 * The version number of the default version of the launch template.
12740 */
12741 DefaultVersionNumber?: Long;
12742 /**
12743 * The version number of the latest version of the launch template.
12744 */
12745 LatestVersionNumber?: Long;
12746 /**
12747 * The tags for the launch template.
12748 */
12749 Tags?: TagList;
12750 }
12751 export interface LaunchTemplateAndOverridesResponse {
12752 /**
12753 * The launch template.
12754 */
12755 LaunchTemplateSpecification?: FleetLaunchTemplateSpecification;
12756 /**
12757 * Any parameters that you specify override the same parameters in the launch template.
12758 */
12759 Overrides?: FleetLaunchTemplateOverrides;
12760 }
12761 export interface LaunchTemplateBlockDeviceMapping {
12762 /**
12763 * The device name.
12764 */
12765 DeviceName?: String;
12766 /**
12767 * The virtual device name (ephemeralN).
12768 */
12769 VirtualName?: String;
12770 /**
12771 * Information about the block device for an EBS volume.
12772 */
12773 Ebs?: LaunchTemplateEbsBlockDevice;
12774 /**
12775 * Suppresses the specified device included in the block device mapping of the AMI.
12776 */
12777 NoDevice?: String;
12778 }
12779 export type LaunchTemplateBlockDeviceMappingList = LaunchTemplateBlockDeviceMapping[];
12780 export interface LaunchTemplateBlockDeviceMappingRequest {
12781 /**
12782 * The device name (for example, /dev/sdh or xvdh).
12783 */
12784 DeviceName?: String;
12785 /**
12786 * The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with 2 available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume.
12787 */
12788 VirtualName?: String;
12789 /**
12790 * Parameters used to automatically set up EBS volumes when the instance is launched.
12791 */
12792 Ebs?: LaunchTemplateEbsBlockDeviceRequest;
12793 /**
12794 * Suppresses the specified device included in the block device mapping of the AMI.
12795 */
12796 NoDevice?: String;
12797 }
12798 export type LaunchTemplateBlockDeviceMappingRequestList = LaunchTemplateBlockDeviceMappingRequest[];
12799 export interface LaunchTemplateCapacityReservationSpecificationRequest {
12800 /**
12801 * Indicates the instance's Capacity Reservation preferences. Possible preferences include: open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
12802 */
12803 CapacityReservationPreference?: CapacityReservationPreference;
12804 /**
12805 * Information about the target Capacity Reservation.
12806 */
12807 CapacityReservationTarget?: CapacityReservationTarget;
12808 }
12809 export interface LaunchTemplateCapacityReservationSpecificationResponse {
12810 /**
12811 * Indicates the instance's Capacity Reservation preferences. Possible preferences include: open - The instance can run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone). none - The instance avoids running in a Capacity Reservation even if one is available. The instance runs in On-Demand capacity.
12812 */
12813 CapacityReservationPreference?: CapacityReservationPreference;
12814 /**
12815 * Information about the target Capacity Reservation.
12816 */
12817 CapacityReservationTarget?: CapacityReservationTargetResponse;
12818 }
12819 export interface LaunchTemplateConfig {
12820 /**
12821 * The launch template.
12822 */
12823 LaunchTemplateSpecification?: FleetLaunchTemplateSpecification;
12824 /**
12825 * Any parameters that you specify override the same parameters in the launch template.
12826 */
12827 Overrides?: LaunchTemplateOverridesList;
12828 }
12829 export type LaunchTemplateConfigList = LaunchTemplateConfig[];
12830 export interface LaunchTemplateCpuOptions {
12831 /**
12832 * The number of CPU cores for the instance.
12833 */
12834 CoreCount?: Integer;
12835 /**
12836 * The number of threads per CPU core.
12837 */
12838 ThreadsPerCore?: Integer;
12839 }
12840 export interface LaunchTemplateCpuOptionsRequest {
12841 /**
12842 * The number of CPU cores for the instance.
12843 */
12844 CoreCount?: Integer;
12845 /**
12846 * The number of threads per CPU core. To disable Intel Hyper-Threading Technology for the instance, specify a value of 1. Otherwise, specify the default value of 2.
12847 */
12848 ThreadsPerCore?: Integer;
12849 }
12850 export interface LaunchTemplateEbsBlockDevice {
12851 /**
12852 * Indicates whether the EBS volume is encrypted.
12853 */
12854 Encrypted?: Boolean;
12855 /**
12856 * Indicates whether the EBS volume is deleted on instance termination.
12857 */
12858 DeleteOnTermination?: Boolean;
12859 /**
12860 * The number of I/O operations per second (IOPS) that the volume supports.
12861 */
12862 Iops?: Integer;
12863 /**
12864 * The ARN of the AWS Key Management Service (AWS KMS) CMK used for encryption.
12865 */
12866 KmsKeyId?: String;
12867 /**
12868 * The ID of the snapshot.
12869 */
12870 SnapshotId?: String;
12871 /**
12872 * The size of the volume, in GiB.
12873 */
12874 VolumeSize?: Integer;
12875 /**
12876 * The volume type.
12877 */
12878 VolumeType?: VolumeType;
12879 }
12880 export interface LaunchTemplateEbsBlockDeviceRequest {
12881 /**
12882 * Indicates whether the EBS volume is encrypted. Encrypted volumes can only be attached to instances that support Amazon EBS encryption. If you are creating a volume from a snapshot, you can't specify an encryption value.
12883 */
12884 Encrypted?: Boolean;
12885 /**
12886 * Indicates whether the EBS volume is deleted on instance termination.
12887 */
12888 DeleteOnTermination?: Boolean;
12889 /**
12890 * The number of I/O operations per second (IOPS) that the volume supports. For io1, this represents the number of IOPS that are provisioned for the volume. For gp2, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information about General Purpose SSD baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide. Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.
12891 */
12892 Iops?: Integer;
12893 /**
12894 * The ARN of the AWS Key Management Service (AWS KMS) CMK used for encryption.
12895 */
12896 KmsKeyId?: String;
12897 /**
12898 * The ID of the snapshot.
12899 */
12900 SnapshotId?: String;
12901 /**
12902 * The size of the volume, in GiB. Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
12903 */
12904 VolumeSize?: Integer;
12905 /**
12906 * The volume type.
12907 */
12908 VolumeType?: VolumeType;
12909 }
12910 export interface LaunchTemplateElasticInferenceAccelerator {
12911 /**
12912 * The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
12913 */
12914 Type: String;
12915 }
12916 export type LaunchTemplateElasticInferenceAcceleratorList = LaunchTemplateElasticInferenceAccelerator[];
12917 export interface LaunchTemplateElasticInferenceAcceleratorResponse {
12918 /**
12919 * The type of elastic inference accelerator. The possible values are eia1.medium, eia1.large, and eia1.xlarge.
12920 */
12921 Type?: String;
12922 }
12923 export type LaunchTemplateElasticInferenceAcceleratorResponseList = LaunchTemplateElasticInferenceAcceleratorResponse[];
12924 export type LaunchTemplateErrorCode = "launchTemplateIdDoesNotExist"|"launchTemplateIdMalformed"|"launchTemplateNameDoesNotExist"|"launchTemplateNameMalformed"|"launchTemplateVersionDoesNotExist"|"unexpectedError"|string;
12925 export interface LaunchTemplateHibernationOptions {
12926 /**
12927 * If this parameter is set to true, the instance is enabled for hibernation; otherwise, it is not enabled for hibernation.
12928 */
12929 Configured?: Boolean;
12930 }
12931 export interface LaunchTemplateHibernationOptionsRequest {
12932 /**
12933 * If you set this parameter to true, the instance is enabled for hibernation. Default: false
12934 */
12935 Configured?: Boolean;
12936 }
12937 export interface LaunchTemplateIamInstanceProfileSpecification {
12938 /**
12939 * The Amazon Resource Name (ARN) of the instance profile.
12940 */
12941 Arn?: String;
12942 /**
12943 * The name of the instance profile.
12944 */
12945 Name?: String;
12946 }
12947 export interface LaunchTemplateIamInstanceProfileSpecificationRequest {
12948 /**
12949 * The Amazon Resource Name (ARN) of the instance profile.
12950 */
12951 Arn?: String;
12952 /**
12953 * The name of the instance profile.
12954 */
12955 Name?: String;
12956 }
12957 export interface LaunchTemplateInstanceMarketOptions {
12958 /**
12959 * The market type.
12960 */
12961 MarketType?: MarketType;
12962 /**
12963 * The options for Spot Instances.
12964 */
12965 SpotOptions?: LaunchTemplateSpotMarketOptions;
12966 }
12967 export interface LaunchTemplateInstanceMarketOptionsRequest {
12968 /**
12969 * The market type.
12970 */
12971 MarketType?: MarketType;
12972 /**
12973 * The options for Spot Instances.
12974 */
12975 SpotOptions?: LaunchTemplateSpotMarketOptionsRequest;
12976 }
12977 export interface LaunchTemplateInstanceNetworkInterfaceSpecification {
12978 /**
12979 * Indicates whether to associate a public IPv4 address with eth0 for a new network interface.
12980 */
12981 AssociatePublicIpAddress?: Boolean;
12982 /**
12983 * Indicates whether the network interface is deleted when the instance is terminated.
12984 */
12985 DeleteOnTermination?: Boolean;
12986 /**
12987 * A description for the network interface.
12988 */
12989 Description?: String;
12990 /**
12991 * The device index for the network interface attachment.
12992 */
12993 DeviceIndex?: Integer;
12994 /**
12995 * The IDs of one or more security groups.
12996 */
12997 Groups?: GroupIdStringList;
12998 /**
12999 * The number of IPv6 addresses for the network interface.
13000 */
13001 Ipv6AddressCount?: Integer;
13002 /**
13003 * The IPv6 addresses for the network interface.
13004 */
13005 Ipv6Addresses?: InstanceIpv6AddressList;
13006 /**
13007 * The ID of the network interface.
13008 */
13009 NetworkInterfaceId?: String;
13010 /**
13011 * The primary private IPv4 address of the network interface.
13012 */
13013 PrivateIpAddress?: String;
13014 /**
13015 * One or more private IPv4 addresses.
13016 */
13017 PrivateIpAddresses?: PrivateIpAddressSpecificationList;
13018 /**
13019 * The number of secondary private IPv4 addresses for the network interface.
13020 */
13021 SecondaryPrivateIpAddressCount?: Integer;
13022 /**
13023 * The ID of the subnet for the network interface.
13024 */
13025 SubnetId?: String;
13026 }
13027 export type LaunchTemplateInstanceNetworkInterfaceSpecificationList = LaunchTemplateInstanceNetworkInterfaceSpecification[];
13028 export interface LaunchTemplateInstanceNetworkInterfaceSpecificationRequest {
13029 /**
13030 * Associates a public IPv4 address with eth0 for a new network interface.
13031 */
13032 AssociatePublicIpAddress?: Boolean;
13033 /**
13034 * Indicates whether the network interface is deleted when the instance is terminated.
13035 */
13036 DeleteOnTermination?: Boolean;
13037 /**
13038 * A description for the network interface.
13039 */
13040 Description?: String;
13041 /**
13042 * The device index for the network interface attachment.
13043 */
13044 DeviceIndex?: Integer;
13045 /**
13046 * The IDs of one or more security groups.
13047 */
13048 Groups?: SecurityGroupIdStringList;
13049 /**
13050 * The number of IPv6 addresses to assign to a network interface. Amazon EC2 automatically selects the IPv6 addresses from the subnet range. You can't use this option if specifying specific IPv6 addresses.
13051 */
13052 Ipv6AddressCount?: Integer;
13053 /**
13054 * One or more specific IPv6 addresses from the IPv6 CIDR block range of your subnet. You can't use this option if you're specifying a number of IPv6 addresses.
13055 */
13056 Ipv6Addresses?: InstanceIpv6AddressListRequest;
13057 /**
13058 * The ID of the network interface.
13059 */
13060 NetworkInterfaceId?: String;
13061 /**
13062 * The primary private IPv4 address of the network interface.
13063 */
13064 PrivateIpAddress?: String;
13065 /**
13066 * One or more private IPv4 addresses.
13067 */
13068 PrivateIpAddresses?: PrivateIpAddressSpecificationList;
13069 /**
13070 * The number of secondary private IPv4 addresses to assign to a network interface.
13071 */
13072 SecondaryPrivateIpAddressCount?: Integer;
13073 /**
13074 * The ID of the subnet for the network interface.
13075 */
13076 SubnetId?: String;
13077 }
13078 export type LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList = LaunchTemplateInstanceNetworkInterfaceSpecificationRequest[];
13079 export interface LaunchTemplateLicenseConfiguration {
13080 /**
13081 * The Amazon Resource Name (ARN) of the license configuration.
13082 */
13083 LicenseConfigurationArn?: String;
13084 }
13085 export interface LaunchTemplateLicenseConfigurationRequest {
13086 /**
13087 * The Amazon Resource Name (ARN) of the license configuration.
13088 */
13089 LicenseConfigurationArn?: String;
13090 }
13091 export type LaunchTemplateLicenseList = LaunchTemplateLicenseConfiguration[];
13092 export type LaunchTemplateLicenseSpecificationListRequest = LaunchTemplateLicenseConfigurationRequest[];
13093 export type LaunchTemplateName = string;
13094 export type LaunchTemplateNameStringList = LaunchTemplateName[];
13095 export interface LaunchTemplateOverrides {
13096 /**
13097 * The instance type.
13098 */
13099 InstanceType?: InstanceType;
13100 /**
13101 * The maximum price per unit hour that you are willing to pay for a Spot Instance.
13102 */
13103 SpotPrice?: String;
13104 /**
13105 * The ID of the subnet in which to launch the instances.
13106 */
13107 SubnetId?: String;
13108 /**
13109 * The Availability Zone in which to launch the instances.
13110 */
13111 AvailabilityZone?: String;
13112 /**
13113 * The number of units provided by the specified instance type.
13114 */
13115 WeightedCapacity?: Double;
13116 /**
13117 * The priority for the launch template override. If OnDemandAllocationStrategy is set to prioritized, Spot Fleet uses priority to determine which launch template override to use first in fulfilling On-Demand capacity. The highest priority is launched first. Valid values are whole numbers starting at 0. The lower the number, the higher the priority. If no number is set, the launch template override has the lowest priority.
13118 */
13119 Priority?: Double;
13120 }
13121 export type LaunchTemplateOverridesList = LaunchTemplateOverrides[];
13122 export interface LaunchTemplatePlacement {
13123 /**
13124 * The Availability Zone of the instance.
13125 */
13126 AvailabilityZone?: String;
13127 /**
13128 * The affinity setting for the instance on the Dedicated Host.
13129 */
13130 Affinity?: String;
13131 /**
13132 * The name of the placement group for the instance.
13133 */
13134 GroupName?: String;
13135 /**
13136 * The ID of the Dedicated Host for the instance.
13137 */
13138 HostId?: String;
13139 /**
13140 * The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware.
13141 */
13142 Tenancy?: Tenancy;
13143 /**
13144 * Reserved for future use.
13145 */
13146 SpreadDomain?: String;
13147 }
13148 export interface LaunchTemplatePlacementRequest {
13149 /**
13150 * The Availability Zone for the instance.
13151 */
13152 AvailabilityZone?: String;
13153 /**
13154 * The affinity setting for an instance on a Dedicated Host.
13155 */
13156 Affinity?: String;
13157 /**
13158 * The name of the placement group for the instance.
13159 */
13160 GroupName?: String;
13161 /**
13162 * The ID of the Dedicated Host for the instance.
13163 */
13164 HostId?: String;
13165 /**
13166 * The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware.
13167 */
13168 Tenancy?: Tenancy;
13169 /**
13170 * Reserved for future use.
13171 */
13172 SpreadDomain?: String;
13173 }
13174 export type LaunchTemplateSet = LaunchTemplate[];
13175 export interface LaunchTemplateSpecification {
13176 /**
13177 * The ID of the launch template.
13178 */
13179 LaunchTemplateId?: String;
13180 /**
13181 * The name of the launch template.
13182 */
13183 LaunchTemplateName?: String;
13184 /**
13185 * The version number of the launch template. Default: The default version for the launch template.
13186 */
13187 Version?: String;
13188 }
13189 export interface LaunchTemplateSpotMarketOptions {
13190 /**
13191 * The maximum hourly price you're willing to pay for the Spot Instances.
13192 */
13193 MaxPrice?: String;
13194 /**
13195 * The Spot Instance request type.
13196 */
13197 SpotInstanceType?: SpotInstanceType;
13198 /**
13199 * The required duration for the Spot Instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).
13200 */
13201 BlockDurationMinutes?: Integer;
13202 /**
13203 * The end date of the request. For a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached.
13204 */
13205 ValidUntil?: DateTime;
13206 /**
13207 * The behavior when a Spot Instance is interrupted.
13208 */
13209 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
13210 }
13211 export interface LaunchTemplateSpotMarketOptionsRequest {
13212 /**
13213 * The maximum hourly price you're willing to pay for the Spot Instances.
13214 */
13215 MaxPrice?: String;
13216 /**
13217 * The Spot Instance request type.
13218 */
13219 SpotInstanceType?: SpotInstanceType;
13220 /**
13221 * The required duration for the Spot Instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).
13222 */
13223 BlockDurationMinutes?: Integer;
13224 /**
13225 * The end date of the request. For a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached. The default end date is 7 days from the current date.
13226 */
13227 ValidUntil?: DateTime;
13228 /**
13229 * The behavior when a Spot Instance is interrupted. The default is terminate.
13230 */
13231 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
13232 }
13233 export interface LaunchTemplateTagSpecification {
13234 /**
13235 * The type of resource.
13236 */
13237 ResourceType?: ResourceType;
13238 /**
13239 * The tags for the resource.
13240 */
13241 Tags?: TagList;
13242 }
13243 export type LaunchTemplateTagSpecificationList = LaunchTemplateTagSpecification[];
13244 export interface LaunchTemplateTagSpecificationRequest {
13245 /**
13246 * The type of resource to tag. Currently, the resource types that support tagging on creation are instance and volume. To tag a resource after it has been created, see CreateTags.
13247 */
13248 ResourceType?: ResourceType;
13249 /**
13250 * The tags to apply to the resource.
13251 */
13252 Tags?: TagList;
13253 }
13254 export type LaunchTemplateTagSpecificationRequestList = LaunchTemplateTagSpecificationRequest[];
13255 export interface LaunchTemplateVersion {
13256 /**
13257 * The ID of the launch template.
13258 */
13259 LaunchTemplateId?: String;
13260 /**
13261 * The name of the launch template.
13262 */
13263 LaunchTemplateName?: LaunchTemplateName;
13264 /**
13265 * The version number.
13266 */
13267 VersionNumber?: Long;
13268 /**
13269 * The description for the version.
13270 */
13271 VersionDescription?: VersionDescription;
13272 /**
13273 * The time the version was created.
13274 */
13275 CreateTime?: DateTime;
13276 /**
13277 * The principal that created the version.
13278 */
13279 CreatedBy?: String;
13280 /**
13281 * Indicates whether the version is the default version.
13282 */
13283 DefaultVersion?: Boolean;
13284 /**
13285 * Information about the launch template.
13286 */
13287 LaunchTemplateData?: ResponseLaunchTemplateData;
13288 }
13289 export type LaunchTemplateVersionSet = LaunchTemplateVersion[];
13290 export interface LaunchTemplatesMonitoring {
13291 /**
13292 * Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.
13293 */
13294 Enabled?: Boolean;
13295 }
13296 export interface LaunchTemplatesMonitoringRequest {
13297 /**
13298 * Specify true to enable detailed monitoring. Otherwise, basic monitoring is enabled.
13299 */
13300 Enabled?: Boolean;
13301 }
13302 export interface LicenseConfiguration {
13303 /**
13304 * The Amazon Resource Name (ARN) of the license configuration.
13305 */
13306 LicenseConfigurationArn?: String;
13307 }
13308 export interface LicenseConfigurationRequest {
13309 /**
13310 * The Amazon Resource Name (ARN) of the license configuration.
13311 */
13312 LicenseConfigurationArn?: String;
13313 }
13314 export type LicenseList = LicenseConfiguration[];
13315 export type LicenseSpecificationListRequest = LicenseConfigurationRequest[];
13316 export type ListingState = "available"|"sold"|"cancelled"|"pending"|string;
13317 export type ListingStatus = "active"|"pending"|"cancelled"|"closed"|string;
13318 export interface LoadBalancersConfig {
13319 /**
13320 * The Classic Load Balancers.
13321 */
13322 ClassicLoadBalancersConfig?: ClassicLoadBalancersConfig;
13323 /**
13324 * The target groups.
13325 */
13326 TargetGroupsConfig?: TargetGroupsConfig;
13327 }
13328 export interface LoadPermission {
13329 /**
13330 * The AWS account ID.
13331 */
13332 UserId?: String;
13333 /**
13334 * The name of the group.
13335 */
13336 Group?: PermissionGroup;
13337 }
13338 export type LoadPermissionList = LoadPermission[];
13339 export type LoadPermissionListRequest = LoadPermissionRequest[];
13340 export interface LoadPermissionModifications {
13341 /**
13342 * The load permissions to add.
13343 */
13344 Add?: LoadPermissionListRequest;
13345 /**
13346 * The load permissions to remove.
13347 */
13348 Remove?: LoadPermissionListRequest;
13349 }
13350 export interface LoadPermissionRequest {
13351 /**
13352 * The name of the group.
13353 */
13354 Group?: PermissionGroup;
13355 /**
13356 * The AWS account ID.
13357 */
13358 UserId?: String;
13359 }
13360 export type LogDestinationType = "cloud-watch-logs"|"s3"|string;
13361 export type Long = number;
13362 export type MarketType = "spot"|string;
13363 export type MaxResults = number;
13364 export interface ModifyCapacityReservationRequest {
13365 /**
13366 * The ID of the Capacity Reservation.
13367 */
13368 CapacityReservationId: String;
13369 /**
13370 * The number of instances for which to reserve capacity.
13371 */
13372 InstanceCount?: Integer;
13373 /**
13374 * The date and time at which the Capacity Reservation expires. When a Capacity Reservation expires, the reserved capacity is released and you can no longer launch instances into it. The Capacity Reservation's state changes to expired when it reaches its end date and time. The Capacity Reservation is cancelled within an hour from the specified time. For example, if you specify 5/31/2019, 13:30:55, the Capacity Reservation is guaranteed to end between 13:30:55 and 14:30:55 on 5/31/2019. You must provide an EndDate value if EndDateType is limited. Omit EndDate if EndDateType is unlimited.
13375 */
13376 EndDate?: DateTime;
13377 /**
13378 * Indicates the way in which the Capacity Reservation ends. A Capacity Reservation can have one of the following end types: unlimited - The Capacity Reservation remains active until you explicitly cancel it. Do not provide an EndDate value if EndDateType is unlimited. limited - The Capacity Reservation expires automatically at a specified date and time. You must provide an EndDate value if EndDateType is limited.
13379 */
13380 EndDateType?: EndDateType;
13381 /**
13382 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13383 */
13384 DryRun?: Boolean;
13385 }
13386 export interface ModifyCapacityReservationResult {
13387 /**
13388 * Information about the Capacity Reservation.
13389 */
13390 Return?: Boolean;
13391 }
13392 export interface ModifyClientVpnEndpointRequest {
13393 /**
13394 * The ID of the Client VPN endpoint to modify.
13395 */
13396 ClientVpnEndpointId: String;
13397 /**
13398 * The ARN of the server certificate to be used. The server certificate must be provisioned in AWS Certificate Manager (ACM).
13399 */
13400 ServerCertificateArn?: String;
13401 /**
13402 * Information about the client connection logging options. If you enable client connection logging, data about client connections is sent to a Cloudwatch Logs log stream. The following information is logged: Client connection requests Client connection results (successful and unsuccessful) Reasons for unsuccessful client connection requests Client connection termination time
13403 */
13404 ConnectionLogOptions?: ConnectionLogOptions;
13405 /**
13406 * Information about the DNS servers to be used by Client VPN connections. A Client VPN endpoint can have up to two DNS servers.
13407 */
13408 DnsServers?: DnsServersOptionsModifyStructure;
13409 /**
13410 * A brief description of the Client VPN endpoint.
13411 */
13412 Description?: String;
13413 /**
13414 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13415 */
13416 DryRun?: Boolean;
13417 }
13418 export interface ModifyClientVpnEndpointResult {
13419 /**
13420 * Returns true if the request succeeds; otherwise, it returns an error.
13421 */
13422 Return?: Boolean;
13423 }
13424 export interface ModifyFleetRequest {
13425 /**
13426 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13427 */
13428 DryRun?: Boolean;
13429 /**
13430 * Indicates whether running instances should be terminated if the total target capacity of the EC2 Fleet is decreased below the current size of the EC2 Fleet.
13431 */
13432 ExcessCapacityTerminationPolicy?: FleetExcessCapacityTerminationPolicy;
13433 /**
13434 * The ID of the EC2 Fleet.
13435 */
13436 FleetId: FleetIdentifier;
13437 /**
13438 * The size of the EC2 Fleet.
13439 */
13440 TargetCapacitySpecification: TargetCapacitySpecificationRequest;
13441 }
13442 export interface ModifyFleetResult {
13443 /**
13444 * Is true if the request succeeds, and an error otherwise.
13445 */
13446 Return?: Boolean;
13447 }
13448 export interface ModifyFpgaImageAttributeRequest {
13449 /**
13450 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13451 */
13452 DryRun?: Boolean;
13453 /**
13454 * The ID of the AFI.
13455 */
13456 FpgaImageId: String;
13457 /**
13458 * The name of the attribute.
13459 */
13460 Attribute?: FpgaImageAttributeName;
13461 /**
13462 * The operation type.
13463 */
13464 OperationType?: OperationType;
13465 /**
13466 * One or more AWS account IDs. This parameter is valid only when modifying the loadPermission attribute.
13467 */
13468 UserIds?: UserIdStringList;
13469 /**
13470 * One or more user groups. This parameter is valid only when modifying the loadPermission attribute.
13471 */
13472 UserGroups?: UserGroupStringList;
13473 /**
13474 * One or more product codes. After you add a product code to an AFI, it can't be removed. This parameter is valid only when modifying the productCodes attribute.
13475 */
13476 ProductCodes?: ProductCodeStringList;
13477 /**
13478 * The load permission for the AFI.
13479 */
13480 LoadPermission?: LoadPermissionModifications;
13481 /**
13482 * A description for the AFI.
13483 */
13484 Description?: String;
13485 /**
13486 * A name for the AFI.
13487 */
13488 Name?: String;
13489 }
13490 export interface ModifyFpgaImageAttributeResult {
13491 /**
13492 * Information about the attribute.
13493 */
13494 FpgaImageAttribute?: FpgaImageAttribute;
13495 }
13496 export interface ModifyHostsRequest {
13497 /**
13498 * Specify whether to enable or disable auto-placement.
13499 */
13500 AutoPlacement: AutoPlacement;
13501 /**
13502 * The IDs of the Dedicated Hosts to modify.
13503 */
13504 HostIds: RequestHostIdList;
13505 }
13506 export interface ModifyHostsResult {
13507 /**
13508 * The IDs of the Dedicated Hosts that were successfully modified.
13509 */
13510 Successful?: ResponseHostIdList;
13511 /**
13512 * The IDs of the Dedicated Hosts that could not be modified. Check whether the setting you requested can be used.
13513 */
13514 Unsuccessful?: UnsuccessfulItemList;
13515 }
13516 export interface ModifyIdFormatRequest {
13517 /**
13518 * The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | route-table | route-table-association | security-group | subnet | subnet-cidr-block-association | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. Alternatively, use the all-current option to include all resource types that are currently within their opt-in period for longer IDs.
13519 */
13520 Resource: String;
13521 /**
13522 * Indicate whether the resource should use longer IDs (17-character IDs).
13523 */
13524 UseLongIds: Boolean;
13525 }
13526 export interface ModifyIdentityIdFormatRequest {
13527 /**
13528 * The ARN of the principal, which can be an IAM user, IAM role, or the root user. Specify all to modify the ID format for all IAM users, IAM roles, and the root user of the account.
13529 */
13530 PrincipalArn: String;
13531 /**
13532 * The type of resource: bundle | conversion-task | customer-gateway | dhcp-options | elastic-ip-allocation | elastic-ip-association | export-task | flow-log | image | import-task | internet-gateway | network-acl | network-acl-association | network-interface | network-interface-attachment | prefix-list | route-table | route-table-association | security-group | subnet | subnet-cidr-block-association | vpc | vpc-cidr-block-association | vpc-endpoint | vpc-peering-connection | vpn-connection | vpn-gateway. Alternatively, use the all-current option to include all resource types that are currently within their opt-in period for longer IDs.
13533 */
13534 Resource: String;
13535 /**
13536 * Indicates whether the resource should use longer IDs (17-character IDs)
13537 */
13538 UseLongIds: Boolean;
13539 }
13540 export interface ModifyImageAttributeRequest {
13541 /**
13542 * The name of the attribute to modify. The valid values are description, launchPermission, and productCodes.
13543 */
13544 Attribute?: String;
13545 /**
13546 * A new description for the AMI.
13547 */
13548 Description?: AttributeValue;
13549 /**
13550 * The ID of the AMI.
13551 */
13552 ImageId: String;
13553 /**
13554 * A new launch permission for the AMI.
13555 */
13556 LaunchPermission?: LaunchPermissionModifications;
13557 /**
13558 * The operation type. This parameter can be used only when the Attribute parameter is launchPermission.
13559 */
13560 OperationType?: OperationType;
13561 /**
13562 * One or more DevPay product codes. After you add a product code to an AMI, it can't be removed.
13563 */
13564 ProductCodes?: ProductCodeStringList;
13565 /**
13566 * One or more user groups. This parameter can be used only when the Attribute parameter is launchPermission.
13567 */
13568 UserGroups?: UserGroupStringList;
13569 /**
13570 * One or more AWS account IDs. This parameter can be used only when the Attribute parameter is launchPermission.
13571 */
13572 UserIds?: UserIdStringList;
13573 /**
13574 * The value of the attribute being modified. This parameter can be used only when the Attribute parameter is description or productCodes.
13575 */
13576 Value?: String;
13577 /**
13578 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13579 */
13580 DryRun?: Boolean;
13581 }
13582 export interface ModifyInstanceAttributeRequest {
13583 /**
13584 * Specifies whether source/destination checking is enabled. A value of true means that checking is enabled, and false means that checking is disabled. This value must be false for a NAT instance to perform NAT.
13585 */
13586 SourceDestCheck?: AttributeBooleanValue;
13587 /**
13588 * The name of the attribute.
13589 */
13590 Attribute?: InstanceAttributeName;
13591 /**
13592 * Modifies the DeleteOnTermination attribute for volumes that are currently attached. The volume must be owned by the caller. If no value is specified for DeleteOnTermination, the default is true and the volume is deleted when the instance is terminated. To add instance store volumes to an Amazon EBS-backed instance, you must add them when you launch the instance. For more information, see Updating the Block Device Mapping when Launching an Instance in the Amazon Elastic Compute Cloud User Guide.
13593 */
13594 BlockDeviceMappings?: InstanceBlockDeviceMappingSpecificationList;
13595 /**
13596 * If the value is true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. You cannot use this parameter for Spot Instances.
13597 */
13598 DisableApiTermination?: AttributeBooleanValue;
13599 /**
13600 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13601 */
13602 DryRun?: Boolean;
13603 /**
13604 * Specifies whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance.
13605 */
13606 EbsOptimized?: AttributeBooleanValue;
13607 /**
13608 * Set to true to enable enhanced networking with ENA for the instance. This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.
13609 */
13610 EnaSupport?: AttributeBooleanValue;
13611 /**
13612 * [EC2-VPC] Changes the security groups of the instance. You must specify at least one security group, even if it's just the default security group for the VPC. You must specify the security group ID, not the security group name.
13613 */
13614 Groups?: GroupIdStringList;
13615 /**
13616 * The ID of the instance.
13617 */
13618 InstanceId: String;
13619 /**
13620 * Specifies whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
13621 */
13622 InstanceInitiatedShutdownBehavior?: AttributeValue;
13623 /**
13624 * Changes the instance type to the specified value. For more information, see Instance Types. If the instance type is not valid, the error returned is InvalidInstanceAttributeValue.
13625 */
13626 InstanceType?: AttributeValue;
13627 /**
13628 * Changes the instance's kernel to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.
13629 */
13630 Kernel?: AttributeValue;
13631 /**
13632 * Changes the instance's RAM disk to the specified value. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB.
13633 */
13634 Ramdisk?: AttributeValue;
13635 /**
13636 * Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the instance. There is no way to disable enhanced networking with the Intel 82599 Virtual Function interface at this time. This option is supported only for HVM instances. Specifying this option with a PV instance can make it unreachable.
13637 */
13638 SriovNetSupport?: AttributeValue;
13639 /**
13640 * Changes the instance's user data to the specified value. If you are using an AWS SDK or command line tool, base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide base64-encoded text.
13641 */
13642 UserData?: BlobAttributeValue;
13643 /**
13644 * A new value for the attribute. Use only with the kernel, ramdisk, userData, disableApiTermination, or instanceInitiatedShutdownBehavior attribute.
13645 */
13646 Value?: String;
13647 }
13648 export interface ModifyInstanceCapacityReservationAttributesRequest {
13649 /**
13650 * The ID of the instance to be modified.
13651 */
13652 InstanceId: String;
13653 /**
13654 * Information about the Capacity Reservation targeting option.
13655 */
13656 CapacityReservationSpecification: CapacityReservationSpecification;
13657 /**
13658 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13659 */
13660 DryRun?: Boolean;
13661 }
13662 export interface ModifyInstanceCapacityReservationAttributesResult {
13663 /**
13664 * Returns true if the request succeeds; otherwise, it returns an error.
13665 */
13666 Return?: Boolean;
13667 }
13668 export interface ModifyInstanceCreditSpecificationRequest {
13669 /**
13670 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13671 */
13672 DryRun?: Boolean;
13673 /**
13674 * A unique, case-sensitive token that you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.
13675 */
13676 ClientToken?: String;
13677 /**
13678 * Information about the credit option for CPU usage.
13679 */
13680 InstanceCreditSpecifications: InstanceCreditSpecificationListRequest;
13681 }
13682 export interface ModifyInstanceCreditSpecificationResult {
13683 /**
13684 * Information about the instances whose credit option for CPU usage was successfully modified.
13685 */
13686 SuccessfulInstanceCreditSpecifications?: SuccessfulInstanceCreditSpecificationSet;
13687 /**
13688 * Information about the instances whose credit option for CPU usage was not modified.
13689 */
13690 UnsuccessfulInstanceCreditSpecifications?: UnsuccessfulInstanceCreditSpecificationSet;
13691 }
13692 export interface ModifyInstanceEventStartTimeRequest {
13693 /**
13694 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13695 */
13696 DryRun?: Boolean;
13697 /**
13698 * The ID of the instance with the scheduled event.
13699 */
13700 InstanceId: String;
13701 /**
13702 * The ID of the event whose date and time you are modifying.
13703 */
13704 InstanceEventId: String;
13705 /**
13706 * The new date and time when the event will take place.
13707 */
13708 NotBefore: DateTime;
13709 }
13710 export interface ModifyInstanceEventStartTimeResult {
13711 Event?: InstanceStatusEvent;
13712 }
13713 export interface ModifyInstancePlacementRequest {
13714 /**
13715 * The affinity setting for the instance.
13716 */
13717 Affinity?: Affinity;
13718 /**
13719 * The name of the placement group in which to place the instance. For spread placement groups, the instance must have a tenancy of default. For cluster and partition placement groups, the instance must have a tenancy of default or dedicated. To remove an instance from a placement group, specify an empty string ("").
13720 */
13721 GroupName?: String;
13722 /**
13723 * The ID of the Dedicated Host with which to associate the instance.
13724 */
13725 HostId?: String;
13726 /**
13727 * The ID of the instance that you are modifying.
13728 */
13729 InstanceId: String;
13730 /**
13731 * The tenancy for the instance.
13732 */
13733 Tenancy?: HostTenancy;
13734 /**
13735 * Reserved for future use.
13736 */
13737 PartitionNumber?: Integer;
13738 }
13739 export interface ModifyInstancePlacementResult {
13740 /**
13741 * Is true if the request succeeds, and an error otherwise.
13742 */
13743 Return?: Boolean;
13744 }
13745 export interface ModifyLaunchTemplateRequest {
13746 /**
13747 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13748 */
13749 DryRun?: Boolean;
13750 /**
13751 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraint: Maximum 128 ASCII characters.
13752 */
13753 ClientToken?: String;
13754 /**
13755 * The ID of the launch template. You must specify either the launch template ID or launch template name in the request.
13756 */
13757 LaunchTemplateId?: String;
13758 /**
13759 * The name of the launch template. You must specify either the launch template ID or launch template name in the request.
13760 */
13761 LaunchTemplateName?: LaunchTemplateName;
13762 /**
13763 * The version number of the launch template to set as the default version.
13764 */
13765 DefaultVersion?: String;
13766 }
13767 export interface ModifyLaunchTemplateResult {
13768 /**
13769 * Information about the launch template.
13770 */
13771 LaunchTemplate?: LaunchTemplate;
13772 }
13773 export interface ModifyNetworkInterfaceAttributeRequest {
13774 /**
13775 * Information about the interface attachment. If modifying the 'delete on termination' attribute, you must specify the ID of the interface attachment.
13776 */
13777 Attachment?: NetworkInterfaceAttachmentChanges;
13778 /**
13779 * A description for the network interface.
13780 */
13781 Description?: AttributeValue;
13782 /**
13783 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13784 */
13785 DryRun?: Boolean;
13786 /**
13787 * Changes the security groups for the network interface. The new set of groups you specify replaces the current set. You must specify at least one group, even if it's just the default security group in the VPC. You must specify the ID of the security group, not the name.
13788 */
13789 Groups?: SecurityGroupIdStringList;
13790 /**
13791 * The ID of the network interface.
13792 */
13793 NetworkInterfaceId: String;
13794 /**
13795 * Indicates whether source/destination checking is enabled. A value of true means checking is enabled, and false means checking is disabled. This value must be false for a NAT instance to perform NAT. For more information, see NAT Instances in the Amazon Virtual Private Cloud User Guide.
13796 */
13797 SourceDestCheck?: AttributeBooleanValue;
13798 }
13799 export interface ModifyReservedInstancesRequest {
13800 /**
13801 * The IDs of the Reserved Instances to modify.
13802 */
13803 ReservedInstancesIds: ReservedInstancesIdStringList;
13804 /**
13805 * A unique, case-sensitive token you provide to ensure idempotency of your modification request. For more information, see Ensuring Idempotency.
13806 */
13807 ClientToken?: String;
13808 /**
13809 * The configuration settings for the Reserved Instances to modify.
13810 */
13811 TargetConfigurations: ReservedInstancesConfigurationList;
13812 }
13813 export interface ModifyReservedInstancesResult {
13814 /**
13815 * The ID for the modification.
13816 */
13817 ReservedInstancesModificationId?: String;
13818 }
13819 export interface ModifySnapshotAttributeRequest {
13820 /**
13821 * The snapshot attribute to modify. Only volume creation permissions can be modified.
13822 */
13823 Attribute?: SnapshotAttributeName;
13824 /**
13825 * A JSON representation of the snapshot attribute modification.
13826 */
13827 CreateVolumePermission?: CreateVolumePermissionModifications;
13828 /**
13829 * The group to modify for the snapshot.
13830 */
13831 GroupNames?: GroupNameStringList;
13832 /**
13833 * The type of operation to perform to the attribute.
13834 */
13835 OperationType?: OperationType;
13836 /**
13837 * The ID of the snapshot.
13838 */
13839 SnapshotId: String;
13840 /**
13841 * The account ID to modify for the snapshot.
13842 */
13843 UserIds?: UserIdStringList;
13844 /**
13845 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13846 */
13847 DryRun?: Boolean;
13848 }
13849 export interface ModifySpotFleetRequestRequest {
13850 /**
13851 * Indicates whether running Spot Instances should be terminated if the target capacity of the Spot Fleet request is decreased below the current size of the Spot Fleet.
13852 */
13853 ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy;
13854 /**
13855 * The ID of the Spot Fleet request.
13856 */
13857 SpotFleetRequestId: String;
13858 /**
13859 * The size of the fleet.
13860 */
13861 TargetCapacity?: Integer;
13862 }
13863 export interface ModifySpotFleetRequestResponse {
13864 /**
13865 * Is true if the request succeeds, and an error otherwise.
13866 */
13867 Return?: Boolean;
13868 }
13869 export interface ModifySubnetAttributeRequest {
13870 /**
13871 * Specify true to indicate that network interfaces created in the specified subnet should be assigned an IPv6 address. This includes a network interface that's created when launching an instance into the subnet (the instance therefore receives an IPv6 address). If you enable the IPv6 addressing feature for your subnet, your network interface or instance only receives an IPv6 address if it's created using version 2016-11-15 or later of the Amazon EC2 API.
13872 */
13873 AssignIpv6AddressOnCreation?: AttributeBooleanValue;
13874 /**
13875 * Specify true to indicate that network interfaces created in the specified subnet should be assigned a public IPv4 address. This includes a network interface that's created when launching an instance into the subnet (the instance therefore receives a public IPv4 address).
13876 */
13877 MapPublicIpOnLaunch?: AttributeBooleanValue;
13878 /**
13879 * The ID of the subnet.
13880 */
13881 SubnetId: String;
13882 }
13883 export interface ModifyTransitGatewayVpcAttachmentRequest {
13884 /**
13885 * The ID of the attachment.
13886 */
13887 TransitGatewayAttachmentId: String;
13888 /**
13889 * The IDs of one or more subnets to add. You can specify at most one subnet per Availability Zone.
13890 */
13891 AddSubnetIds?: ValueStringList;
13892 /**
13893 * The IDs of one or more subnets to remove.
13894 */
13895 RemoveSubnetIds?: ValueStringList;
13896 /**
13897 * The new VPC attachment options.
13898 */
13899 Options?: ModifyTransitGatewayVpcAttachmentRequestOptions;
13900 /**
13901 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13902 */
13903 DryRun?: Boolean;
13904 }
13905 export interface ModifyTransitGatewayVpcAttachmentRequestOptions {
13906 /**
13907 * Enable or disable DNS support. The default is enable.
13908 */
13909 DnsSupport?: DnsSupportValue;
13910 /**
13911 * Enable or disable IPv6 support. The default is enable.
13912 */
13913 Ipv6Support?: Ipv6SupportValue;
13914 }
13915 export interface ModifyTransitGatewayVpcAttachmentResult {
13916 /**
13917 * Information about the modified attachment.
13918 */
13919 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
13920 }
13921 export interface ModifyVolumeAttributeRequest {
13922 /**
13923 * Indicates whether the volume should be auto-enabled for I/O operations.
13924 */
13925 AutoEnableIO?: AttributeBooleanValue;
13926 /**
13927 * The ID of the volume.
13928 */
13929 VolumeId: String;
13930 /**
13931 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13932 */
13933 DryRun?: Boolean;
13934 }
13935 export interface ModifyVolumeRequest {
13936 /**
13937 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13938 */
13939 DryRun?: Boolean;
13940 /**
13941 * The ID of the volume.
13942 */
13943 VolumeId: String;
13944 /**
13945 * The target size of the volume, in GiB. The target volume size must be greater than or equal to than the existing size of the volume. For information about available EBS volume sizes, see Amazon EBS Volume Types. Default: If no size is specified, the existing size is retained.
13946 */
13947 Size?: Integer;
13948 /**
13949 * The target EBS volume type of the volume. Default: If no type is specified, the existing type is retained.
13950 */
13951 VolumeType?: VolumeType;
13952 /**
13953 * The target IOPS rate of the volume. This is only valid for Provisioned IOPS SSD (io1) volumes. For more information, see Provisioned IOPS SSD (io1) Volumes. Default: If no IOPS value is specified, the existing value is retained.
13954 */
13955 Iops?: Integer;
13956 }
13957 export interface ModifyVolumeResult {
13958 /**
13959 * Information about the volume modification.
13960 */
13961 VolumeModification?: VolumeModification;
13962 }
13963 export interface ModifyVpcAttributeRequest {
13964 /**
13965 * Indicates whether the instances launched in the VPC get DNS hostnames. If enabled, instances in the VPC get DNS hostnames; otherwise, they do not. You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute. You can only enable DNS hostnames if you've enabled DNS support.
13966 */
13967 EnableDnsHostnames?: AttributeBooleanValue;
13968 /**
13969 * Indicates whether the DNS resolution is supported for the VPC. If enabled, queries to the Amazon provided DNS server at the 169.254.169.253 IP address, or the reserved IP address at the base of the VPC network range "plus two" succeed. If disabled, the Amazon provided DNS service in the VPC that resolves public DNS hostnames to IP addresses is not enabled. You cannot modify the DNS resolution and DNS hostnames attributes in the same request. Use separate requests for each attribute.
13970 */
13971 EnableDnsSupport?: AttributeBooleanValue;
13972 /**
13973 * The ID of the VPC.
13974 */
13975 VpcId: String;
13976 }
13977 export interface ModifyVpcEndpointConnectionNotificationRequest {
13978 /**
13979 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
13980 */
13981 DryRun?: Boolean;
13982 /**
13983 * The ID of the notification.
13984 */
13985 ConnectionNotificationId: String;
13986 /**
13987 * The ARN for the SNS topic for the notification.
13988 */
13989 ConnectionNotificationArn?: String;
13990 /**
13991 * One or more events for the endpoint. Valid values are Accept, Connect, Delete, and Reject.
13992 */
13993 ConnectionEvents?: ValueStringList;
13994 }
13995 export interface ModifyVpcEndpointConnectionNotificationResult {
13996 /**
13997 * Returns true if the request succeeds; otherwise, it returns an error.
13998 */
13999 ReturnValue?: Boolean;
14000 }
14001 export interface ModifyVpcEndpointRequest {
14002 /**
14003 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
14004 */
14005 DryRun?: Boolean;
14006 /**
14007 * The ID of the endpoint.
14008 */
14009 VpcEndpointId: String;
14010 /**
14011 * (Gateway endpoint) Specify true to reset the policy document to the default policy. The default policy allows full access to the service.
14012 */
14013 ResetPolicy?: Boolean;
14014 /**
14015 * A policy to attach to the endpoint that controls access to the service. The policy must be in valid JSON format. If this parameter is not specified, we attach a default policy that allows full access to the service.
14016 */
14017 PolicyDocument?: String;
14018 /**
14019 * (Gateway endpoint) One or more route tables IDs to associate with the endpoint.
14020 */
14021 AddRouteTableIds?: ValueStringList;
14022 /**
14023 * (Gateway endpoint) One or more route table IDs to disassociate from the endpoint.
14024 */
14025 RemoveRouteTableIds?: ValueStringList;
14026 /**
14027 * (Interface endpoint) One or more subnet IDs in which to serve the endpoint.
14028 */
14029 AddSubnetIds?: ValueStringList;
14030 /**
14031 * (Interface endpoint) One or more subnets IDs in which to remove the endpoint.
14032 */
14033 RemoveSubnetIds?: ValueStringList;
14034 /**
14035 * (Interface endpoint) One or more security group IDs to associate with the network interface.
14036 */
14037 AddSecurityGroupIds?: ValueStringList;
14038 /**
14039 * (Interface endpoint) One or more security group IDs to disassociate from the network interface.
14040 */
14041 RemoveSecurityGroupIds?: ValueStringList;
14042 /**
14043 * (Interface endpoint) Indicate whether a private hosted zone is associated with the VPC.
14044 */
14045 PrivateDnsEnabled?: Boolean;
14046 }
14047 export interface ModifyVpcEndpointResult {
14048 /**
14049 * Returns true if the request succeeds; otherwise, it returns an error.
14050 */
14051 Return?: Boolean;
14052 }
14053 export interface ModifyVpcEndpointServiceConfigurationRequest {
14054 /**
14055 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
14056 */
14057 DryRun?: Boolean;
14058 /**
14059 * The ID of the service.
14060 */
14061 ServiceId: String;
14062 /**
14063 * Indicate whether requests to create an endpoint to your service must be accepted.
14064 */
14065 AcceptanceRequired?: Boolean;
14066 /**
14067 * The Amazon Resource Names (ARNs) of Network Load Balancers to add to your service configuration.
14068 */
14069 AddNetworkLoadBalancerArns?: ValueStringList;
14070 /**
14071 * The Amazon Resource Names (ARNs) of Network Load Balancers to remove from your service configuration.
14072 */
14073 RemoveNetworkLoadBalancerArns?: ValueStringList;
14074 }
14075 export interface ModifyVpcEndpointServiceConfigurationResult {
14076 /**
14077 * Returns true if the request succeeds; otherwise, it returns an error.
14078 */
14079 Return?: Boolean;
14080 }
14081 export interface ModifyVpcEndpointServicePermissionsRequest {
14082 /**
14083 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
14084 */
14085 DryRun?: Boolean;
14086 /**
14087 * The ID of the service.
14088 */
14089 ServiceId: String;
14090 /**
14091 * The Amazon Resource Names (ARN) of one or more principals. Permissions are granted to the principals in this list. To grant permissions to all principals, specify an asterisk (*).
14092 */
14093 AddAllowedPrincipals?: ValueStringList;
14094 /**
14095 * The Amazon Resource Names (ARN) of one or more principals. Permissions are revoked for principals in this list.
14096 */
14097 RemoveAllowedPrincipals?: ValueStringList;
14098 }
14099 export interface ModifyVpcEndpointServicePermissionsResult {
14100 /**
14101 * Returns true if the request succeeds; otherwise, it returns an error.
14102 */
14103 ReturnValue?: Boolean;
14104 }
14105 export interface ModifyVpcPeeringConnectionOptionsRequest {
14106 /**
14107 * The VPC peering connection options for the accepter VPC.
14108 */
14109 AccepterPeeringConnectionOptions?: PeeringConnectionOptionsRequest;
14110 /**
14111 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
14112 */
14113 DryRun?: Boolean;
14114 /**
14115 * The VPC peering connection options for the requester VPC.
14116 */
14117 RequesterPeeringConnectionOptions?: PeeringConnectionOptionsRequest;
14118 /**
14119 * The ID of the VPC peering connection.
14120 */
14121 VpcPeeringConnectionId: String;
14122 }
14123 export interface ModifyVpcPeeringConnectionOptionsResult {
14124 /**
14125 * Information about the VPC peering connection options for the accepter VPC.
14126 */
14127 AccepterPeeringConnectionOptions?: PeeringConnectionOptions;
14128 /**
14129 * Information about the VPC peering connection options for the requester VPC.
14130 */
14131 RequesterPeeringConnectionOptions?: PeeringConnectionOptions;
14132 }
14133 export interface ModifyVpcTenancyRequest {
14134 /**
14135 * The ID of the VPC.
14136 */
14137 VpcId: String;
14138 /**
14139 * The instance tenancy attribute for the VPC.
14140 */
14141 InstanceTenancy: VpcTenancy;
14142 /**
14143 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
14144 */
14145 DryRun?: Boolean;
14146 }
14147 export interface ModifyVpcTenancyResult {
14148 /**
14149 * Returns true if the request succeeds; otherwise, returns an error.
14150 */
14151 ReturnValue?: Boolean;
14152 }
14153 export interface MonitorInstancesRequest {
14154 /**
14155 * One or more instance IDs.
14156 */
14157 InstanceIds: InstanceIdStringList;
14158 /**
14159 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
14160 */
14161 DryRun?: Boolean;
14162 }
14163 export interface MonitorInstancesResult {
14164 /**
14165 * The monitoring information.
14166 */
14167 InstanceMonitorings?: InstanceMonitoringList;
14168 }
14169 export interface Monitoring {
14170 /**
14171 * Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.
14172 */
14173 State?: MonitoringState;
14174 }
14175 export type MonitoringState = "disabled"|"disabling"|"enabled"|"pending"|string;
14176 export interface MoveAddressToVpcRequest {
14177 /**
14178 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
14179 */
14180 DryRun?: Boolean;
14181 /**
14182 * The Elastic IP address.
14183 */
14184 PublicIp: String;
14185 }
14186 export interface MoveAddressToVpcResult {
14187 /**
14188 * The allocation ID for the Elastic IP address.
14189 */
14190 AllocationId?: String;
14191 /**
14192 * The status of the move of the IP address.
14193 */
14194 Status?: Status;
14195 }
14196 export type MoveStatus = "movingToVpc"|"restoringToClassic"|string;
14197 export interface MovingAddressStatus {
14198 /**
14199 * The status of the Elastic IP address that's being moved to the EC2-VPC platform, or restored to the EC2-Classic platform.
14200 */
14201 MoveStatus?: MoveStatus;
14202 /**
14203 * The Elastic IP address.
14204 */
14205 PublicIp?: String;
14206 }
14207 export type MovingAddressStatusSet = MovingAddressStatus[];
14208 export interface NatGateway {
14209 /**
14210 * The date and time the NAT gateway was created.
14211 */
14212 CreateTime?: DateTime;
14213 /**
14214 * The date and time the NAT gateway was deleted, if applicable.
14215 */
14216 DeleteTime?: DateTime;
14217 /**
14218 * If the NAT gateway could not be created, specifies the error code for the failure. (InsufficientFreeAddressesInSubnet | Gateway.NotAttached | InvalidAllocationID.NotFound | Resource.AlreadyAssociated | InternalError | InvalidSubnetID.NotFound)
14219 */
14220 FailureCode?: String;
14221 /**
14222 * If the NAT gateway could not be created, specifies the error message for the failure, that corresponds to the error code. For InsufficientFreeAddressesInSubnet: "Subnet has insufficient free addresses to create this NAT gateway" For Gateway.NotAttached: "Network vpc-xxxxxxxx has no Internet gateway attached" For InvalidAllocationID.NotFound: "Elastic IP address eipalloc-xxxxxxxx could not be associated with this NAT gateway" For Resource.AlreadyAssociated: "Elastic IP address eipalloc-xxxxxxxx is already associated" For InternalError: "Network interface eni-xxxxxxxx, created and used internally by this NAT gateway is in an invalid state. Please try again." For InvalidSubnetID.NotFound: "The specified subnet subnet-xxxxxxxx does not exist or could not be found."
14223 */
14224 FailureMessage?: String;
14225 /**
14226 * Information about the IP addresses and network interface associated with the NAT gateway.
14227 */
14228 NatGatewayAddresses?: NatGatewayAddressList;
14229 /**
14230 * The ID of the NAT gateway.
14231 */
14232 NatGatewayId?: String;
14233 /**
14234 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
14235 */
14236 ProvisionedBandwidth?: ProvisionedBandwidth;
14237 /**
14238 * The state of the NAT gateway. pending: The NAT gateway is being created and is not ready to process traffic. failed: The NAT gateway could not be created. Check the failureCode and failureMessage fields for the reason. available: The NAT gateway is able to process traffic. This status remains until you delete the NAT gateway, and does not indicate the health of the NAT gateway. deleting: The NAT gateway is in the process of being terminated and may still be processing traffic. deleted: The NAT gateway has been terminated and is no longer processing traffic.
14239 */
14240 State?: NatGatewayState;
14241 /**
14242 * The ID of the subnet in which the NAT gateway is located.
14243 */
14244 SubnetId?: String;
14245 /**
14246 * The ID of the VPC in which the NAT gateway is located.
14247 */
14248 VpcId?: String;
14249 /**
14250 * The tags for the NAT gateway.
14251 */
14252 Tags?: TagList;
14253 }
14254 export interface NatGatewayAddress {
14255 /**
14256 * The allocation ID of the Elastic IP address that's associated with the NAT gateway.
14257 */
14258 AllocationId?: String;
14259 /**
14260 * The ID of the network interface associated with the NAT gateway.
14261 */
14262 NetworkInterfaceId?: String;
14263 /**
14264 * The private IP address associated with the Elastic IP address.
14265 */
14266 PrivateIp?: String;
14267 /**
14268 * The Elastic IP address associated with the NAT gateway.
14269 */
14270 PublicIp?: String;
14271 }
14272 export type NatGatewayAddressList = NatGatewayAddress[];
14273 export type NatGatewayList = NatGateway[];
14274 export type NatGatewayState = "pending"|"failed"|"available"|"deleting"|"deleted"|string;
14275 export interface NetworkAcl {
14276 /**
14277 * Any associations between the network ACL and one or more subnets
14278 */
14279 Associations?: NetworkAclAssociationList;
14280 /**
14281 * One or more entries (rules) in the network ACL.
14282 */
14283 Entries?: NetworkAclEntryList;
14284 /**
14285 * Indicates whether this is the default network ACL for the VPC.
14286 */
14287 IsDefault?: Boolean;
14288 /**
14289 * The ID of the network ACL.
14290 */
14291 NetworkAclId?: String;
14292 /**
14293 * Any tags assigned to the network ACL.
14294 */
14295 Tags?: TagList;
14296 /**
14297 * The ID of the VPC for the network ACL.
14298 */
14299 VpcId?: String;
14300 /**
14301 * The ID of the AWS account that owns the network ACL.
14302 */
14303 OwnerId?: String;
14304 }
14305 export interface NetworkAclAssociation {
14306 /**
14307 * The ID of the association between a network ACL and a subnet.
14308 */
14309 NetworkAclAssociationId?: String;
14310 /**
14311 * The ID of the network ACL.
14312 */
14313 NetworkAclId?: String;
14314 /**
14315 * The ID of the subnet.
14316 */
14317 SubnetId?: String;
14318 }
14319 export type NetworkAclAssociationList = NetworkAclAssociation[];
14320 export interface NetworkAclEntry {
14321 /**
14322 * The IPv4 network range to allow or deny, in CIDR notation.
14323 */
14324 CidrBlock?: String;
14325 /**
14326 * Indicates whether the rule is an egress rule (applied to traffic leaving the subnet).
14327 */
14328 Egress?: Boolean;
14329 /**
14330 * ICMP protocol: The ICMP type and code.
14331 */
14332 IcmpTypeCode?: IcmpTypeCode;
14333 /**
14334 * The IPv6 network range to allow or deny, in CIDR notation.
14335 */
14336 Ipv6CidrBlock?: String;
14337 /**
14338 * TCP or UDP protocols: The range of ports the rule applies to.
14339 */
14340 PortRange?: PortRange;
14341 /**
14342 * The protocol number. A value of "-1" means all protocols.
14343 */
14344 Protocol?: String;
14345 /**
14346 * Indicates whether to allow or deny the traffic that matches the rule.
14347 */
14348 RuleAction?: RuleAction;
14349 /**
14350 * The rule number for the entry. ACL entries are processed in ascending order by rule number.
14351 */
14352 RuleNumber?: Integer;
14353 }
14354 export type NetworkAclEntryList = NetworkAclEntry[];
14355 export type NetworkAclList = NetworkAcl[];
14356 export interface NetworkInterface {
14357 /**
14358 * The association information for an Elastic IP address (IPv4) associated with the network interface.
14359 */
14360 Association?: NetworkInterfaceAssociation;
14361 /**
14362 * The network interface attachment.
14363 */
14364 Attachment?: NetworkInterfaceAttachment;
14365 /**
14366 * The Availability Zone.
14367 */
14368 AvailabilityZone?: String;
14369 /**
14370 * A description.
14371 */
14372 Description?: String;
14373 /**
14374 * Any security groups for the network interface.
14375 */
14376 Groups?: GroupIdentifierList;
14377 /**
14378 * The type of interface.
14379 */
14380 InterfaceType?: NetworkInterfaceType;
14381 /**
14382 * The IPv6 addresses associated with the network interface.
14383 */
14384 Ipv6Addresses?: NetworkInterfaceIpv6AddressesList;
14385 /**
14386 * The MAC address.
14387 */
14388 MacAddress?: String;
14389 /**
14390 * The ID of the network interface.
14391 */
14392 NetworkInterfaceId?: String;
14393 /**
14394 * The AWS account ID of the owner of the network interface.
14395 */
14396 OwnerId?: String;
14397 /**
14398 * The private DNS name.
14399 */
14400 PrivateDnsName?: String;
14401 /**
14402 * The IPv4 address of the network interface within the subnet.
14403 */
14404 PrivateIpAddress?: String;
14405 /**
14406 * The private IPv4 addresses associated with the network interface.
14407 */
14408 PrivateIpAddresses?: NetworkInterfacePrivateIpAddressList;
14409 /**
14410 * The ID of the entity that launched the instance on your behalf (for example, AWS Management Console or Auto Scaling).
14411 */
14412 RequesterId?: String;
14413 /**
14414 * Indicates whether the network interface is being managed by AWS.
14415 */
14416 RequesterManaged?: Boolean;
14417 /**
14418 * Indicates whether traffic to or from the instance is validated.
14419 */
14420 SourceDestCheck?: Boolean;
14421 /**
14422 * The status of the network interface.
14423 */
14424 Status?: NetworkInterfaceStatus;
14425 /**
14426 * The ID of the subnet.
14427 */
14428 SubnetId?: String;
14429 /**
14430 * Any tags assigned to the network interface.
14431 */
14432 TagSet?: TagList;
14433 /**
14434 * The ID of the VPC.
14435 */
14436 VpcId?: String;
14437 }
14438 export interface NetworkInterfaceAssociation {
14439 /**
14440 * The allocation ID.
14441 */
14442 AllocationId?: String;
14443 /**
14444 * The association ID.
14445 */
14446 AssociationId?: String;
14447 /**
14448 * The ID of the Elastic IP address owner.
14449 */
14450 IpOwnerId?: String;
14451 /**
14452 * The public DNS name.
14453 */
14454 PublicDnsName?: String;
14455 /**
14456 * The address of the Elastic IP address bound to the network interface.
14457 */
14458 PublicIp?: String;
14459 }
14460 export interface NetworkInterfaceAttachment {
14461 /**
14462 * The timestamp indicating when the attachment initiated.
14463 */
14464 AttachTime?: DateTime;
14465 /**
14466 * The ID of the network interface attachment.
14467 */
14468 AttachmentId?: String;
14469 /**
14470 * Indicates whether the network interface is deleted when the instance is terminated.
14471 */
14472 DeleteOnTermination?: Boolean;
14473 /**
14474 * The device index of the network interface attachment on the instance.
14475 */
14476 DeviceIndex?: Integer;
14477 /**
14478 * The ID of the instance.
14479 */
14480 InstanceId?: String;
14481 /**
14482 * The AWS account ID of the owner of the instance.
14483 */
14484 InstanceOwnerId?: String;
14485 /**
14486 * The attachment state.
14487 */
14488 Status?: AttachmentStatus;
14489 }
14490 export interface NetworkInterfaceAttachmentChanges {
14491 /**
14492 * The ID of the network interface attachment.
14493 */
14494 AttachmentId?: String;
14495 /**
14496 * Indicates whether the network interface is deleted when the instance is terminated.
14497 */
14498 DeleteOnTermination?: Boolean;
14499 }
14500 export type NetworkInterfaceAttribute = "description"|"groupSet"|"sourceDestCheck"|"attachment"|string;
14501 export type NetworkInterfaceIdList = String[];
14502 export interface NetworkInterfaceIpv6Address {
14503 /**
14504 * The IPv6 address.
14505 */
14506 Ipv6Address?: String;
14507 }
14508 export type NetworkInterfaceIpv6AddressesList = NetworkInterfaceIpv6Address[];
14509 export type NetworkInterfaceList = NetworkInterface[];
14510 export interface NetworkInterfacePermission {
14511 /**
14512 * The ID of the network interface permission.
14513 */
14514 NetworkInterfacePermissionId?: String;
14515 /**
14516 * The ID of the network interface.
14517 */
14518 NetworkInterfaceId?: String;
14519 /**
14520 * The AWS account ID.
14521 */
14522 AwsAccountId?: String;
14523 /**
14524 * The AWS service.
14525 */
14526 AwsService?: String;
14527 /**
14528 * The type of permission.
14529 */
14530 Permission?: InterfacePermissionType;
14531 /**
14532 * Information about the state of the permission.
14533 */
14534 PermissionState?: NetworkInterfacePermissionState;
14535 }
14536 export type NetworkInterfacePermissionIdList = String[];
14537 export type NetworkInterfacePermissionList = NetworkInterfacePermission[];
14538 export interface NetworkInterfacePermissionState {
14539 /**
14540 * The state of the permission.
14541 */
14542 State?: NetworkInterfacePermissionStateCode;
14543 /**
14544 * A status message, if applicable.
14545 */
14546 StatusMessage?: String;
14547 }
14548 export type NetworkInterfacePermissionStateCode = "pending"|"granted"|"revoking"|"revoked"|string;
14549 export interface NetworkInterfacePrivateIpAddress {
14550 /**
14551 * The association information for an Elastic IP address (IPv4) associated with the network interface.
14552 */
14553 Association?: NetworkInterfaceAssociation;
14554 /**
14555 * Indicates whether this IPv4 address is the primary private IPv4 address of the network interface.
14556 */
14557 Primary?: Boolean;
14558 /**
14559 * The private DNS name.
14560 */
14561 PrivateDnsName?: String;
14562 /**
14563 * The private IPv4 address.
14564 */
14565 PrivateIpAddress?: String;
14566 }
14567 export type NetworkInterfacePrivateIpAddressList = NetworkInterfacePrivateIpAddress[];
14568 export type NetworkInterfaceStatus = "available"|"associated"|"attaching"|"in-use"|"detaching"|string;
14569 export type NetworkInterfaceType = "interface"|"natGateway"|string;
14570 export interface NewDhcpConfiguration {
14571 Key?: String;
14572 Values?: ValueStringList;
14573 }
14574 export type NewDhcpConfigurationList = NewDhcpConfiguration[];
14575 export type NextToken = string;
14576 export type OccurrenceDayRequestSet = Integer[];
14577 export type OccurrenceDaySet = Integer[];
14578 export type OfferingClassType = "standard"|"convertible"|string;
14579 export type OfferingTypeValues = "Heavy Utilization"|"Medium Utilization"|"Light Utilization"|"No Upfront"|"Partial Upfront"|"All Upfront"|string;
14580 export type OnDemandAllocationStrategy = "lowestPrice"|"prioritized"|string;
14581 export interface OnDemandOptions {
14582 /**
14583 * The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowest-price, EC2 Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized, EC2 Fleet uses the priority that you assigned to each launch template override, launching the highest priority first. If you do not specify a value, EC2 Fleet defaults to lowest-price.
14584 */
14585 AllocationStrategy?: FleetOnDemandAllocationStrategy;
14586 /**
14587 * Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet.
14588 */
14589 SingleInstanceType?: Boolean;
14590 /**
14591 * Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.
14592 */
14593 SingleAvailabilityZone?: Boolean;
14594 /**
14595 * The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.
14596 */
14597 MinTargetCapacity?: Integer;
14598 }
14599 export interface OnDemandOptionsRequest {
14600 /**
14601 * The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowest-price, EC2 Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized, EC2 Fleet uses the priority that you assigned to each launch template override, launching the highest priority first. If you do not specify a value, EC2 Fleet defaults to lowest-price.
14602 */
14603 AllocationStrategy?: FleetOnDemandAllocationStrategy;
14604 /**
14605 * Indicates that the fleet uses a single instance type to launch all On-Demand Instances in the fleet.
14606 */
14607 SingleInstanceType?: Boolean;
14608 /**
14609 * Indicates that the fleet launches all On-Demand Instances into a single Availability Zone.
14610 */
14611 SingleAvailabilityZone?: Boolean;
14612 /**
14613 * The minimum target capacity for On-Demand Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.
14614 */
14615 MinTargetCapacity?: Integer;
14616 }
14617 export type OperationType = "add"|"remove"|string;
14618 export type OwnerStringList = String[];
14619 export type PaymentOption = "AllUpfront"|"PartialUpfront"|"NoUpfront"|string;
14620 export interface PciId {
14621 /**
14622 * The ID of the device.
14623 */
14624 DeviceId?: String;
14625 /**
14626 * The ID of the vendor.
14627 */
14628 VendorId?: String;
14629 /**
14630 * The ID of the subsystem.
14631 */
14632 SubsystemId?: String;
14633 /**
14634 * The ID of the vendor for the subsystem.
14635 */
14636 SubsystemVendorId?: String;
14637 }
14638 export interface PeeringConnectionOptions {
14639 /**
14640 * If true, the public DNS hostnames of instances in the specified VPC resolve to private IP addresses when queried from instances in the peer VPC.
14641 */
14642 AllowDnsResolutionFromRemoteVpc?: Boolean;
14643 /**
14644 * If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC using ClassicLink to instances in a peer VPC.
14645 */
14646 AllowEgressFromLocalClassicLinkToRemoteVpc?: Boolean;
14647 /**
14648 * If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC using ClassicLink.
14649 */
14650 AllowEgressFromLocalVpcToRemoteClassicLink?: Boolean;
14651 }
14652 export interface PeeringConnectionOptionsRequest {
14653 /**
14654 * If true, enables a local VPC to resolve public DNS hostnames to private IP addresses when queried from instances in the peer VPC.
14655 */
14656 AllowDnsResolutionFromRemoteVpc?: Boolean;
14657 /**
14658 * If true, enables outbound communication from an EC2-Classic instance that's linked to a local VPC using ClassicLink to instances in a peer VPC.
14659 */
14660 AllowEgressFromLocalClassicLinkToRemoteVpc?: Boolean;
14661 /**
14662 * If true, enables outbound communication from instances in a local VPC to an EC2-Classic instance that's linked to a peer VPC using ClassicLink.
14663 */
14664 AllowEgressFromLocalVpcToRemoteClassicLink?: Boolean;
14665 }
14666 export type PermissionGroup = "all"|string;
14667 export interface Placement {
14668 /**
14669 * The Availability Zone of the instance.
14670 */
14671 AvailabilityZone?: String;
14672 /**
14673 * The affinity setting for the instance on the Dedicated Host. This parameter is not supported for the ImportInstance command.
14674 */
14675 Affinity?: String;
14676 /**
14677 * The name of the placement group the instance is in.
14678 */
14679 GroupName?: String;
14680 /**
14681 * The number of the partition the instance is in. Valid only if the placement group strategy is set to partition.
14682 */
14683 PartitionNumber?: Integer;
14684 /**
14685 * The ID of the Dedicated Host on which the instance resides. This parameter is not supported for the ImportInstance command.
14686 */
14687 HostId?: String;
14688 /**
14689 * The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for the ImportInstance command.
14690 */
14691 Tenancy?: Tenancy;
14692 /**
14693 * Reserved for future use.
14694 */
14695 SpreadDomain?: String;
14696 }
14697 export interface PlacementGroup {
14698 /**
14699 * The name of the placement group.
14700 */
14701 GroupName?: String;
14702 /**
14703 * The state of the placement group.
14704 */
14705 State?: PlacementGroupState;
14706 /**
14707 * The placement strategy.
14708 */
14709 Strategy?: PlacementStrategy;
14710 /**
14711 * The number of partitions. Valid only if strategy is set to partition.
14712 */
14713 PartitionCount?: Integer;
14714 }
14715 export type PlacementGroupList = PlacementGroup[];
14716 export type PlacementGroupState = "pending"|"available"|"deleting"|"deleted"|string;
14717 export type PlacementGroupStringList = String[];
14718 export interface PlacementResponse {
14719 /**
14720 * The name of the placement group the instance is in.
14721 */
14722 GroupName?: String;
14723 }
14724 export type PlacementStrategy = "cluster"|"spread"|"partition"|string;
14725 export type PlatformValues = "Windows"|string;
14726 export type PoolMaxResults = number;
14727 export interface PortRange {
14728 /**
14729 * The first port in the range.
14730 */
14731 From?: Integer;
14732 /**
14733 * The last port in the range.
14734 */
14735 To?: Integer;
14736 }
14737 export interface PrefixList {
14738 /**
14739 * The IP address range of the AWS service.
14740 */
14741 Cidrs?: ValueStringList;
14742 /**
14743 * The ID of the prefix.
14744 */
14745 PrefixListId?: String;
14746 /**
14747 * The name of the prefix.
14748 */
14749 PrefixListName?: String;
14750 }
14751 export interface PrefixListId {
14752 /**
14753 * A description for the security group rule that references this prefix list ID. Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
14754 */
14755 Description?: String;
14756 /**
14757 * The ID of the prefix.
14758 */
14759 PrefixListId?: String;
14760 }
14761 export type PrefixListIdList = PrefixListId[];
14762 export type PrefixListIdSet = String[];
14763 export type PrefixListSet = PrefixList[];
14764 export interface PriceSchedule {
14765 /**
14766 * The current price schedule, as determined by the term remaining for the Reserved Instance in the listing. A specific price schedule is always in effect, but only one price schedule can be active at any time. Take, for example, a Reserved Instance listing that has five months remaining in its term. When you specify price schedules for five months and two months, this means that schedule 1, covering the first three months of the remaining term, will be active during months 5, 4, and 3. Then schedule 2, covering the last two months of the term, will be active for months 2 and 1.
14767 */
14768 Active?: Boolean;
14769 /**
14770 * The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.
14771 */
14772 CurrencyCode?: CurrencyCodeValues;
14773 /**
14774 * The fixed price for the term.
14775 */
14776 Price?: Double;
14777 /**
14778 * The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.
14779 */
14780 Term?: Long;
14781 }
14782 export type PriceScheduleList = PriceSchedule[];
14783 export interface PriceScheduleSpecification {
14784 /**
14785 * The currency for transacting the Reserved Instance resale. At this time, the only supported currency is USD.
14786 */
14787 CurrencyCode?: CurrencyCodeValues;
14788 /**
14789 * The fixed price for the term.
14790 */
14791 Price?: Double;
14792 /**
14793 * The number of months remaining in the reservation. For example, 2 is the second to the last month before the capacity reservation expires.
14794 */
14795 Term?: Long;
14796 }
14797 export type PriceScheduleSpecificationList = PriceScheduleSpecification[];
14798 export interface PricingDetail {
14799 /**
14800 * The number of reservations available for the price.
14801 */
14802 Count?: Integer;
14803 /**
14804 * The price per instance.
14805 */
14806 Price?: Double;
14807 }
14808 export type PricingDetailsList = PricingDetail[];
14809 export interface PrincipalIdFormat {
14810 /**
14811 * PrincipalIdFormatARN description
14812 */
14813 Arn?: String;
14814 /**
14815 * PrincipalIdFormatStatuses description
14816 */
14817 Statuses?: IdFormatList;
14818 }
14819 export type PrincipalIdFormatList = PrincipalIdFormat[];
14820 export type PrincipalType = "All"|"Service"|"OrganizationUnit"|"Account"|"User"|"Role"|string;
14821 export type PrivateIpAddressConfigSet = ScheduledInstancesPrivateIpAddressConfig[];
14822 export interface PrivateIpAddressSpecification {
14823 /**
14824 * Indicates whether the private IPv4 address is the primary private IPv4 address. Only one IPv4 address can be designated as primary.
14825 */
14826 Primary?: Boolean;
14827 /**
14828 * The private IPv4 addresses.
14829 */
14830 PrivateIpAddress?: String;
14831 }
14832 export type PrivateIpAddressSpecificationList = PrivateIpAddressSpecification[];
14833 export type PrivateIpAddressStringList = String[];
14834 export interface ProductCode {
14835 /**
14836 * The product code.
14837 */
14838 ProductCodeId?: String;
14839 /**
14840 * The type of product code.
14841 */
14842 ProductCodeType?: ProductCodeValues;
14843 }
14844 export type ProductCodeList = ProductCode[];
14845 export type ProductCodeStringList = String[];
14846 export type ProductCodeValues = "devpay"|"marketplace"|string;
14847 export type ProductDescriptionList = String[];
14848 export interface PropagatingVgw {
14849 /**
14850 * The ID of the virtual private gateway.
14851 */
14852 GatewayId?: String;
14853 }
14854 export type PropagatingVgwList = PropagatingVgw[];
14855 export interface ProvisionByoipCidrRequest {
14856 /**
14857 * The public IPv4 address range, in CIDR notation. The most specific prefix that you can specify is /24. The address range cannot overlap with another address range that you've brought to this or another region.
14858 */
14859 Cidr: String;
14860 /**
14861 * A signed document that proves that you are authorized to bring the specified IP address range to Amazon using BYOIP.
14862 */
14863 CidrAuthorizationContext?: CidrAuthorizationContext;
14864 /**
14865 * A description for the address range and the address pool.
14866 */
14867 Description?: String;
14868 /**
14869 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
14870 */
14871 DryRun?: Boolean;
14872 }
14873 export interface ProvisionByoipCidrResult {
14874 /**
14875 * Information about the address pool.
14876 */
14877 ByoipCidr?: ByoipCidr;
14878 }
14879 export interface ProvisionedBandwidth {
14880 /**
14881 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
14882 */
14883 ProvisionTime?: DateTime;
14884 /**
14885 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
14886 */
14887 Provisioned?: String;
14888 /**
14889 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
14890 */
14891 RequestTime?: DateTime;
14892 /**
14893 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
14894 */
14895 Requested?: String;
14896 /**
14897 * Reserved. If you need to sustain traffic greater than the documented limits, contact us through the Support Center.
14898 */
14899 Status?: String;
14900 }
14901 export type PublicIpStringList = String[];
14902 export interface PublicIpv4Pool {
14903 /**
14904 * The ID of the IPv4 address pool.
14905 */
14906 PoolId?: String;
14907 /**
14908 * A description of the address pool.
14909 */
14910 Description?: String;
14911 /**
14912 * The address ranges.
14913 */
14914 PoolAddressRanges?: PublicIpv4PoolRangeSet;
14915 /**
14916 * The total number of addresses.
14917 */
14918 TotalAddressCount?: Integer;
14919 /**
14920 * The total number of available addresses.
14921 */
14922 TotalAvailableAddressCount?: Integer;
14923 }
14924 export interface PublicIpv4PoolRange {
14925 /**
14926 * The first IP address in the range.
14927 */
14928 FirstAddress?: String;
14929 /**
14930 * The last IP address in the range.
14931 */
14932 LastAddress?: String;
14933 /**
14934 * The number of addresses in the range.
14935 */
14936 AddressCount?: Integer;
14937 /**
14938 * The number of available addresses in the range.
14939 */
14940 AvailableAddressCount?: Integer;
14941 }
14942 export type PublicIpv4PoolRangeSet = PublicIpv4PoolRange[];
14943 export type PublicIpv4PoolSet = PublicIpv4Pool[];
14944 export interface Purchase {
14945 /**
14946 * The currency in which the UpfrontPrice and HourlyPrice amounts are specified. At this time, the only supported currency is USD.
14947 */
14948 CurrencyCode?: CurrencyCodeValues;
14949 /**
14950 * The duration of the reservation's term in seconds.
14951 */
14952 Duration?: Integer;
14953 /**
14954 * The IDs of the Dedicated Hosts associated with the reservation.
14955 */
14956 HostIdSet?: ResponseHostIdSet;
14957 /**
14958 * The ID of the reservation.
14959 */
14960 HostReservationId?: String;
14961 /**
14962 * The hourly price of the reservation per hour.
14963 */
14964 HourlyPrice?: String;
14965 /**
14966 * The instance family on the Dedicated Host that the reservation can be associated with.
14967 */
14968 InstanceFamily?: String;
14969 /**
14970 * The payment option for the reservation.
14971 */
14972 PaymentOption?: PaymentOption;
14973 /**
14974 * The upfront price of the reservation.
14975 */
14976 UpfrontPrice?: String;
14977 }
14978 export interface PurchaseHostReservationRequest {
14979 /**
14980 * Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.
14981 */
14982 ClientToken?: String;
14983 /**
14984 * The currency in which the totalUpfrontPrice, LimitPrice, and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.
14985 */
14986 CurrencyCode?: CurrencyCodeValues;
14987 /**
14988 * The IDs of the Dedicated Hosts with which the reservation will be associated.
14989 */
14990 HostIdSet: RequestHostIdSet;
14991 /**
14992 * The specified limit is checked against the total upfront cost of the reservation (calculated as the offering's upfront cost multiplied by the host count). If the total upfront cost is greater than the specified price limit, the request fails. This is used to ensure that the purchase does not exceed the expected upfront cost of the purchase. At this time, the only supported currency is USD. For example, to indicate a limit price of USD 100, specify 100.00.
14993 */
14994 LimitPrice?: String;
14995 /**
14996 * The ID of the offering.
14997 */
14998 OfferingId: String;
14999 }
15000 export interface PurchaseHostReservationResult {
15001 /**
15002 * Unique, case-sensitive identifier you provide to ensure idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon Elastic Compute Cloud User Guide.
15003 */
15004 ClientToken?: String;
15005 /**
15006 * The currency in which the totalUpfrontPrice and totalHourlyPrice amounts are specified. At this time, the only supported currency is USD.
15007 */
15008 CurrencyCode?: CurrencyCodeValues;
15009 /**
15010 * Describes the details of the purchase.
15011 */
15012 Purchase?: PurchaseSet;
15013 /**
15014 * The total hourly price of the reservation calculated per hour.
15015 */
15016 TotalHourlyPrice?: String;
15017 /**
15018 * The total amount charged to your account when you purchase the reservation.
15019 */
15020 TotalUpfrontPrice?: String;
15021 }
15022 export interface PurchaseRequest {
15023 /**
15024 * The number of instances.
15025 */
15026 InstanceCount: Integer;
15027 /**
15028 * The purchase token.
15029 */
15030 PurchaseToken: String;
15031 }
15032 export type PurchaseRequestSet = PurchaseRequest[];
15033 export interface PurchaseReservedInstancesOfferingRequest {
15034 /**
15035 * The number of Reserved Instances to purchase.
15036 */
15037 InstanceCount: Integer;
15038 /**
15039 * The ID of the Reserved Instance offering to purchase.
15040 */
15041 ReservedInstancesOfferingId: String;
15042 /**
15043 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15044 */
15045 DryRun?: Boolean;
15046 /**
15047 * Specified for Reserved Instance Marketplace offerings to limit the total order and ensure that the Reserved Instances are not purchased at unexpected prices.
15048 */
15049 LimitPrice?: ReservedInstanceLimitPrice;
15050 }
15051 export interface PurchaseReservedInstancesOfferingResult {
15052 /**
15053 * The IDs of the purchased Reserved Instances.
15054 */
15055 ReservedInstancesId?: String;
15056 }
15057 export interface PurchaseScheduledInstancesRequest {
15058 /**
15059 * Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.
15060 */
15061 ClientToken?: String;
15062 /**
15063 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15064 */
15065 DryRun?: Boolean;
15066 /**
15067 * One or more purchase requests.
15068 */
15069 PurchaseRequests: PurchaseRequestSet;
15070 }
15071 export interface PurchaseScheduledInstancesResult {
15072 /**
15073 * Information about the Scheduled Instances.
15074 */
15075 ScheduledInstanceSet?: PurchasedScheduledInstanceSet;
15076 }
15077 export type PurchaseSet = Purchase[];
15078 export type PurchasedScheduledInstanceSet = ScheduledInstance[];
15079 export type RIProductDescription = "Linux/UNIX"|"Linux/UNIX (Amazon VPC)"|"Windows"|"Windows (Amazon VPC)"|string;
15080 export type ReasonCodesList = ReportInstanceReasonCodes[];
15081 export interface RebootInstancesRequest {
15082 /**
15083 * One or more instance IDs.
15084 */
15085 InstanceIds: InstanceIdStringList;
15086 /**
15087 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15088 */
15089 DryRun?: Boolean;
15090 }
15091 export interface RecurringCharge {
15092 /**
15093 * The amount of the recurring charge.
15094 */
15095 Amount?: Double;
15096 /**
15097 * The frequency of the recurring charge.
15098 */
15099 Frequency?: RecurringChargeFrequency;
15100 }
15101 export type RecurringChargeFrequency = "Hourly"|string;
15102 export type RecurringChargesList = RecurringCharge[];
15103 export interface Region {
15104 /**
15105 * The region service endpoint.
15106 */
15107 Endpoint?: String;
15108 /**
15109 * The name of the region.
15110 */
15111 RegionName?: String;
15112 }
15113 export type RegionList = Region[];
15114 export type RegionNameStringList = String[];
15115 export interface RegisterImageRequest {
15116 /**
15117 * The full path to your AMI manifest in Amazon S3 storage.
15118 */
15119 ImageLocation?: String;
15120 /**
15121 * The architecture of the AMI. Default: For Amazon EBS-backed AMIs, i386. For instance store-backed AMIs, the architecture specified in the manifest file.
15122 */
15123 Architecture?: ArchitectureValues;
15124 /**
15125 * One or more block device mapping entries.
15126 */
15127 BlockDeviceMappings?: BlockDeviceMappingRequestList;
15128 /**
15129 * A description for your AMI.
15130 */
15131 Description?: String;
15132 /**
15133 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15134 */
15135 DryRun?: Boolean;
15136 /**
15137 * Set to true to enable enhanced networking with ENA for the AMI and any instances that you launch from the AMI. This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.
15138 */
15139 EnaSupport?: Boolean;
15140 /**
15141 * The ID of the kernel.
15142 */
15143 KernelId?: String;
15144 /**
15145 * A name for your AMI. Constraints: 3-128 alphanumeric characters, parentheses (()), square brackets ([]), spaces ( ), periods (.), slashes (/), dashes (-), single quotes ('), at-signs (@), or underscores(_)
15146 */
15147 Name: String;
15148 /**
15149 * The billing product codes. Your account must be authorized to specify billing product codes. Otherwise, you can use the AWS Marketplace to bill for the use of an AMI.
15150 */
15151 BillingProducts?: BillingProductList;
15152 /**
15153 * The ID of the RAM disk.
15154 */
15155 RamdiskId?: String;
15156 /**
15157 * The device name of the root device volume (for example, /dev/sda1).
15158 */
15159 RootDeviceName?: String;
15160 /**
15161 * Set to simple to enable enhanced networking with the Intel 82599 Virtual Function interface for the AMI and any instances that you launch from the AMI. There is no way to disable sriovNetSupport at this time. This option is supported only for HVM AMIs. Specifying this option with a PV AMI can make instances launched from the AMI unreachable.
15162 */
15163 SriovNetSupport?: String;
15164 /**
15165 * The type of virtualization (hvm | paravirtual). Default: paravirtual
15166 */
15167 VirtualizationType?: String;
15168 }
15169 export interface RegisterImageResult {
15170 /**
15171 * The ID of the newly registered AMI.
15172 */
15173 ImageId?: String;
15174 }
15175 export interface RejectTransitGatewayVpcAttachmentRequest {
15176 /**
15177 * The ID of the attachment.
15178 */
15179 TransitGatewayAttachmentId: String;
15180 /**
15181 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15182 */
15183 DryRun?: Boolean;
15184 }
15185 export interface RejectTransitGatewayVpcAttachmentResult {
15186 /**
15187 * Information about the attachment.
15188 */
15189 TransitGatewayVpcAttachment?: TransitGatewayVpcAttachment;
15190 }
15191 export interface RejectVpcEndpointConnectionsRequest {
15192 /**
15193 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15194 */
15195 DryRun?: Boolean;
15196 /**
15197 * The ID of the service.
15198 */
15199 ServiceId: String;
15200 /**
15201 * The IDs of one or more VPC endpoints.
15202 */
15203 VpcEndpointIds: ValueStringList;
15204 }
15205 export interface RejectVpcEndpointConnectionsResult {
15206 /**
15207 * Information about the endpoints that were not rejected, if applicable.
15208 */
15209 Unsuccessful?: UnsuccessfulItemSet;
15210 }
15211 export interface RejectVpcPeeringConnectionRequest {
15212 /**
15213 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15214 */
15215 DryRun?: Boolean;
15216 /**
15217 * The ID of the VPC peering connection.
15218 */
15219 VpcPeeringConnectionId: String;
15220 }
15221 export interface RejectVpcPeeringConnectionResult {
15222 /**
15223 * Returns true if the request succeeds; otherwise, it returns an error.
15224 */
15225 Return?: Boolean;
15226 }
15227 export interface ReleaseAddressRequest {
15228 /**
15229 * [EC2-VPC] The allocation ID. Required for EC2-VPC.
15230 */
15231 AllocationId?: String;
15232 /**
15233 * [EC2-Classic] The Elastic IP address. Required for EC2-Classic.
15234 */
15235 PublicIp?: String;
15236 /**
15237 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15238 */
15239 DryRun?: Boolean;
15240 }
15241 export interface ReleaseHostsRequest {
15242 /**
15243 * The IDs of the Dedicated Hosts to release.
15244 */
15245 HostIds: RequestHostIdList;
15246 }
15247 export interface ReleaseHostsResult {
15248 /**
15249 * The IDs of the Dedicated Hosts that were successfully released.
15250 */
15251 Successful?: ResponseHostIdList;
15252 /**
15253 * The IDs of the Dedicated Hosts that could not be released, including an error message.
15254 */
15255 Unsuccessful?: UnsuccessfulItemList;
15256 }
15257 export interface ReplaceIamInstanceProfileAssociationRequest {
15258 /**
15259 * The IAM instance profile.
15260 */
15261 IamInstanceProfile: IamInstanceProfileSpecification;
15262 /**
15263 * The ID of the existing IAM instance profile association.
15264 */
15265 AssociationId: String;
15266 }
15267 export interface ReplaceIamInstanceProfileAssociationResult {
15268 /**
15269 * Information about the IAM instance profile association.
15270 */
15271 IamInstanceProfileAssociation?: IamInstanceProfileAssociation;
15272 }
15273 export interface ReplaceNetworkAclAssociationRequest {
15274 /**
15275 * The ID of the current association between the original network ACL and the subnet.
15276 */
15277 AssociationId: String;
15278 /**
15279 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15280 */
15281 DryRun?: Boolean;
15282 /**
15283 * The ID of the new network ACL to associate with the subnet.
15284 */
15285 NetworkAclId: String;
15286 }
15287 export interface ReplaceNetworkAclAssociationResult {
15288 /**
15289 * The ID of the new association.
15290 */
15291 NewAssociationId?: String;
15292 }
15293 export interface ReplaceNetworkAclEntryRequest {
15294 /**
15295 * The IPv4 network range to allow or deny, in CIDR notation (for example 172.16.0.0/24).
15296 */
15297 CidrBlock?: String;
15298 /**
15299 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15300 */
15301 DryRun?: Boolean;
15302 /**
15303 * Indicates whether to replace the egress rule. Default: If no value is specified, we replace the ingress rule.
15304 */
15305 Egress: Boolean;
15306 /**
15307 * ICMP protocol: The ICMP or ICMPv6 type and code. Required if specifying protocol 1 (ICMP) or protocol 58 (ICMPv6) with an IPv6 CIDR block.
15308 */
15309 IcmpTypeCode?: IcmpTypeCode;
15310 /**
15311 * The IPv6 network range to allow or deny, in CIDR notation (for example 2001:bd8:1234:1a00::/64).
15312 */
15313 Ipv6CidrBlock?: String;
15314 /**
15315 * The ID of the ACL.
15316 */
15317 NetworkAclId: String;
15318 /**
15319 * TCP or UDP protocols: The range of ports the rule applies to. Required if specifying protocol 6 (TCP) or 17 (UDP).
15320 */
15321 PortRange?: PortRange;
15322 /**
15323 * The protocol number. A value of "-1" means all protocols. If you specify "-1" or a protocol number other than "6" (TCP), "17" (UDP), or "1" (ICMP), traffic on all ports is allowed, regardless of any ports or ICMP types or codes that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv4 CIDR block, traffic for all ICMP types and codes allowed, regardless of any that you specify. If you specify protocol "58" (ICMPv6) and specify an IPv6 CIDR block, you must specify an ICMP type and code.
15324 */
15325 Protocol: String;
15326 /**
15327 * Indicates whether to allow or deny the traffic that matches the rule.
15328 */
15329 RuleAction: RuleAction;
15330 /**
15331 * The rule number of the entry to replace.
15332 */
15333 RuleNumber: Integer;
15334 }
15335 export interface ReplaceRouteRequest {
15336 /**
15337 * The IPv4 CIDR address block used for the destination match. The value that you provide must match the CIDR of an existing route in the table.
15338 */
15339 DestinationCidrBlock?: String;
15340 /**
15341 * The IPv6 CIDR address block used for the destination match. The value that you provide must match the CIDR of an existing route in the table.
15342 */
15343 DestinationIpv6CidrBlock?: String;
15344 /**
15345 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15346 */
15347 DryRun?: Boolean;
15348 /**
15349 * [IPv6 traffic only] The ID of an egress-only internet gateway.
15350 */
15351 EgressOnlyInternetGatewayId?: String;
15352 /**
15353 * The ID of an internet gateway or virtual private gateway.
15354 */
15355 GatewayId?: String;
15356 /**
15357 * The ID of a NAT instance in your VPC.
15358 */
15359 InstanceId?: String;
15360 /**
15361 * [IPv4 traffic only] The ID of a NAT gateway.
15362 */
15363 NatGatewayId?: String;
15364 /**
15365 * The ID of a transit gateway.
15366 */
15367 TransitGatewayId?: String;
15368 /**
15369 * The ID of a network interface.
15370 */
15371 NetworkInterfaceId?: String;
15372 /**
15373 * The ID of the route table.
15374 */
15375 RouteTableId: String;
15376 /**
15377 * The ID of a VPC peering connection.
15378 */
15379 VpcPeeringConnectionId?: String;
15380 }
15381 export interface ReplaceRouteTableAssociationRequest {
15382 /**
15383 * The association ID.
15384 */
15385 AssociationId: String;
15386 /**
15387 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15388 */
15389 DryRun?: Boolean;
15390 /**
15391 * The ID of the new route table to associate with the subnet.
15392 */
15393 RouteTableId: String;
15394 }
15395 export interface ReplaceRouteTableAssociationResult {
15396 /**
15397 * The ID of the new association.
15398 */
15399 NewAssociationId?: String;
15400 }
15401 export interface ReplaceTransitGatewayRouteRequest {
15402 /**
15403 * The CIDR range used for the destination match. Routing decisions are based on the most specific match.
15404 */
15405 DestinationCidrBlock: String;
15406 /**
15407 * The ID of the route table.
15408 */
15409 TransitGatewayRouteTableId: String;
15410 /**
15411 * The ID of the attachment.
15412 */
15413 TransitGatewayAttachmentId?: String;
15414 /**
15415 * Indicates whether traffic matching this route is to be dropped.
15416 */
15417 Blackhole?: Boolean;
15418 /**
15419 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15420 */
15421 DryRun?: Boolean;
15422 }
15423 export interface ReplaceTransitGatewayRouteResult {
15424 /**
15425 * Information about the modified route.
15426 */
15427 Route?: TransitGatewayRoute;
15428 }
15429 export type ReportInstanceReasonCodes = "instance-stuck-in-state"|"unresponsive"|"not-accepting-credentials"|"password-not-available"|"performance-network"|"performance-instance-store"|"performance-ebs-volume"|"performance-other"|"other"|string;
15430 export interface ReportInstanceStatusRequest {
15431 /**
15432 * Descriptive text about the health state of your instance.
15433 */
15434 Description?: String;
15435 /**
15436 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15437 */
15438 DryRun?: Boolean;
15439 /**
15440 * The time at which the reported instance health state ended.
15441 */
15442 EndTime?: DateTime;
15443 /**
15444 * One or more instances.
15445 */
15446 Instances: InstanceIdStringList;
15447 /**
15448 * One or more reason codes that describe the health state of your instance. instance-stuck-in-state: My instance is stuck in a state. unresponsive: My instance is unresponsive. not-accepting-credentials: My instance is not accepting my credentials. password-not-available: A password is not available for my instance. performance-network: My instance is experiencing performance problems that I believe are network related. performance-instance-store: My instance is experiencing performance problems that I believe are related to the instance stores. performance-ebs-volume: My instance is experiencing performance problems that I believe are related to an EBS volume. performance-other: My instance is experiencing performance problems. other: [explain using the description parameter]
15449 */
15450 ReasonCodes: ReasonCodesList;
15451 /**
15452 * The time at which the reported instance health state began.
15453 */
15454 StartTime?: DateTime;
15455 /**
15456 * The status of all instances listed.
15457 */
15458 Status: ReportStatusType;
15459 }
15460 export type ReportStatusType = "ok"|"impaired"|string;
15461 export type RequestHostIdList = String[];
15462 export type RequestHostIdSet = String[];
15463 export interface RequestLaunchTemplateData {
15464 /**
15465 * The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon Elastic Compute Cloud User Guide.
15466 */
15467 KernelId?: String;
15468 /**
15469 * Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance.
15470 */
15471 EbsOptimized?: Boolean;
15472 /**
15473 * The IAM instance profile.
15474 */
15475 IamInstanceProfile?: LaunchTemplateIamInstanceProfileSpecificationRequest;
15476 /**
15477 * The block device mapping. Supplying both a snapshot ID and an encryption value as arguments for block-device mapping results in an error. This is because only blank volumes can be encrypted on start, and these are not created from a snapshot. If a snapshot is the basis for the volume, it contains data by definition and its encryption status cannot be changed using this action.
15478 */
15479 BlockDeviceMappings?: LaunchTemplateBlockDeviceMappingRequestList;
15480 /**
15481 * One or more network interfaces.
15482 */
15483 NetworkInterfaces?: LaunchTemplateInstanceNetworkInterfaceSpecificationRequestList;
15484 /**
15485 * The ID of the AMI, which you can get by using DescribeImages.
15486 */
15487 ImageId?: String;
15488 /**
15489 * The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide.
15490 */
15491 InstanceType?: InstanceType;
15492 /**
15493 * The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair. If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
15494 */
15495 KeyName?: String;
15496 /**
15497 * The monitoring for the instance.
15498 */
15499 Monitoring?: LaunchTemplatesMonitoringRequest;
15500 /**
15501 * The placement for the instance.
15502 */
15503 Placement?: LaunchTemplatePlacementRequest;
15504 /**
15505 * The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see User Provided Kernels in the Amazon Elastic Compute Cloud User Guide.
15506 */
15507 RamDiskId?: String;
15508 /**
15509 * If set to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API. To change this attribute to false after launch, use ModifyInstanceAttribute.
15510 */
15511 DisableApiTermination?: Boolean;
15512 /**
15513 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
15514 */
15515 InstanceInitiatedShutdownBehavior?: ShutdownBehavior;
15516 /**
15517 * The Base64-encoded user data to make available to the instance. For more information, see Running Commands on Your Linux Instance at Launch (Linux) and Adding User Data (Windows).
15518 */
15519 UserData?: String;
15520 /**
15521 * The tags to apply to the resources during launch. You can only tag instances and volumes on launch. The specified tags are applied to all instances or volumes that are created during launch. To tag a resource after it has been created, see CreateTags.
15522 */
15523 TagSpecifications?: LaunchTemplateTagSpecificationRequestList;
15524 /**
15525 * An elastic GPU to associate with the instance.
15526 */
15527 ElasticGpuSpecifications?: ElasticGpuSpecificationList;
15528 /**
15529 * The elastic inference accelerator for the instance.
15530 */
15531 ElasticInferenceAccelerators?: LaunchTemplateElasticInferenceAcceleratorList;
15532 /**
15533 * One or more security group IDs. You can create a security group using CreateSecurityGroup. You cannot specify both a security group ID and security name in the same request.
15534 */
15535 SecurityGroupIds?: SecurityGroupIdStringList;
15536 /**
15537 * [EC2-Classic, default VPC] One or more security group names. For a nondefault VPC, you must use security group IDs instead. You cannot specify both a security group ID and security name in the same request.
15538 */
15539 SecurityGroups?: SecurityGroupStringList;
15540 /**
15541 * The market (purchasing) option for the instances.
15542 */
15543 InstanceMarketOptions?: LaunchTemplateInstanceMarketOptionsRequest;
15544 /**
15545 * The credit option for CPU usage of the instance. Valid for T2 or T3 instances only.
15546 */
15547 CreditSpecification?: CreditSpecificationRequest;
15548 /**
15549 * The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide.
15550 */
15551 CpuOptions?: LaunchTemplateCpuOptionsRequest;
15552 /**
15553 * The Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
15554 */
15555 CapacityReservationSpecification?: LaunchTemplateCapacityReservationSpecificationRequest;
15556 /**
15557 * Indicates whether an instance is enabled for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites. Hibernation is currently supported only for Amazon Linux. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide.
15558 */
15559 HibernationOptions?: LaunchTemplateHibernationOptionsRequest;
15560 /**
15561 * The license configurations.
15562 */
15563 LicenseSpecifications?: LaunchTemplateLicenseSpecificationListRequest;
15564 }
15565 export interface RequestSpotFleetRequest {
15566 /**
15567 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15568 */
15569 DryRun?: Boolean;
15570 /**
15571 * The configuration for the Spot Fleet request.
15572 */
15573 SpotFleetRequestConfig: SpotFleetRequestConfigData;
15574 }
15575 export interface RequestSpotFleetResponse {
15576 /**
15577 * The ID of the Spot Fleet request.
15578 */
15579 SpotFleetRequestId?: String;
15580 }
15581 export interface RequestSpotInstancesRequest {
15582 /**
15583 * The user-specified name for a logical grouping of requests. When you specify an Availability Zone group in a Spot Instance request, all Spot Instances in the request are launched in the same Availability Zone. Instance proximity is maintained with this parameter, but the choice of Availability Zone is not. The group applies only to requests for Spot Instances of the same instance type. Any additional Spot Instance requests that are specified with the same Availability Zone group name are launched in that same Availability Zone, as long as at least one instance from the group is still active. If there is no active instance running in the Availability Zone group that you specify for a new Spot Instance request (all instances are terminated, the request is expired, or the maximum price you specified falls below current Spot price), then Amazon EC2 launches the instance in any Availability Zone where the constraint can be met. Consequently, the subsequent set of Spot Instances could be placed in a different zone from the original request, even if you specified the same Availability Zone group. Default: Instances are launched in any available Availability Zone.
15584 */
15585 AvailabilityZoneGroup?: String;
15586 /**
15587 * The required duration for the Spot Instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360). The duration period starts as soon as your Spot Instance receives its instance ID. At the end of the duration period, Amazon EC2 marks the Spot Instance for termination and provides a Spot Instance termination notice, which gives the instance a two-minute warning before it terminates. You can't specify an Availability Zone group or a launch group if you specify a duration.
15588 */
15589 BlockDurationMinutes?: Integer;
15590 /**
15591 * Unique, case-sensitive identifier that you provide to ensure the idempotency of the request. For more information, see How to Ensure Idempotency in the Amazon EC2 User Guide for Linux Instances.
15592 */
15593 ClientToken?: String;
15594 /**
15595 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
15596 */
15597 DryRun?: Boolean;
15598 /**
15599 * The maximum number of Spot Instances to launch. Default: 1
15600 */
15601 InstanceCount?: Integer;
15602 /**
15603 * The instance launch group. Launch groups are Spot Instances that launch together and terminate together. Default: Instances are launched and terminated individually
15604 */
15605 LaunchGroup?: String;
15606 /**
15607 * The launch specification.
15608 */
15609 LaunchSpecification?: RequestSpotLaunchSpecification;
15610 /**
15611 * The maximum price per hour that you are willing to pay for a Spot Instance. The default is the On-Demand price.
15612 */
15613 SpotPrice?: String;
15614 /**
15615 * The Spot Instance request type. Default: one-time
15616 */
15617 Type?: SpotInstanceType;
15618 /**
15619 * The start date of the request. If this is a one-time request, the request becomes active at this date and time and remains active until all instances launch, the request expires, or the request is canceled. If the request is persistent, the request becomes active at this date and time and remains active until it expires or is canceled.
15620 */
15621 ValidFrom?: DateTime;
15622 /**
15623 * The end date of the request. If this is a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date is reached. The default end date is 7 days from the current date.
15624 */
15625 ValidUntil?: DateTime;
15626 /**
15627 * The behavior when a Spot Instance is interrupted. The default is terminate.
15628 */
15629 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
15630 }
15631 export interface RequestSpotInstancesResult {
15632 /**
15633 * One or more Spot Instance requests.
15634 */
15635 SpotInstanceRequests?: SpotInstanceRequestList;
15636 }
15637 export interface RequestSpotLaunchSpecification {
15638 /**
15639 * One or more security group IDs.
15640 */
15641 SecurityGroupIds?: ValueStringList;
15642 /**
15643 * One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
15644 */
15645 SecurityGroups?: ValueStringList;
15646 /**
15647 * Deprecated.
15648 */
15649 AddressingType?: String;
15650 /**
15651 * One or more block device mapping entries. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
15652 */
15653 BlockDeviceMappings?: BlockDeviceMappingList;
15654 /**
15655 * Indicates whether the instance is optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance. Default: false
15656 */
15657 EbsOptimized?: Boolean;
15658 /**
15659 * The IAM instance profile.
15660 */
15661 IamInstanceProfile?: IamInstanceProfileSpecification;
15662 /**
15663 * The ID of the AMI.
15664 */
15665 ImageId?: String;
15666 /**
15667 * The instance type.
15668 */
15669 InstanceType?: InstanceType;
15670 /**
15671 * The ID of the kernel.
15672 */
15673 KernelId?: String;
15674 /**
15675 * The name of the key pair.
15676 */
15677 KeyName?: String;
15678 /**
15679 * Indicates whether basic or detailed monitoring is enabled for the instance. Default: Disabled
15680 */
15681 Monitoring?: RunInstancesMonitoringEnabled;
15682 /**
15683 * One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.
15684 */
15685 NetworkInterfaces?: InstanceNetworkInterfaceSpecificationList;
15686 /**
15687 * The placement information for the instance.
15688 */
15689 Placement?: SpotPlacement;
15690 /**
15691 * The ID of the RAM disk.
15692 */
15693 RamdiskId?: String;
15694 /**
15695 * The ID of the subnet in which to launch the instance.
15696 */
15697 SubnetId?: String;
15698 /**
15699 * The Base64-encoded user data for the instance.
15700 */
15701 UserData?: String;
15702 }
15703 export interface Reservation {
15704 /**
15705 * [EC2-Classic only] One or more security groups.
15706 */
15707 Groups?: GroupIdentifierList;
15708 /**
15709 * One or more instances.
15710 */
15711 Instances?: InstanceList;
15712 /**
15713 * The ID of the AWS account that owns the reservation.
15714 */
15715 OwnerId?: String;
15716 /**
15717 * The ID of the requester that launched the instances on your behalf (for example, AWS Management Console or Auto Scaling).
15718 */
15719 RequesterId?: String;
15720 /**
15721 * The ID of the reservation.
15722 */
15723 ReservationId?: String;
15724 }
15725 export type ReservationList = Reservation[];
15726 export type ReservationState = "payment-pending"|"payment-failed"|"active"|"retired"|string;
15727 export interface ReservationValue {
15728 /**
15729 * The hourly rate of the reservation.
15730 */
15731 HourlyPrice?: String;
15732 /**
15733 * The balance of the total value (the sum of remainingUpfrontValue + hourlyPrice * number of hours remaining).
15734 */
15735 RemainingTotalValue?: String;
15736 /**
15737 * The remaining upfront cost of the reservation.
15738 */
15739 RemainingUpfrontValue?: String;
15740 }
15741 export type ReservedInstanceIdSet = String[];
15742 export interface ReservedInstanceLimitPrice {
15743 /**
15744 * Used for Reserved Instance Marketplace offerings. Specifies the limit price on the total order (instanceCount * price).
15745 */
15746 Amount?: Double;
15747 /**
15748 * The currency in which the limitPrice amount is specified. At this time, the only supported currency is USD.
15749 */
15750 CurrencyCode?: CurrencyCodeValues;
15751 }
15752 export interface ReservedInstanceReservationValue {
15753 /**
15754 * The total value of the Convertible Reserved Instance that you are exchanging.
15755 */
15756 ReservationValue?: ReservationValue;
15757 /**
15758 * The ID of the Convertible Reserved Instance that you are exchanging.
15759 */
15760 ReservedInstanceId?: String;
15761 }
15762 export type ReservedInstanceReservationValueSet = ReservedInstanceReservationValue[];
15763 export type ReservedInstanceState = "payment-pending"|"active"|"payment-failed"|"retired"|string;
15764 export interface ReservedInstances {
15765 /**
15766 * The Availability Zone in which the Reserved Instance can be used.
15767 */
15768 AvailabilityZone?: String;
15769 /**
15770 * The duration of the Reserved Instance, in seconds.
15771 */
15772 Duration?: Long;
15773 /**
15774 * The time when the Reserved Instance expires.
15775 */
15776 End?: DateTime;
15777 /**
15778 * The purchase price of the Reserved Instance.
15779 */
15780 FixedPrice?: Float;
15781 /**
15782 * The number of reservations purchased.
15783 */
15784 InstanceCount?: Integer;
15785 /**
15786 * The instance type on which the Reserved Instance can be used.
15787 */
15788 InstanceType?: InstanceType;
15789 /**
15790 * The Reserved Instance product platform description.
15791 */
15792 ProductDescription?: RIProductDescription;
15793 /**
15794 * The ID of the Reserved Instance.
15795 */
15796 ReservedInstancesId?: String;
15797 /**
15798 * The date and time the Reserved Instance started.
15799 */
15800 Start?: DateTime;
15801 /**
15802 * The state of the Reserved Instance purchase.
15803 */
15804 State?: ReservedInstanceState;
15805 /**
15806 * The usage price of the Reserved Instance, per hour.
15807 */
15808 UsagePrice?: Float;
15809 /**
15810 * The currency of the Reserved Instance. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.
15811 */
15812 CurrencyCode?: CurrencyCodeValues;
15813 /**
15814 * The tenancy of the instance.
15815 */
15816 InstanceTenancy?: Tenancy;
15817 /**
15818 * The offering class of the Reserved Instance.
15819 */
15820 OfferingClass?: OfferingClassType;
15821 /**
15822 * The Reserved Instance offering type.
15823 */
15824 OfferingType?: OfferingTypeValues;
15825 /**
15826 * The recurring charge tag assigned to the resource.
15827 */
15828 RecurringCharges?: RecurringChargesList;
15829 /**
15830 * The scope of the Reserved Instance.
15831 */
15832 Scope?: scope;
15833 /**
15834 * Any tags assigned to the resource.
15835 */
15836 Tags?: TagList;
15837 }
15838 export interface ReservedInstancesConfiguration {
15839 /**
15840 * The Availability Zone for the modified Reserved Instances.
15841 */
15842 AvailabilityZone?: String;
15843 /**
15844 * The number of modified Reserved Instances. This is a required field for a request.
15845 */
15846 InstanceCount?: Integer;
15847 /**
15848 * The instance type for the modified Reserved Instances.
15849 */
15850 InstanceType?: InstanceType;
15851 /**
15852 * The network platform of the modified Reserved Instances, which is either EC2-Classic or EC2-VPC.
15853 */
15854 Platform?: String;
15855 /**
15856 * Whether the Reserved Instance is applied to instances in a region or instances in a specific Availability Zone.
15857 */
15858 Scope?: scope;
15859 }
15860 export type ReservedInstancesConfigurationList = ReservedInstancesConfiguration[];
15861 export interface ReservedInstancesId {
15862 /**
15863 * The ID of the Reserved Instance.
15864 */
15865 ReservedInstancesId?: String;
15866 }
15867 export type ReservedInstancesIdStringList = String[];
15868 export type ReservedInstancesList = ReservedInstances[];
15869 export interface ReservedInstancesListing {
15870 /**
15871 * A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.
15872 */
15873 ClientToken?: String;
15874 /**
15875 * The time the listing was created.
15876 */
15877 CreateDate?: DateTime;
15878 /**
15879 * The number of instances in this state.
15880 */
15881 InstanceCounts?: InstanceCountList;
15882 /**
15883 * The price of the Reserved Instance listing.
15884 */
15885 PriceSchedules?: PriceScheduleList;
15886 /**
15887 * The ID of the Reserved Instance.
15888 */
15889 ReservedInstancesId?: String;
15890 /**
15891 * The ID of the Reserved Instance listing.
15892 */
15893 ReservedInstancesListingId?: String;
15894 /**
15895 * The status of the Reserved Instance listing.
15896 */
15897 Status?: ListingStatus;
15898 /**
15899 * The reason for the current status of the Reserved Instance listing. The response can be blank.
15900 */
15901 StatusMessage?: String;
15902 /**
15903 * Any tags assigned to the resource.
15904 */
15905 Tags?: TagList;
15906 /**
15907 * The last modified timestamp of the listing.
15908 */
15909 UpdateDate?: DateTime;
15910 }
15911 export type ReservedInstancesListingList = ReservedInstancesListing[];
15912 export interface ReservedInstancesModification {
15913 /**
15914 * A unique, case-sensitive key supplied by the client to ensure that the request is idempotent. For more information, see Ensuring Idempotency.
15915 */
15916 ClientToken?: String;
15917 /**
15918 * The time when the modification request was created.
15919 */
15920 CreateDate?: DateTime;
15921 /**
15922 * The time for the modification to become effective.
15923 */
15924 EffectiveDate?: DateTime;
15925 /**
15926 * Contains target configurations along with their corresponding new Reserved Instance IDs.
15927 */
15928 ModificationResults?: ReservedInstancesModificationResultList;
15929 /**
15930 * The IDs of one or more Reserved Instances.
15931 */
15932 ReservedInstancesIds?: ReservedIntancesIds;
15933 /**
15934 * A unique ID for the Reserved Instance modification.
15935 */
15936 ReservedInstancesModificationId?: String;
15937 /**
15938 * The status of the Reserved Instances modification request.
15939 */
15940 Status?: String;
15941 /**
15942 * The reason for the status.
15943 */
15944 StatusMessage?: String;
15945 /**
15946 * The time when the modification request was last updated.
15947 */
15948 UpdateDate?: DateTime;
15949 }
15950 export type ReservedInstancesModificationIdStringList = String[];
15951 export type ReservedInstancesModificationList = ReservedInstancesModification[];
15952 export interface ReservedInstancesModificationResult {
15953 /**
15954 * The ID for the Reserved Instances that were created as part of the modification request. This field is only available when the modification is fulfilled.
15955 */
15956 ReservedInstancesId?: String;
15957 /**
15958 * The target Reserved Instances configurations supplied as part of the modification request.
15959 */
15960 TargetConfiguration?: ReservedInstancesConfiguration;
15961 }
15962 export type ReservedInstancesModificationResultList = ReservedInstancesModificationResult[];
15963 export interface ReservedInstancesOffering {
15964 /**
15965 * The Availability Zone in which the Reserved Instance can be used.
15966 */
15967 AvailabilityZone?: String;
15968 /**
15969 * The duration of the Reserved Instance, in seconds.
15970 */
15971 Duration?: Long;
15972 /**
15973 * The purchase price of the Reserved Instance.
15974 */
15975 FixedPrice?: Float;
15976 /**
15977 * The instance type on which the Reserved Instance can be used.
15978 */
15979 InstanceType?: InstanceType;
15980 /**
15981 * The Reserved Instance product platform description.
15982 */
15983 ProductDescription?: RIProductDescription;
15984 /**
15985 * The ID of the Reserved Instance offering. This is the offering ID used in GetReservedInstancesExchangeQuote to confirm that an exchange can be made.
15986 */
15987 ReservedInstancesOfferingId?: String;
15988 /**
15989 * The usage price of the Reserved Instance, per hour.
15990 */
15991 UsagePrice?: Float;
15992 /**
15993 * The currency of the Reserved Instance offering you are purchasing. It's specified using ISO 4217 standard currency codes. At this time, the only supported currency is USD.
15994 */
15995 CurrencyCode?: CurrencyCodeValues;
15996 /**
15997 * The tenancy of the instance.
15998 */
15999 InstanceTenancy?: Tenancy;
16000 /**
16001 * Indicates whether the offering is available through the Reserved Instance Marketplace (resale) or AWS. If it's a Reserved Instance Marketplace offering, this is true.
16002 */
16003 Marketplace?: Boolean;
16004 /**
16005 * If convertible it can be exchanged for Reserved Instances of the same or higher monetary value, with different configurations. If standard, it is not possible to perform an exchange.
16006 */
16007 OfferingClass?: OfferingClassType;
16008 /**
16009 * The Reserved Instance offering type.
16010 */
16011 OfferingType?: OfferingTypeValues;
16012 /**
16013 * The pricing details of the Reserved Instance offering.
16014 */
16015 PricingDetails?: PricingDetailsList;
16016 /**
16017 * The recurring charge tag assigned to the resource.
16018 */
16019 RecurringCharges?: RecurringChargesList;
16020 /**
16021 * Whether the Reserved Instance is applied to instances in a region or an Availability Zone.
16022 */
16023 Scope?: scope;
16024 }
16025 export type ReservedInstancesOfferingIdStringList = String[];
16026 export type ReservedInstancesOfferingList = ReservedInstancesOffering[];
16027 export type ReservedIntancesIds = ReservedInstancesId[];
16028 export type ResetFpgaImageAttributeName = "loadPermission"|string;
16029 export interface ResetFpgaImageAttributeRequest {
16030 /**
16031 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16032 */
16033 DryRun?: Boolean;
16034 /**
16035 * The ID of the AFI.
16036 */
16037 FpgaImageId: String;
16038 /**
16039 * The attribute.
16040 */
16041 Attribute?: ResetFpgaImageAttributeName;
16042 }
16043 export interface ResetFpgaImageAttributeResult {
16044 /**
16045 * Is true if the request succeeds, and an error otherwise.
16046 */
16047 Return?: Boolean;
16048 }
16049 export type ResetImageAttributeName = "launchPermission"|string;
16050 export interface ResetImageAttributeRequest {
16051 /**
16052 * The attribute to reset (currently you can only reset the launch permission attribute).
16053 */
16054 Attribute: ResetImageAttributeName;
16055 /**
16056 * The ID of the AMI.
16057 */
16058 ImageId: String;
16059 /**
16060 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16061 */
16062 DryRun?: Boolean;
16063 }
16064 export interface ResetInstanceAttributeRequest {
16065 /**
16066 * The attribute to reset. You can only reset the following attributes: kernel | ramdisk | sourceDestCheck. To change an instance attribute, use ModifyInstanceAttribute.
16067 */
16068 Attribute: InstanceAttributeName;
16069 /**
16070 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16071 */
16072 DryRun?: Boolean;
16073 /**
16074 * The ID of the instance.
16075 */
16076 InstanceId: String;
16077 }
16078 export interface ResetNetworkInterfaceAttributeRequest {
16079 /**
16080 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16081 */
16082 DryRun?: Boolean;
16083 /**
16084 * The ID of the network interface.
16085 */
16086 NetworkInterfaceId: String;
16087 /**
16088 * The source/destination checking attribute. Resets the value to true.
16089 */
16090 SourceDestCheck?: String;
16091 }
16092 export interface ResetSnapshotAttributeRequest {
16093 /**
16094 * The attribute to reset. Currently, only the attribute for permission to create volumes can be reset.
16095 */
16096 Attribute: SnapshotAttributeName;
16097 /**
16098 * The ID of the snapshot.
16099 */
16100 SnapshotId: String;
16101 /**
16102 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16103 */
16104 DryRun?: Boolean;
16105 }
16106 export type ResourceIdList = String[];
16107 export type ResourceList = String[];
16108 export type ResourceType = "client-vpn-endpoint"|"customer-gateway"|"dedicated-host"|"dhcp-options"|"elastic-ip"|"fleet"|"fpga-image"|"host-reservation"|"image"|"instance"|"internet-gateway"|"launch-template"|"natgateway"|"network-acl"|"network-interface"|"reserved-instances"|"route-table"|"security-group"|"snapshot"|"spot-instances-request"|"subnet"|"transit-gateway"|"transit-gateway-attachment"|"transit-gateway-route-table"|"volume"|"vpc"|"vpc-peering-connection"|"vpn-connection"|"vpn-gateway"|string;
16109 export interface ResponseError {
16110 /**
16111 * The error code.
16112 */
16113 Code?: LaunchTemplateErrorCode;
16114 /**
16115 * The error message, if applicable.
16116 */
16117 Message?: String;
16118 }
16119 export type ResponseHostIdList = String[];
16120 export type ResponseHostIdSet = String[];
16121 export interface ResponseLaunchTemplateData {
16122 /**
16123 * The ID of the kernel, if applicable.
16124 */
16125 KernelId?: String;
16126 /**
16127 * Indicates whether the instance is optimized for Amazon EBS I/O.
16128 */
16129 EbsOptimized?: Boolean;
16130 /**
16131 * The IAM instance profile.
16132 */
16133 IamInstanceProfile?: LaunchTemplateIamInstanceProfileSpecification;
16134 /**
16135 * The block device mappings.
16136 */
16137 BlockDeviceMappings?: LaunchTemplateBlockDeviceMappingList;
16138 /**
16139 * The network interfaces.
16140 */
16141 NetworkInterfaces?: LaunchTemplateInstanceNetworkInterfaceSpecificationList;
16142 /**
16143 * The ID of the AMI that was used to launch the instance.
16144 */
16145 ImageId?: String;
16146 /**
16147 * The instance type.
16148 */
16149 InstanceType?: InstanceType;
16150 /**
16151 * The name of the key pair.
16152 */
16153 KeyName?: String;
16154 /**
16155 * The monitoring for the instance.
16156 */
16157 Monitoring?: LaunchTemplatesMonitoring;
16158 /**
16159 * The placement of the instance.
16160 */
16161 Placement?: LaunchTemplatePlacement;
16162 /**
16163 * The ID of the RAM disk, if applicable.
16164 */
16165 RamDiskId?: String;
16166 /**
16167 * If set to true, indicates that the instance cannot be terminated using the Amazon EC2 console, command line tool, or API.
16168 */
16169 DisableApiTermination?: Boolean;
16170 /**
16171 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown).
16172 */
16173 InstanceInitiatedShutdownBehavior?: ShutdownBehavior;
16174 /**
16175 * The user data for the instance.
16176 */
16177 UserData?: String;
16178 /**
16179 * The tags.
16180 */
16181 TagSpecifications?: LaunchTemplateTagSpecificationList;
16182 /**
16183 * The elastic GPU specification.
16184 */
16185 ElasticGpuSpecifications?: ElasticGpuSpecificationResponseList;
16186 /**
16187 * The elastic inference accelerator for the instance.
16188 */
16189 ElasticInferenceAccelerators?: LaunchTemplateElasticInferenceAcceleratorResponseList;
16190 /**
16191 * The security group IDs.
16192 */
16193 SecurityGroupIds?: ValueStringList;
16194 /**
16195 * The security group names.
16196 */
16197 SecurityGroups?: ValueStringList;
16198 /**
16199 * The market (purchasing) option for the instances.
16200 */
16201 InstanceMarketOptions?: LaunchTemplateInstanceMarketOptions;
16202 /**
16203 * The credit option for CPU usage of the instance.
16204 */
16205 CreditSpecification?: CreditSpecification;
16206 /**
16207 * The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide.
16208 */
16209 CpuOptions?: LaunchTemplateCpuOptions;
16210 /**
16211 * Information about the Capacity Reservation targeting option.
16212 */
16213 CapacityReservationSpecification?: LaunchTemplateCapacityReservationSpecificationResponse;
16214 /**
16215 * Indicates whether an instance is configured for hibernation. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide.
16216 */
16217 HibernationOptions?: LaunchTemplateHibernationOptions;
16218 /**
16219 * The license configurations.
16220 */
16221 LicenseSpecifications?: LaunchTemplateLicenseList;
16222 }
16223 export type RestorableByStringList = String[];
16224 export interface RestoreAddressToClassicRequest {
16225 /**
16226 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16227 */
16228 DryRun?: Boolean;
16229 /**
16230 * The Elastic IP address.
16231 */
16232 PublicIp: String;
16233 }
16234 export interface RestoreAddressToClassicResult {
16235 /**
16236 * The Elastic IP address.
16237 */
16238 PublicIp?: String;
16239 /**
16240 * The move status for the IP address.
16241 */
16242 Status?: Status;
16243 }
16244 export interface RevokeClientVpnIngressRequest {
16245 /**
16246 * The ID of the Client VPN endpoint with which the authorization rule is associated.
16247 */
16248 ClientVpnEndpointId: String;
16249 /**
16250 * The IPv4 address range, in CIDR notation, of the network for which access is being removed.
16251 */
16252 TargetNetworkCidr: String;
16253 /**
16254 * The ID of the Active Directory group for which to revoke access.
16255 */
16256 AccessGroupId?: String;
16257 /**
16258 * Indicates whether access should be revoked for all clients.
16259 */
16260 RevokeAllGroups?: Boolean;
16261 /**
16262 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16263 */
16264 DryRun?: Boolean;
16265 }
16266 export interface RevokeClientVpnIngressResult {
16267 /**
16268 * The current state of the authorization rule.
16269 */
16270 Status?: ClientVpnAuthorizationRuleStatus;
16271 }
16272 export interface RevokeSecurityGroupEgressRequest {
16273 /**
16274 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16275 */
16276 DryRun?: Boolean;
16277 /**
16278 * The ID of the security group.
16279 */
16280 GroupId: String;
16281 /**
16282 * One or more sets of IP permissions. You can't specify a destination security group and a CIDR IP address range in the same set of permissions.
16283 */
16284 IpPermissions?: IpPermissionList;
16285 /**
16286 * Not supported. Use a set of IP permissions to specify the CIDR.
16287 */
16288 CidrIp?: String;
16289 /**
16290 * Not supported. Use a set of IP permissions to specify the port.
16291 */
16292 FromPort?: Integer;
16293 /**
16294 * Not supported. Use a set of IP permissions to specify the protocol name or number.
16295 */
16296 IpProtocol?: String;
16297 /**
16298 * Not supported. Use a set of IP permissions to specify the port.
16299 */
16300 ToPort?: Integer;
16301 /**
16302 * Not supported. Use a set of IP permissions to specify a destination security group.
16303 */
16304 SourceSecurityGroupName?: String;
16305 /**
16306 * Not supported. Use a set of IP permissions to specify a destination security group.
16307 */
16308 SourceSecurityGroupOwnerId?: String;
16309 }
16310 export interface RevokeSecurityGroupIngressRequest {
16311 /**
16312 * The CIDR IP address range. You can't specify this parameter when specifying a source security group.
16313 */
16314 CidrIp?: String;
16315 /**
16316 * The start of port range for the TCP and UDP protocols, or an ICMP type number. For the ICMP type number, use -1 to specify all ICMP types.
16317 */
16318 FromPort?: Integer;
16319 /**
16320 * The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.
16321 */
16322 GroupId?: String;
16323 /**
16324 * [EC2-Classic, default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request.
16325 */
16326 GroupName?: String;
16327 /**
16328 * One or more sets of IP permissions. You can't specify a source security group and a CIDR IP address range in the same set of permissions.
16329 */
16330 IpPermissions?: IpPermissionList;
16331 /**
16332 * The IP protocol name (tcp, udp, icmp) or number (see Protocol Numbers). Use -1 to specify all.
16333 */
16334 IpProtocol?: String;
16335 /**
16336 * [EC2-Classic, default VPC] The name of the source security group. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the start of the port range, the IP protocol, and the end of the port range. For EC2-VPC, the source security group must be in the same VPC. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.
16337 */
16338 SourceSecurityGroupName?: String;
16339 /**
16340 * [EC2-Classic] The AWS account ID of the source security group, if the source security group is in a different account. You can't specify this parameter in combination with the following parameters: the CIDR IP address range, the IP protocol, the start of the port range, and the end of the port range. To revoke a specific rule for an IP protocol and port range, use a set of IP permissions instead.
16341 */
16342 SourceSecurityGroupOwnerId?: String;
16343 /**
16344 * The end of port range for the TCP and UDP protocols, or an ICMP code number. For the ICMP code number, use -1 to specify all ICMP codes for the ICMP type.
16345 */
16346 ToPort?: Integer;
16347 /**
16348 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16349 */
16350 DryRun?: Boolean;
16351 }
16352 export interface Route {
16353 /**
16354 * The IPv4 CIDR block used for the destination match.
16355 */
16356 DestinationCidrBlock?: String;
16357 /**
16358 * The IPv6 CIDR block used for the destination match.
16359 */
16360 DestinationIpv6CidrBlock?: String;
16361 /**
16362 * The prefix of the AWS service.
16363 */
16364 DestinationPrefixListId?: String;
16365 /**
16366 * The ID of the egress-only internet gateway.
16367 */
16368 EgressOnlyInternetGatewayId?: String;
16369 /**
16370 * The ID of a gateway attached to your VPC.
16371 */
16372 GatewayId?: String;
16373 /**
16374 * The ID of a NAT instance in your VPC.
16375 */
16376 InstanceId?: String;
16377 /**
16378 * The AWS account ID of the owner of the instance.
16379 */
16380 InstanceOwnerId?: String;
16381 /**
16382 * The ID of a NAT gateway.
16383 */
16384 NatGatewayId?: String;
16385 /**
16386 * The ID of a transit gateway.
16387 */
16388 TransitGatewayId?: String;
16389 /**
16390 * The ID of the network interface.
16391 */
16392 NetworkInterfaceId?: String;
16393 /**
16394 * Describes how the route was created. CreateRouteTable - The route was automatically created when the route table was created. CreateRoute - The route was manually added to the route table. EnableVgwRoutePropagation - The route was propagated by route propagation.
16395 */
16396 Origin?: RouteOrigin;
16397 /**
16398 * The state of the route. The blackhole state indicates that the route's target isn't available (for example, the specified gateway isn't attached to the VPC, or the specified NAT instance has been terminated).
16399 */
16400 State?: RouteState;
16401 /**
16402 * The ID of a VPC peering connection.
16403 */
16404 VpcPeeringConnectionId?: String;
16405 }
16406 export type RouteList = Route[];
16407 export type RouteOrigin = "CreateRouteTable"|"CreateRoute"|"EnableVgwRoutePropagation"|string;
16408 export type RouteState = "active"|"blackhole"|string;
16409 export interface RouteTable {
16410 /**
16411 * The associations between the route table and one or more subnets.
16412 */
16413 Associations?: RouteTableAssociationList;
16414 /**
16415 * Any virtual private gateway (VGW) propagating routes.
16416 */
16417 PropagatingVgws?: PropagatingVgwList;
16418 /**
16419 * The ID of the route table.
16420 */
16421 RouteTableId?: String;
16422 /**
16423 * The routes in the route table.
16424 */
16425 Routes?: RouteList;
16426 /**
16427 * Any tags assigned to the route table.
16428 */
16429 Tags?: TagList;
16430 /**
16431 * The ID of the VPC.
16432 */
16433 VpcId?: String;
16434 /**
16435 * The ID of the AWS account that owns the route table.
16436 */
16437 OwnerId?: String;
16438 }
16439 export interface RouteTableAssociation {
16440 /**
16441 * Indicates whether this is the main route table.
16442 */
16443 Main?: Boolean;
16444 /**
16445 * The ID of the association between a route table and a subnet.
16446 */
16447 RouteTableAssociationId?: String;
16448 /**
16449 * The ID of the route table.
16450 */
16451 RouteTableId?: String;
16452 /**
16453 * The ID of the subnet. A subnet ID is not returned for an implicit association.
16454 */
16455 SubnetId?: String;
16456 }
16457 export type RouteTableAssociationList = RouteTableAssociation[];
16458 export type RouteTableList = RouteTable[];
16459 export type RuleAction = "allow"|"deny"|string;
16460 export interface RunInstancesMonitoringEnabled {
16461 /**
16462 * Indicates whether detailed monitoring is enabled. Otherwise, basic monitoring is enabled.
16463 */
16464 Enabled: Boolean;
16465 }
16466 export interface RunInstancesRequest {
16467 /**
16468 * One or more block device mapping entries. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
16469 */
16470 BlockDeviceMappings?: BlockDeviceMappingRequestList;
16471 /**
16472 * The ID of the AMI, which you can get by calling DescribeImages. An AMI is required to launch an instance and must be specified here or in a launch template.
16473 */
16474 ImageId?: String;
16475 /**
16476 * The instance type. For more information, see Instance Types in the Amazon Elastic Compute Cloud User Guide. Default: m1.small
16477 */
16478 InstanceType?: InstanceType;
16479 /**
16480 * [EC2-VPC] A number of IPv6 addresses to associate with the primary network interface. Amazon EC2 chooses the IPv6 addresses from the range of your subnet. You cannot specify this option and the option to assign specific IPv6 addresses in the same request. You can specify this option if you've specified a minimum number of instances to launch. You cannot specify this option and the network interfaces option in the same request.
16481 */
16482 Ipv6AddressCount?: Integer;
16483 /**
16484 * [EC2-VPC] Specify one or more IPv6 addresses from the range of the subnet to associate with the primary network interface. You cannot specify this option and the option to assign a number of IPv6 addresses in the same request. You cannot specify this option if you've specified a minimum number of instances to launch. You cannot specify this option and the network interfaces option in the same request.
16485 */
16486 Ipv6Addresses?: InstanceIpv6AddressList;
16487 /**
16488 * The ID of the kernel. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.
16489 */
16490 KernelId?: String;
16491 /**
16492 * The name of the key pair. You can create a key pair using CreateKeyPair or ImportKeyPair. If you do not specify a key pair, you can't connect to the instance unless you choose an AMI that is configured to allow users another way to log in.
16493 */
16494 KeyName?: String;
16495 /**
16496 * The maximum number of instances to launch. If you specify more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches the largest possible number of instances above MinCount. Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 FAQ.
16497 */
16498 MaxCount: Integer;
16499 /**
16500 * The minimum number of instances to launch. If you specify a minimum that is more instances than Amazon EC2 can launch in the target Availability Zone, Amazon EC2 launches no instances. Constraints: Between 1 and the maximum number you're allowed for the specified instance type. For more information about the default limits, and how to request an increase, see How many instances can I run in Amazon EC2 in the Amazon EC2 General FAQ.
16501 */
16502 MinCount: Integer;
16503 /**
16504 * The monitoring for the instance.
16505 */
16506 Monitoring?: RunInstancesMonitoringEnabled;
16507 /**
16508 * The placement for the instance.
16509 */
16510 Placement?: Placement;
16511 /**
16512 * The ID of the RAM disk. We recommend that you use PV-GRUB instead of kernels and RAM disks. For more information, see PV-GRUB in the Amazon Elastic Compute Cloud User Guide.
16513 */
16514 RamdiskId?: String;
16515 /**
16516 * One or more security group IDs. You can create a security group using CreateSecurityGroup. Default: Amazon EC2 uses the default security group. You cannot specify this option and the network interfaces option in the same request.
16517 */
16518 SecurityGroupIds?: SecurityGroupIdStringList;
16519 /**
16520 * [EC2-Classic, default VPC] One or more security group names. For a nondefault VPC, you must use security group IDs instead. You cannot specify this option and the network interfaces option in the same request. Default: Amazon EC2 uses the default security group.
16521 */
16522 SecurityGroups?: SecurityGroupStringList;
16523 /**
16524 * [EC2-VPC] The ID of the subnet to launch the instance into. You cannot specify this option and the network interfaces option in the same request.
16525 */
16526 SubnetId?: String;
16527 /**
16528 * The user data to make available to the instance. For more information, see Running Commands on Your Linux Instance at Launch (Linux) and Adding User Data (Windows). If you are using a command line tool, base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide base64-encoded text.
16529 */
16530 UserData?: String;
16531 /**
16532 * Reserved.
16533 */
16534 AdditionalInfo?: String;
16535 /**
16536 * Unique, case-sensitive identifier you provide to ensure the idempotency of the request. For more information, see Ensuring Idempotency. Constraints: Maximum 64 ASCII characters
16537 */
16538 ClientToken?: String;
16539 /**
16540 * If you set this parameter to true, you can't terminate the instance using the Amazon EC2 console, CLI, or API; otherwise, you can. To change this attribute to false after launch, use ModifyInstanceAttribute. Alternatively, if you set InstanceInitiatedShutdownBehavior to terminate, you can terminate the instance by running the shutdown command from the instance. Default: false
16541 */
16542 DisableApiTermination?: Boolean;
16543 /**
16544 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16545 */
16546 DryRun?: Boolean;
16547 /**
16548 * Indicates whether the instance is optimized for Amazon EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal Amazon EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance. Default: false
16549 */
16550 EbsOptimized?: Boolean;
16551 /**
16552 * The IAM instance profile.
16553 */
16554 IamInstanceProfile?: IamInstanceProfileSpecification;
16555 /**
16556 * Indicates whether an instance stops or terminates when you initiate shutdown from the instance (using the operating system command for system shutdown). Default: stop
16557 */
16558 InstanceInitiatedShutdownBehavior?: ShutdownBehavior;
16559 /**
16560 * One or more network interfaces. You cannot specify this option and the network interfaces option in the same request.
16561 */
16562 NetworkInterfaces?: InstanceNetworkInterfaceSpecificationList;
16563 /**
16564 * [EC2-VPC] The primary IPv4 address. You must specify a value from the IPv4 address range of the subnet. Only one private IP address can be designated as primary. You can't specify this option if you've specified the option to designate a private IP address as the primary IP address in a network interface specification. You cannot specify this option if you're launching more than one instance in the request. You cannot specify this option and the network interfaces option in the same request.
16565 */
16566 PrivateIpAddress?: String;
16567 /**
16568 * An elastic GPU to associate with the instance.
16569 */
16570 ElasticGpuSpecification?: ElasticGpuSpecifications;
16571 /**
16572 * An elastic inference accelerator.
16573 */
16574 ElasticInferenceAccelerators?: ElasticInferenceAccelerators;
16575 /**
16576 * The tags to apply to the resources during launch. You can only tag instances and volumes on launch. The specified tags are applied to all instances or volumes that are created during launch. To tag a resource after it has been created, see CreateTags.
16577 */
16578 TagSpecifications?: TagSpecificationList;
16579 /**
16580 * The launch template to use to launch the instances. Any parameters that you specify in RunInstances override the same parameters in the launch template. You can specify either the name or ID of a launch template, but not both.
16581 */
16582 LaunchTemplate?: LaunchTemplateSpecification;
16583 /**
16584 * The market (purchasing) option for the instances. For RunInstances, persistent Spot Instance requests are only supported when InstanceInterruptionBehavior is set to either hibernate or stop.
16585 */
16586 InstanceMarketOptions?: InstanceMarketOptionsRequest;
16587 /**
16588 * The credit option for CPU usage of the instance. Valid values are standard and unlimited. To change this attribute after launch, use ModifyInstanceCreditSpecification. For more information, see Burstable Performance Instances in the Amazon Elastic Compute Cloud User Guide. Default: standard (T2 instances) or unlimited (T3 instances)
16589 */
16590 CreditSpecification?: CreditSpecificationRequest;
16591 /**
16592 * The CPU options for the instance. For more information, see Optimizing CPU Options in the Amazon Elastic Compute Cloud User Guide.
16593 */
16594 CpuOptions?: CpuOptionsRequest;
16595 /**
16596 * Information about the Capacity Reservation targeting option. If you do not specify this parameter, the instance's Capacity Reservation preference defaults to open, which enables it to run in any open Capacity Reservation that has matching attributes (instance type, platform, Availability Zone).
16597 */
16598 CapacityReservationSpecification?: CapacityReservationSpecification;
16599 /**
16600 * Indicates whether an instance is enabled for hibernation. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide.
16601 */
16602 HibernationOptions?: HibernationOptionsRequest;
16603 /**
16604 * The license configurations.
16605 */
16606 LicenseSpecifications?: LicenseSpecificationListRequest;
16607 }
16608 export interface RunScheduledInstancesRequest {
16609 /**
16610 * Unique, case-sensitive identifier that ensures the idempotency of the request. For more information, see Ensuring Idempotency.
16611 */
16612 ClientToken?: String;
16613 /**
16614 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
16615 */
16616 DryRun?: Boolean;
16617 /**
16618 * The number of instances. Default: 1
16619 */
16620 InstanceCount?: Integer;
16621 /**
16622 * The launch specification. You must match the instance type, Availability Zone, network, and platform of the schedule that you purchased.
16623 */
16624 LaunchSpecification: ScheduledInstancesLaunchSpecification;
16625 /**
16626 * The Scheduled Instance ID.
16627 */
16628 ScheduledInstanceId: String;
16629 }
16630 export interface RunScheduledInstancesResult {
16631 /**
16632 * The IDs of the newly launched instances.
16633 */
16634 InstanceIdSet?: InstanceIdSet;
16635 }
16636 export interface S3Storage {
16637 /**
16638 * The access key ID of the owner of the bucket. Before you specify a value for your access key ID, review and follow the guidance in Best Practices for Managing AWS Access Keys.
16639 */
16640 AWSAccessKeyId?: String;
16641 /**
16642 * The bucket in which to store the AMI. You can specify a bucket that you already own or a new bucket that Amazon EC2 creates on your behalf. If you specify a bucket that belongs to someone else, Amazon EC2 returns an error.
16643 */
16644 Bucket?: String;
16645 /**
16646 * The beginning of the file name of the AMI.
16647 */
16648 Prefix?: String;
16649 /**
16650 * An Amazon S3 upload policy that gives Amazon EC2 permission to upload items into Amazon S3 on your behalf.
16651 */
16652 UploadPolicy?: _Blob;
16653 /**
16654 * The signature of the JSON document.
16655 */
16656 UploadPolicySignature?: String;
16657 }
16658 export interface ScheduledInstance {
16659 /**
16660 * The Availability Zone.
16661 */
16662 AvailabilityZone?: String;
16663 /**
16664 * The date when the Scheduled Instance was purchased.
16665 */
16666 CreateDate?: DateTime;
16667 /**
16668 * The hourly price for a single instance.
16669 */
16670 HourlyPrice?: String;
16671 /**
16672 * The number of instances.
16673 */
16674 InstanceCount?: Integer;
16675 /**
16676 * The instance type.
16677 */
16678 InstanceType?: String;
16679 /**
16680 * The network platform (EC2-Classic or EC2-VPC).
16681 */
16682 NetworkPlatform?: String;
16683 /**
16684 * The time for the next schedule to start.
16685 */
16686 NextSlotStartTime?: DateTime;
16687 /**
16688 * The platform (Linux/UNIX or Windows).
16689 */
16690 Platform?: String;
16691 /**
16692 * The time that the previous schedule ended or will end.
16693 */
16694 PreviousSlotEndTime?: DateTime;
16695 /**
16696 * The schedule recurrence.
16697 */
16698 Recurrence?: ScheduledInstanceRecurrence;
16699 /**
16700 * The Scheduled Instance ID.
16701 */
16702 ScheduledInstanceId?: String;
16703 /**
16704 * The number of hours in the schedule.
16705 */
16706 SlotDurationInHours?: Integer;
16707 /**
16708 * The end date for the Scheduled Instance.
16709 */
16710 TermEndDate?: DateTime;
16711 /**
16712 * The start date for the Scheduled Instance.
16713 */
16714 TermStartDate?: DateTime;
16715 /**
16716 * The total number of hours for a single instance for the entire term.
16717 */
16718 TotalScheduledInstanceHours?: Integer;
16719 }
16720 export interface ScheduledInstanceAvailability {
16721 /**
16722 * The Availability Zone.
16723 */
16724 AvailabilityZone?: String;
16725 /**
16726 * The number of available instances.
16727 */
16728 AvailableInstanceCount?: Integer;
16729 /**
16730 * The time period for the first schedule to start.
16731 */
16732 FirstSlotStartTime?: DateTime;
16733 /**
16734 * The hourly price for a single instance.
16735 */
16736 HourlyPrice?: String;
16737 /**
16738 * The instance type. You can specify one of the C3, C4, M4, or R3 instance types.
16739 */
16740 InstanceType?: String;
16741 /**
16742 * The maximum term. The only possible value is 365 days.
16743 */
16744 MaxTermDurationInDays?: Integer;
16745 /**
16746 * The minimum term. The only possible value is 365 days.
16747 */
16748 MinTermDurationInDays?: Integer;
16749 /**
16750 * The network platform (EC2-Classic or EC2-VPC).
16751 */
16752 NetworkPlatform?: String;
16753 /**
16754 * The platform (Linux/UNIX or Windows).
16755 */
16756 Platform?: String;
16757 /**
16758 * The purchase token. This token expires in two hours.
16759 */
16760 PurchaseToken?: String;
16761 /**
16762 * The schedule recurrence.
16763 */
16764 Recurrence?: ScheduledInstanceRecurrence;
16765 /**
16766 * The number of hours in the schedule.
16767 */
16768 SlotDurationInHours?: Integer;
16769 /**
16770 * The total number of hours for a single instance for the entire term.
16771 */
16772 TotalScheduledInstanceHours?: Integer;
16773 }
16774 export type ScheduledInstanceAvailabilitySet = ScheduledInstanceAvailability[];
16775 export type ScheduledInstanceIdRequestSet = String[];
16776 export interface ScheduledInstanceRecurrence {
16777 /**
16778 * The frequency (Daily, Weekly, or Monthly).
16779 */
16780 Frequency?: String;
16781 /**
16782 * The interval quantity. The interval unit depends on the value of frequency. For example, every 2 weeks or every 2 months.
16783 */
16784 Interval?: Integer;
16785 /**
16786 * The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday).
16787 */
16788 OccurrenceDaySet?: OccurrenceDaySet;
16789 /**
16790 * Indicates whether the occurrence is relative to the end of the specified week or month.
16791 */
16792 OccurrenceRelativeToEnd?: Boolean;
16793 /**
16794 * The unit for occurrenceDaySet (DayOfWeek or DayOfMonth).
16795 */
16796 OccurrenceUnit?: String;
16797 }
16798 export interface ScheduledInstanceRecurrenceRequest {
16799 /**
16800 * The frequency (Daily, Weekly, or Monthly).
16801 */
16802 Frequency?: String;
16803 /**
16804 * The interval quantity. The interval unit depends on the value of Frequency. For example, every 2 weeks or every 2 months.
16805 */
16806 Interval?: Integer;
16807 /**
16808 * The days. For a monthly schedule, this is one or more days of the month (1-31). For a weekly schedule, this is one or more days of the week (1-7, where 1 is Sunday). You can't specify this value with a daily schedule. If the occurrence is relative to the end of the month, you can specify only a single day.
16809 */
16810 OccurrenceDays?: OccurrenceDayRequestSet;
16811 /**
16812 * Indicates whether the occurrence is relative to the end of the specified week or month. You can't specify this value with a daily schedule.
16813 */
16814 OccurrenceRelativeToEnd?: Boolean;
16815 /**
16816 * The unit for OccurrenceDays (DayOfWeek or DayOfMonth). This value is required for a monthly schedule. You can't specify DayOfWeek with a weekly schedule. You can't specify this value with a daily schedule.
16817 */
16818 OccurrenceUnit?: String;
16819 }
16820 export type ScheduledInstanceSet = ScheduledInstance[];
16821 export interface ScheduledInstancesBlockDeviceMapping {
16822 /**
16823 * The device name (for example, /dev/sdh or xvdh).
16824 */
16825 DeviceName?: String;
16826 /**
16827 * Parameters used to set up EBS volumes automatically when the instance is launched.
16828 */
16829 Ebs?: ScheduledInstancesEbs;
16830 /**
16831 * Suppresses the specified device included in the block device mapping of the AMI.
16832 */
16833 NoDevice?: String;
16834 /**
16835 * The virtual device name (ephemeralN). Instance store volumes are numbered starting from 0. An instance type with two available instance store volumes can specify mappings for ephemeral0 and ephemeral1. The number of available instance store volumes depends on the instance type. After you connect to the instance, you must mount the volume. Constraints: For M3 instances, you must specify instance store volumes in the block device mapping for the instance. When you launch an M3 instance, we ignore any instance store volumes specified in the block device mapping for the AMI.
16836 */
16837 VirtualName?: String;
16838 }
16839 export type ScheduledInstancesBlockDeviceMappingSet = ScheduledInstancesBlockDeviceMapping[];
16840 export interface ScheduledInstancesEbs {
16841 /**
16842 * Indicates whether the volume is deleted on instance termination.
16843 */
16844 DeleteOnTermination?: Boolean;
16845 /**
16846 * Indicates whether the volume is encrypted. You can attached encrypted volumes only to instances that support them.
16847 */
16848 Encrypted?: Boolean;
16849 /**
16850 * The number of I/O operations per second (IOPS) that the volume supports. For io1 volumes, this represents the number of IOPS that are provisioned for the volume. For gp2 volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information about gp2 baseline performance, I/O credits, and bursting, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide. Constraint: Range is 100-20000 IOPS for io1 volumes and 100-10000 IOPS for gp2 volumes. Condition: This parameter is required for requests to create io1volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.
16851 */
16852 Iops?: Integer;
16853 /**
16854 * The ID of the snapshot.
16855 */
16856 SnapshotId?: String;
16857 /**
16858 * The size of the volume, in GiB. Default: If you're creating the volume from a snapshot and don't specify a volume size, the default is the snapshot size.
16859 */
16860 VolumeSize?: Integer;
16861 /**
16862 * The volume type. gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, Throughput Optimized HDD for st1, Cold HDD for sc1, or standard for Magnetic. Default: standard
16863 */
16864 VolumeType?: String;
16865 }
16866 export interface ScheduledInstancesIamInstanceProfile {
16867 /**
16868 * The Amazon Resource Name (ARN).
16869 */
16870 Arn?: String;
16871 /**
16872 * The name.
16873 */
16874 Name?: String;
16875 }
16876 export interface ScheduledInstancesIpv6Address {
16877 /**
16878 * The IPv6 address.
16879 */
16880 Ipv6Address?: Ipv6Address;
16881 }
16882 export type ScheduledInstancesIpv6AddressList = ScheduledInstancesIpv6Address[];
16883 export interface ScheduledInstancesLaunchSpecification {
16884 /**
16885 * One or more block device mapping entries.
16886 */
16887 BlockDeviceMappings?: ScheduledInstancesBlockDeviceMappingSet;
16888 /**
16889 * Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS-optimized instance. Default: false
16890 */
16891 EbsOptimized?: Boolean;
16892 /**
16893 * The IAM instance profile.
16894 */
16895 IamInstanceProfile?: ScheduledInstancesIamInstanceProfile;
16896 /**
16897 * The ID of the Amazon Machine Image (AMI).
16898 */
16899 ImageId: String;
16900 /**
16901 * The instance type.
16902 */
16903 InstanceType?: String;
16904 /**
16905 * The ID of the kernel.
16906 */
16907 KernelId?: String;
16908 /**
16909 * The name of the key pair.
16910 */
16911 KeyName?: String;
16912 /**
16913 * Enable or disable monitoring for the instances.
16914 */
16915 Monitoring?: ScheduledInstancesMonitoring;
16916 /**
16917 * One or more network interfaces.
16918 */
16919 NetworkInterfaces?: ScheduledInstancesNetworkInterfaceSet;
16920 /**
16921 * The placement information.
16922 */
16923 Placement?: ScheduledInstancesPlacement;
16924 /**
16925 * The ID of the RAM disk.
16926 */
16927 RamdiskId?: String;
16928 /**
16929 * The IDs of one or more security groups.
16930 */
16931 SecurityGroupIds?: ScheduledInstancesSecurityGroupIdSet;
16932 /**
16933 * The ID of the subnet in which to launch the instances.
16934 */
16935 SubnetId?: String;
16936 /**
16937 * The base64-encoded MIME user data.
16938 */
16939 UserData?: String;
16940 }
16941 export interface ScheduledInstancesMonitoring {
16942 /**
16943 * Indicates whether monitoring is enabled.
16944 */
16945 Enabled?: Boolean;
16946 }
16947 export interface ScheduledInstancesNetworkInterface {
16948 /**
16949 * Indicates whether to assign a public IPv4 address to instances launched in a VPC. The public IPv4 address can only be assigned to a network interface for eth0, and can only be assigned to a new network interface, not an existing one. You cannot specify more than one network interface in the request. If launching into a default subnet, the default value is true.
16950 */
16951 AssociatePublicIpAddress?: Boolean;
16952 /**
16953 * Indicates whether to delete the interface when the instance is terminated.
16954 */
16955 DeleteOnTermination?: Boolean;
16956 /**
16957 * The description.
16958 */
16959 Description?: String;
16960 /**
16961 * The index of the device for the network interface attachment.
16962 */
16963 DeviceIndex?: Integer;
16964 /**
16965 * The IDs of one or more security groups.
16966 */
16967 Groups?: ScheduledInstancesSecurityGroupIdSet;
16968 /**
16969 * The number of IPv6 addresses to assign to the network interface. The IPv6 addresses are automatically selected from the subnet range.
16970 */
16971 Ipv6AddressCount?: Integer;
16972 /**
16973 * One or more specific IPv6 addresses from the subnet range.
16974 */
16975 Ipv6Addresses?: ScheduledInstancesIpv6AddressList;
16976 /**
16977 * The ID of the network interface.
16978 */
16979 NetworkInterfaceId?: String;
16980 /**
16981 * The IPv4 address of the network interface within the subnet.
16982 */
16983 PrivateIpAddress?: String;
16984 /**
16985 * The private IPv4 addresses.
16986 */
16987 PrivateIpAddressConfigs?: PrivateIpAddressConfigSet;
16988 /**
16989 * The number of secondary private IPv4 addresses.
16990 */
16991 SecondaryPrivateIpAddressCount?: Integer;
16992 /**
16993 * The ID of the subnet.
16994 */
16995 SubnetId?: String;
16996 }
16997 export type ScheduledInstancesNetworkInterfaceSet = ScheduledInstancesNetworkInterface[];
16998 export interface ScheduledInstancesPlacement {
16999 /**
17000 * The Availability Zone.
17001 */
17002 AvailabilityZone?: String;
17003 /**
17004 * The name of the placement group.
17005 */
17006 GroupName?: String;
17007 }
17008 export interface ScheduledInstancesPrivateIpAddressConfig {
17009 /**
17010 * Indicates whether this is a primary IPv4 address. Otherwise, this is a secondary IPv4 address.
17011 */
17012 Primary?: Boolean;
17013 /**
17014 * The IPv4 address.
17015 */
17016 PrivateIpAddress?: String;
17017 }
17018 export type ScheduledInstancesSecurityGroupIdSet = String[];
17019 export interface SearchTransitGatewayRoutesRequest {
17020 /**
17021 * The ID of the transit gateway route table.
17022 */
17023 TransitGatewayRouteTableId: String;
17024 /**
17025 * One or more filters. The possible values are: attachment.transit-gateway-attachment-id- The id of the transit gateway attachment. attachment.resource-id - The resource id of the transit gateway attachment. attachment.resource-type - The attachment resource type (vpc | vpn). route-search.exact-match - The exact match of the specified filter. route-search.longest-prefix-match - The longest prefix that matches the route. route-search.subnet-of-match - The routes with a subnet that match the specified CIDR filter. route-search.supernet-of-match - The routes with a CIDR that encompass the CIDR filter. For example, if you have 10.0.1.0/29 and 10.0.1.0/31 routes in your route table and you specify supernet-of-match as 10.0.1.0/30, then the result returns 10.0.1.0/29. state - The state of the attachment (available | deleted | deleting | failed | modifying | pendingAcceptance | pending | rollingBack | rejected | rejecting). type - The type of roue (active | blackhole).
17026 */
17027 Filters: FilterList;
17028 /**
17029 * The maximum number of routes to return.
17030 */
17031 MaxResults?: TransitGatewayMaxResults;
17032 /**
17033 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
17034 */
17035 DryRun?: Boolean;
17036 }
17037 export interface SearchTransitGatewayRoutesResult {
17038 /**
17039 * Information about the routes.
17040 */
17041 Routes?: TransitGatewayRouteList;
17042 /**
17043 * Indicates whether there are additional routes available.
17044 */
17045 AdditionalRoutesAvailable?: Boolean;
17046 }
17047 export interface SecurityGroup {
17048 /**
17049 * A description of the security group.
17050 */
17051 Description?: String;
17052 /**
17053 * The name of the security group.
17054 */
17055 GroupName?: String;
17056 /**
17057 * One or more inbound rules associated with the security group.
17058 */
17059 IpPermissions?: IpPermissionList;
17060 /**
17061 * The AWS account ID of the owner of the security group.
17062 */
17063 OwnerId?: String;
17064 /**
17065 * The ID of the security group.
17066 */
17067 GroupId?: String;
17068 /**
17069 * [EC2-VPC] One or more outbound rules associated with the security group.
17070 */
17071 IpPermissionsEgress?: IpPermissionList;
17072 /**
17073 * Any tags assigned to the security group.
17074 */
17075 Tags?: TagList;
17076 /**
17077 * [EC2-VPC] The ID of the VPC for the security group.
17078 */
17079 VpcId?: String;
17080 }
17081 export type SecurityGroupIdStringList = String[];
17082 export interface SecurityGroupIdentifier {
17083 /**
17084 * The ID of the security group.
17085 */
17086 GroupId?: String;
17087 /**
17088 * The name of the security group.
17089 */
17090 GroupName?: String;
17091 }
17092 export type SecurityGroupList = SecurityGroup[];
17093 export interface SecurityGroupReference {
17094 /**
17095 * The ID of your security group.
17096 */
17097 GroupId?: String;
17098 /**
17099 * The ID of the VPC with the referencing security group.
17100 */
17101 ReferencingVpcId?: String;
17102 /**
17103 * The ID of the VPC peering connection.
17104 */
17105 VpcPeeringConnectionId?: String;
17106 }
17107 export type SecurityGroupReferences = SecurityGroupReference[];
17108 export type SecurityGroupStringList = String[];
17109 export interface ServiceConfiguration {
17110 /**
17111 * The type of service.
17112 */
17113 ServiceType?: ServiceTypeDetailSet;
17114 /**
17115 * The ID of the service.
17116 */
17117 ServiceId?: String;
17118 /**
17119 * The name of the service.
17120 */
17121 ServiceName?: String;
17122 /**
17123 * The service state.
17124 */
17125 ServiceState?: ServiceState;
17126 /**
17127 * In the Availability Zones in which the service is available.
17128 */
17129 AvailabilityZones?: ValueStringList;
17130 /**
17131 * Indicates whether requests from other AWS accounts to create an endpoint to the service must first be accepted.
17132 */
17133 AcceptanceRequired?: Boolean;
17134 /**
17135 * The Amazon Resource Names (ARNs) of the Network Load Balancers for the service.
17136 */
17137 NetworkLoadBalancerArns?: ValueStringList;
17138 /**
17139 * The DNS names for the service.
17140 */
17141 BaseEndpointDnsNames?: ValueStringList;
17142 /**
17143 * The private DNS name for the service.
17144 */
17145 PrivateDnsName?: String;
17146 }
17147 export type ServiceConfigurationSet = ServiceConfiguration[];
17148 export interface ServiceDetail {
17149 /**
17150 * The Amazon Resource Name (ARN) of the service.
17151 */
17152 ServiceName?: String;
17153 /**
17154 * The type of service.
17155 */
17156 ServiceType?: ServiceTypeDetailSet;
17157 /**
17158 * The Availability Zones in which the service is available.
17159 */
17160 AvailabilityZones?: ValueStringList;
17161 /**
17162 * The AWS account ID of the service owner.
17163 */
17164 Owner?: String;
17165 /**
17166 * The DNS names for the service.
17167 */
17168 BaseEndpointDnsNames?: ValueStringList;
17169 /**
17170 * The private DNS name for the service.
17171 */
17172 PrivateDnsName?: String;
17173 /**
17174 * Indicates whether the service supports endpoint policies.
17175 */
17176 VpcEndpointPolicySupported?: Boolean;
17177 /**
17178 * Indicates whether VPC endpoint connection requests to the service must be accepted by the service owner.
17179 */
17180 AcceptanceRequired?: Boolean;
17181 }
17182 export type ServiceDetailSet = ServiceDetail[];
17183 export type ServiceState = "Pending"|"Available"|"Deleting"|"Deleted"|"Failed"|string;
17184 export type ServiceType = "Interface"|"Gateway"|string;
17185 export interface ServiceTypeDetail {
17186 /**
17187 * The type of service.
17188 */
17189 ServiceType?: ServiceType;
17190 }
17191 export type ServiceTypeDetailSet = ServiceTypeDetail[];
17192 export type ShutdownBehavior = "stop"|"terminate"|string;
17193 export interface SlotDateTimeRangeRequest {
17194 /**
17195 * The earliest date and time, in UTC, for the Scheduled Instance to start.
17196 */
17197 EarliestTime: DateTime;
17198 /**
17199 * The latest date and time, in UTC, for the Scheduled Instance to start. This value must be later than or equal to the earliest date and at most three months in the future.
17200 */
17201 LatestTime: DateTime;
17202 }
17203 export interface SlotStartTimeRangeRequest {
17204 /**
17205 * The earliest date and time, in UTC, for the Scheduled Instance to start.
17206 */
17207 EarliestTime?: DateTime;
17208 /**
17209 * The latest date and time, in UTC, for the Scheduled Instance to start.
17210 */
17211 LatestTime?: DateTime;
17212 }
17213 export interface Snapshot {
17214 /**
17215 * The data encryption key identifier for the snapshot. This value is a unique identifier that corresponds to the data encryption key that was used to encrypt the original volume or snapshot copy. Because data encryption keys are inherited by volumes created from snapshots, and vice versa, if snapshots share the same data encryption key identifier, then they belong to the same volume/snapshot lineage. This parameter is only returned by the DescribeSnapshots API operation.
17216 */
17217 DataEncryptionKeyId?: String;
17218 /**
17219 * The description for the snapshot.
17220 */
17221 Description?: String;
17222 /**
17223 * Indicates whether the snapshot is encrypted.
17224 */
17225 Encrypted?: Boolean;
17226 /**
17227 * The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the parent volume.
17228 */
17229 KmsKeyId?: String;
17230 /**
17231 * The AWS account ID of the EBS snapshot owner.
17232 */
17233 OwnerId?: String;
17234 /**
17235 * The progress of the snapshot, as a percentage.
17236 */
17237 Progress?: String;
17238 /**
17239 * The ID of the snapshot. Each snapshot receives a unique identifier when it is created.
17240 */
17241 SnapshotId?: String;
17242 /**
17243 * The time stamp when the snapshot was initiated.
17244 */
17245 StartTime?: DateTime;
17246 /**
17247 * The snapshot state.
17248 */
17249 State?: SnapshotState;
17250 /**
17251 * Encrypted Amazon EBS snapshots are copied asynchronously. If a snapshot copy operation fails (for example, if the proper AWS Key Management Service (AWS KMS) permissions are not obtained) this field displays error state details to help you diagnose why the error occurred. This parameter is only returned by the DescribeSnapshots API operation.
17252 */
17253 StateMessage?: String;
17254 /**
17255 * The ID of the volume that was used to create the snapshot. Snapshots created by the CopySnapshot action have an arbitrary volume ID that should not be used for any purpose.
17256 */
17257 VolumeId?: String;
17258 /**
17259 * The size of the volume, in GiB.
17260 */
17261 VolumeSize?: Integer;
17262 /**
17263 * Value from an Amazon-maintained list (amazon | aws-marketplace | microsoft) of snapshot owners. Not to be confused with the user-configured AWS account alias, which is set from the IAM console.
17264 */
17265 OwnerAlias?: String;
17266 /**
17267 * Any tags assigned to the snapshot.
17268 */
17269 Tags?: TagList;
17270 }
17271 export type SnapshotAttributeName = "productCodes"|"createVolumePermission"|string;
17272 export interface SnapshotDetail {
17273 /**
17274 * A description for the snapshot.
17275 */
17276 Description?: String;
17277 /**
17278 * The block device mapping for the snapshot.
17279 */
17280 DeviceName?: String;
17281 /**
17282 * The size of the disk in the snapshot, in GiB.
17283 */
17284 DiskImageSize?: Double;
17285 /**
17286 * The format of the disk image from which the snapshot is created.
17287 */
17288 Format?: String;
17289 /**
17290 * The percentage of progress for the task.
17291 */
17292 Progress?: String;
17293 /**
17294 * The snapshot ID of the disk being imported.
17295 */
17296 SnapshotId?: String;
17297 /**
17298 * A brief status of the snapshot creation.
17299 */
17300 Status?: String;
17301 /**
17302 * A detailed status message for the snapshot creation.
17303 */
17304 StatusMessage?: String;
17305 /**
17306 * The URL used to access the disk image.
17307 */
17308 Url?: String;
17309 /**
17310 * The S3 bucket for the disk image.
17311 */
17312 UserBucket?: UserBucketDetails;
17313 }
17314 export type SnapshotDetailList = SnapshotDetail[];
17315 export interface SnapshotDiskContainer {
17316 /**
17317 * The description of the disk image being imported.
17318 */
17319 Description?: String;
17320 /**
17321 * The format of the disk image being imported. Valid values: VHD | VMDK
17322 */
17323 Format?: String;
17324 /**
17325 * The URL to the Amazon S3-based disk image being imported. It can either be a https URL (https://..) or an Amazon S3 URL (s3://..).
17326 */
17327 Url?: String;
17328 /**
17329 * The S3 bucket for the disk image.
17330 */
17331 UserBucket?: UserBucket;
17332 }
17333 export type SnapshotIdStringList = String[];
17334 export type SnapshotList = Snapshot[];
17335 export type SnapshotState = "pending"|"completed"|"error"|string;
17336 export interface SnapshotTaskDetail {
17337 /**
17338 * The description of the snapshot.
17339 */
17340 Description?: String;
17341 /**
17342 * The size of the disk in the snapshot, in GiB.
17343 */
17344 DiskImageSize?: Double;
17345 /**
17346 * Indicates whether the snapshot is encrypted.
17347 */
17348 Encrypted?: Boolean;
17349 /**
17350 * The format of the disk image from which the snapshot is created.
17351 */
17352 Format?: String;
17353 /**
17354 * The identifier for the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to create the encrypted snapshot.
17355 */
17356 KmsKeyId?: String;
17357 /**
17358 * The percentage of completion for the import snapshot task.
17359 */
17360 Progress?: String;
17361 /**
17362 * The snapshot ID of the disk being imported.
17363 */
17364 SnapshotId?: String;
17365 /**
17366 * A brief status for the import snapshot task.
17367 */
17368 Status?: String;
17369 /**
17370 * A detailed status message for the import snapshot task.
17371 */
17372 StatusMessage?: String;
17373 /**
17374 * The URL of the disk image from which the snapshot is created.
17375 */
17376 Url?: String;
17377 /**
17378 * The S3 bucket for the disk image.
17379 */
17380 UserBucket?: UserBucketDetails;
17381 }
17382 export type SpotAllocationStrategy = "lowest-price"|"diversified"|string;
17383 export interface SpotDatafeedSubscription {
17384 /**
17385 * The Amazon S3 bucket where the Spot Instance data feed is located.
17386 */
17387 Bucket?: String;
17388 /**
17389 * The fault codes for the Spot Instance request, if any.
17390 */
17391 Fault?: SpotInstanceStateFault;
17392 /**
17393 * The AWS account ID of the account.
17394 */
17395 OwnerId?: String;
17396 /**
17397 * The prefix that is prepended to data feed files.
17398 */
17399 Prefix?: String;
17400 /**
17401 * The state of the Spot Instance data feed subscription.
17402 */
17403 State?: DatafeedSubscriptionState;
17404 }
17405 export interface SpotFleetLaunchSpecification {
17406 /**
17407 * One or more security groups. When requesting instances in a VPC, you must specify the IDs of the security groups. When requesting instances in EC2-Classic, you can specify the names or the IDs of the security groups.
17408 */
17409 SecurityGroups?: GroupIdentifierList;
17410 /**
17411 * Deprecated.
17412 */
17413 AddressingType?: String;
17414 /**
17415 * One or more block device mapping entries. You can't specify both a snapshot ID and an encryption value. This is because only blank volumes can be encrypted on creation. If a snapshot is the basis for a volume, it is not blank and its encryption status is used for the volume encryption status.
17416 */
17417 BlockDeviceMappings?: BlockDeviceMappingList;
17418 /**
17419 * Indicates whether the instances are optimized for EBS I/O. This optimization provides dedicated throughput to Amazon EBS and an optimized configuration stack to provide optimal EBS I/O performance. This optimization isn't available with all instance types. Additional usage charges apply when using an EBS Optimized instance. Default: false
17420 */
17421 EbsOptimized?: Boolean;
17422 /**
17423 * The IAM instance profile.
17424 */
17425 IamInstanceProfile?: IamInstanceProfileSpecification;
17426 /**
17427 * The ID of the AMI.
17428 */
17429 ImageId?: String;
17430 /**
17431 * The instance type.
17432 */
17433 InstanceType?: InstanceType;
17434 /**
17435 * The ID of the kernel.
17436 */
17437 KernelId?: String;
17438 /**
17439 * The name of the key pair.
17440 */
17441 KeyName?: String;
17442 /**
17443 * Enable or disable monitoring for the instances.
17444 */
17445 Monitoring?: SpotFleetMonitoring;
17446 /**
17447 * One or more network interfaces. If you specify a network interface, you must specify subnet IDs and security group IDs using the network interface.
17448 */
17449 NetworkInterfaces?: InstanceNetworkInterfaceSpecificationList;
17450 /**
17451 * The placement information.
17452 */
17453 Placement?: SpotPlacement;
17454 /**
17455 * The ID of the RAM disk.
17456 */
17457 RamdiskId?: String;
17458 /**
17459 * The maximum price per unit hour that you are willing to pay for a Spot Instance. If this value is not specified, the default is the Spot price specified for the fleet. To determine the Spot price per unit hour, divide the Spot price by the value of WeightedCapacity.
17460 */
17461 SpotPrice?: String;
17462 /**
17463 * The ID of the subnet in which to launch the instances. To specify multiple subnets, separate them using commas; for example, "subnet-a61dafcf, subnet-65ea5f08".
17464 */
17465 SubnetId?: String;
17466 /**
17467 * The Base64-encoded user data to make available to the instances.
17468 */
17469 UserData?: String;
17470 /**
17471 * The number of units provided by the specified instance type. These are the same units that you chose to set the target capacity in terms (instances or a performance characteristic such as vCPUs, memory, or I/O). If the target capacity divided by this value is not a whole number, we round the number of instances to the next whole number. If this value is not specified, the default is 1.
17472 */
17473 WeightedCapacity?: Double;
17474 /**
17475 * The tags to apply during creation.
17476 */
17477 TagSpecifications?: SpotFleetTagSpecificationList;
17478 }
17479 export interface SpotFleetMonitoring {
17480 /**
17481 * Enables monitoring for the instance. Default: false
17482 */
17483 Enabled?: Boolean;
17484 }
17485 export interface SpotFleetRequestConfig {
17486 /**
17487 * The progress of the Spot Fleet request. If there is an error, the status is error. After all requests are placed, the status is pending_fulfillment. If the size of the fleet is equal to or greater than its target capacity, the status is fulfilled. If the size of the fleet is decreased, the status is pending_termination while Spot Instances are terminating.
17488 */
17489 ActivityStatus?: ActivityStatus;
17490 /**
17491 * The creation date and time of the request.
17492 */
17493 CreateTime?: DateTime;
17494 /**
17495 * The configuration of the Spot Fleet request.
17496 */
17497 SpotFleetRequestConfig?: SpotFleetRequestConfigData;
17498 /**
17499 * The ID of the Spot Fleet request.
17500 */
17501 SpotFleetRequestId?: String;
17502 /**
17503 * The state of the Spot Fleet request.
17504 */
17505 SpotFleetRequestState?: BatchState;
17506 }
17507 export interface SpotFleetRequestConfigData {
17508 /**
17509 * Indicates how to allocate the target capacity across the Spot pools specified by the Spot Fleet request. The default is lowestPrice.
17510 */
17511 AllocationStrategy?: AllocationStrategy;
17512 /**
17513 * The order of the launch template overrides to use in fulfilling On-Demand capacity. If you specify lowestPrice, Spot Fleet uses price to determine the order, launching the lowest price first. If you specify prioritized, Spot Fleet uses the priority that you assign to each Spot Fleet launch template override, launching the highest priority first. If you do not specify a value, Spot Fleet defaults to lowestPrice.
17514 */
17515 OnDemandAllocationStrategy?: OnDemandAllocationStrategy;
17516 /**
17517 * A unique, case-sensitive identifier that you provide to ensure the idempotency of your listings. This helps to avoid duplicate listings. For more information, see Ensuring Idempotency.
17518 */
17519 ClientToken?: String;
17520 /**
17521 * Indicates whether running Spot Instances should be terminated if the target capacity of the Spot Fleet request is decreased below the current size of the Spot Fleet.
17522 */
17523 ExcessCapacityTerminationPolicy?: ExcessCapacityTerminationPolicy;
17524 /**
17525 * The number of units fulfilled by this request compared to the set target capacity. You cannot set this value.
17526 */
17527 FulfilledCapacity?: Double;
17528 /**
17529 * The number of On-Demand units fulfilled by this request compared to the set target On-Demand capacity.
17530 */
17531 OnDemandFulfilledCapacity?: Double;
17532 /**
17533 * Grants the Spot Fleet permission to terminate Spot Instances on your behalf when you cancel its Spot Fleet request using CancelSpotFleetRequests or when the Spot Fleet request expires, if you set terminateInstancesWithExpiration.
17534 */
17535 IamFleetRole: String;
17536 /**
17537 * The launch specifications for the Spot Fleet request.
17538 */
17539 LaunchSpecifications?: LaunchSpecsList;
17540 /**
17541 * The launch template and overrides.
17542 */
17543 LaunchTemplateConfigs?: LaunchTemplateConfigList;
17544 /**
17545 * The maximum price per unit hour that you are willing to pay for a Spot Instance. The default is the On-Demand price.
17546 */
17547 SpotPrice?: String;
17548 /**
17549 * The number of units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.
17550 */
17551 TargetCapacity: Integer;
17552 /**
17553 * The number of On-Demand units to request. You can choose to set the target capacity in terms of instances or a performance characteristic that is important to your application workload, such as vCPUs, memory, or I/O. If the request type is maintain, you can specify a target capacity of 0 and add capacity later.
17554 */
17555 OnDemandTargetCapacity?: Integer;
17556 /**
17557 * Indicates whether running Spot Instances should be terminated when the Spot Fleet request expires.
17558 */
17559 TerminateInstancesWithExpiration?: Boolean;
17560 /**
17561 * The type of request. Indicates whether the Spot Fleet only requests the target capacity or also attempts to maintain it. When this value is request, the Spot Fleet only places the required requests. It does not attempt to replenish Spot Instances if capacity is diminished, nor does it submit requests in alternative Spot pools if capacity is not available. When this value is maintain, the Spot Fleet maintains the target capacity. The Spot Fleet places the required requests to meet capacity and automatically replenishes any interrupted instances. Default: maintain. instant is listed but is not used by Spot Fleet.
17562 */
17563 Type?: FleetType;
17564 /**
17565 * The start date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The default is to start fulfilling the request immediately.
17566 */
17567 ValidFrom?: DateTime;
17568 /**
17569 * The end date and time of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). At this point, no new Spot Instance requests are placed or able to fulfill the request. If no value is specified, the Spot Fleet request remains until you cancel it.
17570 */
17571 ValidUntil?: DateTime;
17572 /**
17573 * Indicates whether Spot Fleet should replace unhealthy instances.
17574 */
17575 ReplaceUnhealthyInstances?: Boolean;
17576 /**
17577 * The behavior when a Spot Instance is interrupted. The default is terminate.
17578 */
17579 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
17580 /**
17581 * One or more Classic Load Balancers and target groups to attach to the Spot Fleet request. Spot Fleet registers the running Spot Instances with the specified Classic Load Balancers and target groups. With Network Load Balancers, Spot Fleet cannot register instances that have the following instance types: C1, CC1, CC2, CG1, CG2, CR1, CS1, G1, G2, HI1, HS1, M1, M2, M3, and T1.
17582 */
17583 LoadBalancersConfig?: LoadBalancersConfig;
17584 /**
17585 * The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price. Spot Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.
17586 */
17587 InstancePoolsToUseCount?: Integer;
17588 }
17589 export type SpotFleetRequestConfigSet = SpotFleetRequestConfig[];
17590 export interface SpotFleetTagSpecification {
17591 /**
17592 * The type of resource. Currently, the only resource type that is supported is instance.
17593 */
17594 ResourceType?: ResourceType;
17595 /**
17596 * The tags.
17597 */
17598 Tags?: TagList;
17599 }
17600 export type SpotFleetTagSpecificationList = SpotFleetTagSpecification[];
17601 export type SpotInstanceInterruptionBehavior = "hibernate"|"stop"|"terminate"|string;
17602 export interface SpotInstanceRequest {
17603 /**
17604 * If you specified a duration and your Spot Instance request was fulfilled, this is the fixed hourly price in effect for the Spot Instance while it runs.
17605 */
17606 ActualBlockHourlyPrice?: String;
17607 /**
17608 * The Availability Zone group. If you specify the same Availability Zone group for all Spot Instance requests, all Spot Instances are launched in the same Availability Zone.
17609 */
17610 AvailabilityZoneGroup?: String;
17611 /**
17612 * The duration for the Spot Instance, in minutes.
17613 */
17614 BlockDurationMinutes?: Integer;
17615 /**
17616 * The date and time when the Spot Instance request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
17617 */
17618 CreateTime?: DateTime;
17619 /**
17620 * The fault codes for the Spot Instance request, if any.
17621 */
17622 Fault?: SpotInstanceStateFault;
17623 /**
17624 * The instance ID, if an instance has been launched to fulfill the Spot Instance request.
17625 */
17626 InstanceId?: String;
17627 /**
17628 * The instance launch group. Launch groups are Spot Instances that launch together and terminate together.
17629 */
17630 LaunchGroup?: String;
17631 /**
17632 * Additional information for launching instances.
17633 */
17634 LaunchSpecification?: LaunchSpecification;
17635 /**
17636 * The Availability Zone in which the request is launched.
17637 */
17638 LaunchedAvailabilityZone?: String;
17639 /**
17640 * The product description associated with the Spot Instance.
17641 */
17642 ProductDescription?: RIProductDescription;
17643 /**
17644 * The ID of the Spot Instance request.
17645 */
17646 SpotInstanceRequestId?: String;
17647 /**
17648 * The maximum price per hour that you are willing to pay for a Spot Instance.
17649 */
17650 SpotPrice?: String;
17651 /**
17652 * The state of the Spot Instance request. Spot status information helps track your Spot Instance requests. For more information, see Spot Status in the Amazon EC2 User Guide for Linux Instances.
17653 */
17654 State?: SpotInstanceState;
17655 /**
17656 * The status code and status message describing the Spot Instance request.
17657 */
17658 Status?: SpotInstanceStatus;
17659 /**
17660 * Any tags assigned to the resource.
17661 */
17662 Tags?: TagList;
17663 /**
17664 * The Spot Instance request type.
17665 */
17666 Type?: SpotInstanceType;
17667 /**
17668 * The start date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). The request becomes active at this date and time.
17669 */
17670 ValidFrom?: DateTime;
17671 /**
17672 * The end date of the request, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ). If this is a one-time request, it remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date is reached. The default end date is 7 days from the current date.
17673 */
17674 ValidUntil?: DateTime;
17675 /**
17676 * The behavior when a Spot Instance is interrupted.
17677 */
17678 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
17679 }
17680 export type SpotInstanceRequestIdList = String[];
17681 export type SpotInstanceRequestList = SpotInstanceRequest[];
17682 export type SpotInstanceState = "open"|"active"|"closed"|"cancelled"|"failed"|string;
17683 export interface SpotInstanceStateFault {
17684 /**
17685 * The reason code for the Spot Instance state change.
17686 */
17687 Code?: String;
17688 /**
17689 * The message for the Spot Instance state change.
17690 */
17691 Message?: String;
17692 }
17693 export interface SpotInstanceStatus {
17694 /**
17695 * The status code. For a list of status codes, see Spot Status Codes in the Amazon EC2 User Guide for Linux Instances.
17696 */
17697 Code?: String;
17698 /**
17699 * The description for the status code.
17700 */
17701 Message?: String;
17702 /**
17703 * The date and time of the most recent status update, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
17704 */
17705 UpdateTime?: DateTime;
17706 }
17707 export type SpotInstanceType = "one-time"|"persistent"|string;
17708 export interface SpotMarketOptions {
17709 /**
17710 * The maximum hourly price you're willing to pay for the Spot Instances. The default is the On-Demand price.
17711 */
17712 MaxPrice?: String;
17713 /**
17714 * The Spot Instance request type. For RunInstances, persistent Spot Instance requests are only supported when InstanceInterruptionBehavior is set to either hibernate or stop.
17715 */
17716 SpotInstanceType?: SpotInstanceType;
17717 /**
17718 * The required duration for the Spot Instances (also known as Spot blocks), in minutes. This value must be a multiple of 60 (60, 120, 180, 240, 300, or 360).
17719 */
17720 BlockDurationMinutes?: Integer;
17721 /**
17722 * The end date of the request. For a one-time request, the request remains active until all instances launch, the request is canceled, or this date is reached. If the request is persistent, it remains active until it is canceled or this date and time is reached. The default end date is 7 days from the current date.
17723 */
17724 ValidUntil?: DateTime;
17725 /**
17726 * The behavior when a Spot Instance is interrupted. The default is terminate.
17727 */
17728 InstanceInterruptionBehavior?: InstanceInterruptionBehavior;
17729 }
17730 export interface SpotOptions {
17731 /**
17732 * Indicates how to allocate the target capacity across the Spot pools specified by the Spot Fleet request. The default is lowest-price.
17733 */
17734 AllocationStrategy?: SpotAllocationStrategy;
17735 /**
17736 * The behavior when a Spot Instance is interrupted. The default is terminate.
17737 */
17738 InstanceInterruptionBehavior?: SpotInstanceInterruptionBehavior;
17739 /**
17740 * The number of Spot pools across which to allocate your target Spot capacity. Valid only when AllocationStrategy is set to lowestPrice. EC2 Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.
17741 */
17742 InstancePoolsToUseCount?: Integer;
17743 /**
17744 * Indicates that the fleet uses a single instance type to launch all Spot Instances in the fleet.
17745 */
17746 SingleInstanceType?: Boolean;
17747 /**
17748 * Indicates that the fleet launches all Spot Instances into a single Availability Zone.
17749 */
17750 SingleAvailabilityZone?: Boolean;
17751 /**
17752 * The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.
17753 */
17754 MinTargetCapacity?: Integer;
17755 }
17756 export interface SpotOptionsRequest {
17757 /**
17758 * Indicates how to allocate the target capacity across the Spot pools specified by the Spot Fleet request. The default is lowestPrice.
17759 */
17760 AllocationStrategy?: SpotAllocationStrategy;
17761 /**
17762 * The behavior when a Spot Instance is interrupted. The default is terminate.
17763 */
17764 InstanceInterruptionBehavior?: SpotInstanceInterruptionBehavior;
17765 /**
17766 * The number of Spot pools across which to allocate your target Spot capacity. Valid only when Spot AllocationStrategy is set to lowest-price. EC2 Fleet selects the cheapest Spot pools and evenly allocates your target Spot capacity across the number of Spot pools that you specify.
17767 */
17768 InstancePoolsToUseCount?: Integer;
17769 /**
17770 * Indicates that the fleet uses a single instance type to launch all Spot Instances in the fleet.
17771 */
17772 SingleInstanceType?: Boolean;
17773 /**
17774 * Indicates that the fleet launches all Spot Instances into a single Availability Zone.
17775 */
17776 SingleAvailabilityZone?: Boolean;
17777 /**
17778 * The minimum target capacity for Spot Instances in the fleet. If the minimum target capacity is not reached, the fleet launches no instances.
17779 */
17780 MinTargetCapacity?: Integer;
17781 }
17782 export interface SpotPlacement {
17783 /**
17784 * The Availability Zone. [Spot Fleet only] To specify multiple Availability Zones, separate them using commas; for example, "us-west-2a, us-west-2b".
17785 */
17786 AvailabilityZone?: String;
17787 /**
17788 * The name of the placement group.
17789 */
17790 GroupName?: String;
17791 /**
17792 * The tenancy of the instance (if the instance is running in a VPC). An instance with a tenancy of dedicated runs on single-tenant hardware. The host tenancy is not supported for Spot Instances.
17793 */
17794 Tenancy?: Tenancy;
17795 }
17796 export interface SpotPrice {
17797 /**
17798 * The Availability Zone.
17799 */
17800 AvailabilityZone?: String;
17801 /**
17802 * The instance type.
17803 */
17804 InstanceType?: InstanceType;
17805 /**
17806 * A general description of the AMI.
17807 */
17808 ProductDescription?: RIProductDescription;
17809 /**
17810 * The maximum price per hour that you are willing to pay for a Spot Instance.
17811 */
17812 SpotPrice?: String;
17813 /**
17814 * The date and time the request was created, in UTC format (for example, YYYY-MM-DDTHH:MM:SSZ).
17815 */
17816 Timestamp?: DateTime;
17817 }
17818 export type SpotPriceHistoryList = SpotPrice[];
17819 export interface StaleIpPermission {
17820 /**
17821 * The start of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.
17822 */
17823 FromPort?: Integer;
17824 /**
17825 * The IP protocol name (for tcp, udp, and icmp) or number (see Protocol Numbers).
17826 */
17827 IpProtocol?: String;
17828 /**
17829 * One or more IP ranges. Not applicable for stale security group rules.
17830 */
17831 IpRanges?: IpRanges;
17832 /**
17833 * One or more prefix list IDs for an AWS service. Not applicable for stale security group rules.
17834 */
17835 PrefixListIds?: PrefixListIdSet;
17836 /**
17837 * The end of the port range for the TCP and UDP protocols, or an ICMP type number. A value of -1 indicates all ICMP types.
17838 */
17839 ToPort?: Integer;
17840 /**
17841 * One or more security group pairs. Returns the ID of the referenced security group and VPC, and the ID and status of the VPC peering connection.
17842 */
17843 UserIdGroupPairs?: UserIdGroupPairSet;
17844 }
17845 export type StaleIpPermissionSet = StaleIpPermission[];
17846 export interface StaleSecurityGroup {
17847 /**
17848 * The description of the security group.
17849 */
17850 Description?: String;
17851 /**
17852 * The ID of the security group.
17853 */
17854 GroupId?: String;
17855 /**
17856 * The name of the security group.
17857 */
17858 GroupName?: String;
17859 /**
17860 * Information about the stale inbound rules in the security group.
17861 */
17862 StaleIpPermissions?: StaleIpPermissionSet;
17863 /**
17864 * Information about the stale outbound rules in the security group.
17865 */
17866 StaleIpPermissionsEgress?: StaleIpPermissionSet;
17867 /**
17868 * The ID of the VPC for the security group.
17869 */
17870 VpcId?: String;
17871 }
17872 export type StaleSecurityGroupSet = StaleSecurityGroup[];
17873 export interface StartInstancesRequest {
17874 /**
17875 * One or more instance IDs.
17876 */
17877 InstanceIds: InstanceIdStringList;
17878 /**
17879 * Reserved.
17880 */
17881 AdditionalInfo?: String;
17882 /**
17883 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
17884 */
17885 DryRun?: Boolean;
17886 }
17887 export interface StartInstancesResult {
17888 /**
17889 * Information about one or more started instances.
17890 */
17891 StartingInstances?: InstanceStateChangeList;
17892 }
17893 export type State = "PendingAcceptance"|"Pending"|"Available"|"Deleting"|"Deleted"|"Rejected"|"Failed"|"Expired"|string;
17894 export interface StateReason {
17895 /**
17896 * The reason code for the state change.
17897 */
17898 Code?: String;
17899 /**
17900 * The message for the state change. Server.InsufficientInstanceCapacity: There was insufficient capacity available to satisfy the launch request. Server.InternalError: An internal error caused the instance to terminate during launch. Server.ScheduledStop: The instance was stopped due to a scheduled retirement. Server.SpotInstanceShutdown: The instance was stopped because the number of Spot requests with a maximum price equal to or higher than the Spot price exceeded available capacity or because of an increase in the Spot price. Server.SpotInstanceTermination: The instance was terminated because the number of Spot requests with a maximum price equal to or higher than the Spot price exceeded available capacity or because of an increase in the Spot price. Client.InstanceInitiatedShutdown: The instance was shut down using the shutdown -h command from the instance. Client.InstanceTerminated: The instance was terminated or rebooted during AMI creation. Client.InternalError: A client error caused the instance to terminate during launch. Client.InvalidSnapshot.NotFound: The specified snapshot was not found. Client.UserInitiatedHibernate: Hibernation was initiated on the instance. Client.UserInitiatedShutdown: The instance was shut down using the Amazon EC2 API. Client.VolumeLimitExceeded: The limit on the number of EBS volumes or total storage was exceeded. Decrease usage or request an increase in your account limits.
17901 */
17902 Message?: String;
17903 }
17904 export type Status = "MoveInProgress"|"InVpc"|"InClassic"|string;
17905 export type StatusName = "reachability"|string;
17906 export type StatusType = "passed"|"failed"|"insufficient-data"|"initializing"|string;
17907 export interface StopInstancesRequest {
17908 /**
17909 * One or more instance IDs.
17910 */
17911 InstanceIds: InstanceIdStringList;
17912 /**
17913 * Hibernates the instance if the instance was enabled for hibernation at launch. If the instance cannot hibernate successfully, a normal shutdown occurs. For more information, see Hibernate Your Instance in the Amazon Elastic Compute Cloud User Guide. Default: false
17914 */
17915 Hibernate?: Boolean;
17916 /**
17917 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
17918 */
17919 DryRun?: Boolean;
17920 /**
17921 * Forces the instances to stop. The instances do not have an opportunity to flush file system caches or file system metadata. If you use this option, you must perform file system check and repair procedures. This option is not recommended for Windows instances. Default: false
17922 */
17923 Force?: Boolean;
17924 }
17925 export interface StopInstancesResult {
17926 /**
17927 * Information about one or more stopped instances.
17928 */
17929 StoppingInstances?: InstanceStateChangeList;
17930 }
17931 export interface Storage {
17932 /**
17933 * An Amazon S3 storage location.
17934 */
17935 S3?: S3Storage;
17936 }
17937 export interface StorageLocation {
17938 /**
17939 * The name of the S3 bucket.
17940 */
17941 Bucket?: String;
17942 /**
17943 * The key.
17944 */
17945 Key?: String;
17946 }
17947 export type String = string;
17948 export interface Subnet {
17949 /**
17950 * The Availability Zone of the subnet.
17951 */
17952 AvailabilityZone?: String;
17953 /**
17954 * The AZ ID of the subnet.
17955 */
17956 AvailabilityZoneId?: String;
17957 /**
17958 * The number of unused private IPv4 addresses in the subnet. The IPv4 addresses for any stopped instances are considered unavailable.
17959 */
17960 AvailableIpAddressCount?: Integer;
17961 /**
17962 * The IPv4 CIDR block assigned to the subnet.
17963 */
17964 CidrBlock?: String;
17965 /**
17966 * Indicates whether this is the default subnet for the Availability Zone.
17967 */
17968 DefaultForAz?: Boolean;
17969 /**
17970 * Indicates whether instances launched in this subnet receive a public IPv4 address.
17971 */
17972 MapPublicIpOnLaunch?: Boolean;
17973 /**
17974 * The current state of the subnet.
17975 */
17976 State?: SubnetState;
17977 /**
17978 * The ID of the subnet.
17979 */
17980 SubnetId?: String;
17981 /**
17982 * The ID of the VPC the subnet is in.
17983 */
17984 VpcId?: String;
17985 /**
17986 * The ID of the AWS account that owns the subnet.
17987 */
17988 OwnerId?: String;
17989 /**
17990 * Indicates whether a network interface created in this subnet (including a network interface created by RunInstances) receives an IPv6 address.
17991 */
17992 AssignIpv6AddressOnCreation?: Boolean;
17993 /**
17994 * Information about the IPv6 CIDR blocks associated with the subnet.
17995 */
17996 Ipv6CidrBlockAssociationSet?: SubnetIpv6CidrBlockAssociationSet;
17997 /**
17998 * Any tags assigned to the subnet.
17999 */
18000 Tags?: TagList;
18001 /**
18002 * The Amazon Resource Name (ARN) of the subnet.
18003 */
18004 SubnetArn?: String;
18005 }
18006 export interface SubnetCidrBlockState {
18007 /**
18008 * The state of a CIDR block.
18009 */
18010 State?: SubnetCidrBlockStateCode;
18011 /**
18012 * A message about the status of the CIDR block, if applicable.
18013 */
18014 StatusMessage?: String;
18015 }
18016 export type SubnetCidrBlockStateCode = "associating"|"associated"|"disassociating"|"disassociated"|"failing"|"failed"|string;
18017 export type SubnetIdStringList = String[];
18018 export interface SubnetIpv6CidrBlockAssociation {
18019 /**
18020 * The association ID for the CIDR block.
18021 */
18022 AssociationId?: String;
18023 /**
18024 * The IPv6 CIDR block.
18025 */
18026 Ipv6CidrBlock?: String;
18027 /**
18028 * Information about the state of the CIDR block.
18029 */
18030 Ipv6CidrBlockState?: SubnetCidrBlockState;
18031 }
18032 export type SubnetIpv6CidrBlockAssociationSet = SubnetIpv6CidrBlockAssociation[];
18033 export type SubnetList = Subnet[];
18034 export type SubnetState = "pending"|"available"|string;
18035 export interface SuccessfulInstanceCreditSpecificationItem {
18036 /**
18037 * The ID of the instance.
18038 */
18039 InstanceId?: String;
18040 }
18041 export type SuccessfulInstanceCreditSpecificationSet = SuccessfulInstanceCreditSpecificationItem[];
18042 export type SummaryStatus = "ok"|"impaired"|"insufficient-data"|"not-applicable"|"initializing"|string;
18043 export interface Tag {
18044 /**
18045 * The key of the tag. Constraints: Tag keys are case-sensitive and accept a maximum of 127 Unicode characters. May not begin with aws:.
18046 */
18047 Key?: String;
18048 /**
18049 * The value of the tag. Constraints: Tag values are case-sensitive and accept a maximum of 255 Unicode characters.
18050 */
18051 Value?: String;
18052 }
18053 export interface TagDescription {
18054 /**
18055 * The tag key.
18056 */
18057 Key?: String;
18058 /**
18059 * The ID of the resource.
18060 */
18061 ResourceId?: String;
18062 /**
18063 * The resource type.
18064 */
18065 ResourceType?: ResourceType;
18066 /**
18067 * The tag value.
18068 */
18069 Value?: String;
18070 }
18071 export type TagDescriptionList = TagDescription[];
18072 export type TagList = Tag[];
18073 export interface TagSpecification {
18074 /**
18075 * The type of resource to tag. Currently, the resource types that support tagging on creation are fleet, dedicated-host, instance, snapshot, and volume. To tag a resource after it has been created, see CreateTags.
18076 */
18077 ResourceType?: ResourceType;
18078 /**
18079 * The tags to apply to the resource.
18080 */
18081 Tags?: TagList;
18082 }
18083 export type TagSpecificationList = TagSpecification[];
18084 export interface TargetCapacitySpecification {
18085 /**
18086 * The number of units to request, filled using DefaultTargetCapacityType.
18087 */
18088 TotalTargetCapacity?: Integer;
18089 /**
18090 * The number of On-Demand units to request.
18091 */
18092 OnDemandTargetCapacity?: Integer;
18093 /**
18094 * The maximum number of Spot units to launch.
18095 */
18096 SpotTargetCapacity?: Integer;
18097 /**
18098 * The default TotalTargetCapacity, which is either Spot or On-Demand.
18099 */
18100 DefaultTargetCapacityType?: DefaultTargetCapacityType;
18101 }
18102 export interface TargetCapacitySpecificationRequest {
18103 /**
18104 * The number of units to request, filled using DefaultTargetCapacityType.
18105 */
18106 TotalTargetCapacity: Integer;
18107 /**
18108 * The number of On-Demand units to request.
18109 */
18110 OnDemandTargetCapacity?: Integer;
18111 /**
18112 * The number of Spot units to request.
18113 */
18114 SpotTargetCapacity?: Integer;
18115 /**
18116 * The default TotalTargetCapacity, which is either Spot or On-Demand.
18117 */
18118 DefaultTargetCapacityType?: DefaultTargetCapacityType;
18119 }
18120 export interface TargetConfiguration {
18121 /**
18122 * The number of instances the Convertible Reserved Instance offering can be applied to. This parameter is reserved and cannot be specified in a request
18123 */
18124 InstanceCount?: Integer;
18125 /**
18126 * The ID of the Convertible Reserved Instance offering.
18127 */
18128 OfferingId?: String;
18129 }
18130 export interface TargetConfigurationRequest {
18131 /**
18132 * The number of instances the Covertible Reserved Instance offering can be applied to. This parameter is reserved and cannot be specified in a request
18133 */
18134 InstanceCount?: Integer;
18135 /**
18136 * The Convertible Reserved Instance offering ID.
18137 */
18138 OfferingId: String;
18139 }
18140 export type TargetConfigurationRequestSet = TargetConfigurationRequest[];
18141 export interface TargetGroup {
18142 /**
18143 * The Amazon Resource Name (ARN) of the target group.
18144 */
18145 Arn?: String;
18146 }
18147 export type TargetGroups = TargetGroup[];
18148 export interface TargetGroupsConfig {
18149 /**
18150 * One or more target groups.
18151 */
18152 TargetGroups?: TargetGroups;
18153 }
18154 export interface TargetNetwork {
18155 /**
18156 * The ID of the association.
18157 */
18158 AssociationId?: String;
18159 /**
18160 * The ID of the VPC in which the target network (subnet) is located.
18161 */
18162 VpcId?: String;
18163 /**
18164 * The ID of the subnet specified as the target network.
18165 */
18166 TargetNetworkId?: String;
18167 /**
18168 * The ID of the Client VPN endpoint with which the target network is associated.
18169 */
18170 ClientVpnEndpointId?: String;
18171 /**
18172 * The current state of the target network association.
18173 */
18174 Status?: AssociationStatus;
18175 /**
18176 * The IDs of the security groups applied to the target network association.
18177 */
18178 SecurityGroups?: ValueStringList;
18179 }
18180 export type TargetNetworkSet = TargetNetwork[];
18181 export interface TargetReservationValue {
18182 /**
18183 * The total value of the Convertible Reserved Instances that make up the exchange. This is the sum of the list value, remaining upfront price, and additional upfront cost of the exchange.
18184 */
18185 ReservationValue?: ReservationValue;
18186 /**
18187 * The configuration of the Convertible Reserved Instances that make up the exchange.
18188 */
18189 TargetConfiguration?: TargetConfiguration;
18190 }
18191 export type TargetReservationValueSet = TargetReservationValue[];
18192 export type TelemetryStatus = "UP"|"DOWN"|string;
18193 export type Tenancy = "default"|"dedicated"|"host"|string;
18194 export interface TerminateClientVpnConnectionsRequest {
18195 /**
18196 * The ID of the Client VPN endpoint to which the client is connected.
18197 */
18198 ClientVpnEndpointId: String;
18199 /**
18200 * The ID of the client connection to be terminated.
18201 */
18202 ConnectionId?: String;
18203 /**
18204 * The name of the user who initiated the connection. Use this option to terminate all active connections for the specified user. This option can only be used if the user has established up to five connections.
18205 */
18206 Username?: String;
18207 /**
18208 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
18209 */
18210 DryRun?: Boolean;
18211 }
18212 export interface TerminateClientVpnConnectionsResult {
18213 /**
18214 * The ID of the Client VPN endpoint.
18215 */
18216 ClientVpnEndpointId?: String;
18217 /**
18218 * The user who established the terminated client connections.
18219 */
18220 Username?: String;
18221 /**
18222 * The current state of the client connections.
18223 */
18224 ConnectionStatuses?: TerminateConnectionStatusSet;
18225 }
18226 export interface TerminateConnectionStatus {
18227 /**
18228 * The ID of the client connection.
18229 */
18230 ConnectionId?: String;
18231 /**
18232 * The state of the client connection.
18233 */
18234 PreviousStatus?: ClientVpnConnectionStatus;
18235 /**
18236 * A message about the status of the client connection, if applicable.
18237 */
18238 CurrentStatus?: ClientVpnConnectionStatus;
18239 }
18240 export type TerminateConnectionStatusSet = TerminateConnectionStatus[];
18241 export interface TerminateInstancesRequest {
18242 /**
18243 * One or more instance IDs. Constraints: Up to 1000 instance IDs. We recommend breaking up this request into smaller batches.
18244 */
18245 InstanceIds: InstanceIdStringList;
18246 /**
18247 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
18248 */
18249 DryRun?: Boolean;
18250 }
18251 export interface TerminateInstancesResult {
18252 /**
18253 * Information about one or more terminated instances.
18254 */
18255 TerminatingInstances?: InstanceStateChangeList;
18256 }
18257 export type TrafficType = "ACCEPT"|"REJECT"|"ALL"|string;
18258 export interface TransitGateway {
18259 /**
18260 * The ID of the transit gateway.
18261 */
18262 TransitGatewayId?: String;
18263 /**
18264 * The Amazon Resource Name (ARN) of the transit gateway.
18265 */
18266 TransitGatewayArn?: String;
18267 /**
18268 * The state of the transit gateway.
18269 */
18270 State?: TransitGatewayState;
18271 /**
18272 * The ID of the AWS account ID that owns the transit gateway.
18273 */
18274 OwnerId?: String;
18275 /**
18276 * The description of the transit gateway.
18277 */
18278 Description?: String;
18279 /**
18280 * The creation time.
18281 */
18282 CreationTime?: DateTime;
18283 /**
18284 * The transit gateway options.
18285 */
18286 Options?: TransitGatewayOptions;
18287 /**
18288 * The tags for the transit gateway.
18289 */
18290 Tags?: TagList;
18291 }
18292 export interface TransitGatewayAssociation {
18293 /**
18294 * The ID of the transit gateway route table.
18295 */
18296 TransitGatewayRouteTableId?: String;
18297 /**
18298 * The ID of the attachment.
18299 */
18300 TransitGatewayAttachmentId?: String;
18301 /**
18302 * The ID of the resource.
18303 */
18304 ResourceId?: String;
18305 /**
18306 * The resource type.
18307 */
18308 ResourceType?: TransitGatewayAttachmentResourceType;
18309 /**
18310 * The state of the association.
18311 */
18312 State?: TransitGatewayAssociationState;
18313 }
18314 export type TransitGatewayAssociationState = "associating"|"associated"|"disassociating"|"disassociated"|string;
18315 export interface TransitGatewayAttachment {
18316 /**
18317 * The ID of the attachment.
18318 */
18319 TransitGatewayAttachmentId?: String;
18320 /**
18321 * The ID of the transit gateway.
18322 */
18323 TransitGatewayId?: String;
18324 /**
18325 * The ID of the AWS account that owns the transit gateway.
18326 */
18327 TransitGatewayOwnerId?: String;
18328 /**
18329 * The ID of the AWS account that owns the resource.
18330 */
18331 ResourceOwnerId?: String;
18332 /**
18333 * The resource type.
18334 */
18335 ResourceType?: TransitGatewayAttachmentResourceType;
18336 /**
18337 * The ID of the resource.
18338 */
18339 ResourceId?: String;
18340 /**
18341 * The attachment state.
18342 */
18343 State?: TransitGatewayAttachmentState;
18344 /**
18345 * The association.
18346 */
18347 Association?: TransitGatewayAttachmentAssociation;
18348 /**
18349 * The creation time.
18350 */
18351 CreationTime?: DateTime;
18352 /**
18353 * The tags for the attachment.
18354 */
18355 Tags?: TagList;
18356 }
18357 export interface TransitGatewayAttachmentAssociation {
18358 /**
18359 * The ID of the route table for the transit gateway.
18360 */
18361 TransitGatewayRouteTableId?: String;
18362 /**
18363 * The state of the association.
18364 */
18365 State?: TransitGatewayAssociationState;
18366 }
18367 export type TransitGatewayAttachmentIdStringList = String[];
18368 export type TransitGatewayAttachmentList = TransitGatewayAttachment[];
18369 export interface TransitGatewayAttachmentPropagation {
18370 /**
18371 * The ID of the propagation route table.
18372 */
18373 TransitGatewayRouteTableId?: String;
18374 /**
18375 * The state of the propagation route table.
18376 */
18377 State?: TransitGatewayPropagationState;
18378 }
18379 export type TransitGatewayAttachmentPropagationList = TransitGatewayAttachmentPropagation[];
18380 export type TransitGatewayAttachmentResourceType = "vpc"|"vpn"|string;
18381 export type TransitGatewayAttachmentState = "pendingAcceptance"|"rollingBack"|"pending"|"available"|"modifying"|"deleting"|"deleted"|"failed"|"rejected"|"rejecting"|"failing"|string;
18382 export type TransitGatewayIdStringList = String[];
18383 export type TransitGatewayList = TransitGateway[];
18384 export type TransitGatewayMaxResults = number;
18385 export interface TransitGatewayOptions {
18386 /**
18387 * A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs.
18388 */
18389 AmazonSideAsn?: Long;
18390 /**
18391 * Indicates whether attachment requests are automatically accepted.
18392 */
18393 AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue;
18394 /**
18395 * Indicates whether resource attachments are automatically associated with the default association route table.
18396 */
18397 DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue;
18398 /**
18399 * The ID of the default association route table.
18400 */
18401 AssociationDefaultRouteTableId?: String;
18402 /**
18403 * Indicates whether resource attachments automatically propagate routes to the default propagation route table.
18404 */
18405 DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue;
18406 /**
18407 * The ID of the default propagation route table.
18408 */
18409 PropagationDefaultRouteTableId?: String;
18410 /**
18411 * Indicates whether Equal Cost Multipath Protocol support is enabled.
18412 */
18413 VpnEcmpSupport?: VpnEcmpSupportValue;
18414 /**
18415 * Indicates whether DNS support is enabled.
18416 */
18417 DnsSupport?: DnsSupportValue;
18418 }
18419 export interface TransitGatewayPropagation {
18420 /**
18421 * The ID of the attachment.
18422 */
18423 TransitGatewayAttachmentId?: String;
18424 /**
18425 * The ID of the resource.
18426 */
18427 ResourceId?: String;
18428 /**
18429 * The resource type.
18430 */
18431 ResourceType?: TransitGatewayAttachmentResourceType;
18432 /**
18433 * The ID of the transit gateway route table.
18434 */
18435 TransitGatewayRouteTableId?: String;
18436 /**
18437 * The state.
18438 */
18439 State?: TransitGatewayPropagationState;
18440 }
18441 export type TransitGatewayPropagationState = "enabling"|"enabled"|"disabling"|"disabled"|string;
18442 export interface TransitGatewayRequestOptions {
18443 /**
18444 * A private Autonomous System Number (ASN) for the Amazon side of a BGP session. The range is 64512 to 65534 for 16-bit ASNs and 4200000000 to 4294967294 for 32-bit ASNs.
18445 */
18446 AmazonSideAsn?: Long;
18447 /**
18448 * Enable or disable automatic acceptance of attachment requests. The default is disable.
18449 */
18450 AutoAcceptSharedAttachments?: AutoAcceptSharedAttachmentsValue;
18451 /**
18452 * Enable or disable automatic association with the default association route table. The default is enable.
18453 */
18454 DefaultRouteTableAssociation?: DefaultRouteTableAssociationValue;
18455 /**
18456 * Enable or disable automatic propagation of routes to the default propagation route table. The default is enable.
18457 */
18458 DefaultRouteTablePropagation?: DefaultRouteTablePropagationValue;
18459 /**
18460 * Enable or disable Equal Cost Multipath Protocol support.
18461 */
18462 VpnEcmpSupport?: VpnEcmpSupportValue;
18463 /**
18464 * Enable or disable DNS support.
18465 */
18466 DnsSupport?: DnsSupportValue;
18467 }
18468 export interface TransitGatewayRoute {
18469 /**
18470 * The CIDR block used for destination matches.
18471 */
18472 DestinationCidrBlock?: String;
18473 /**
18474 * The attachments.
18475 */
18476 TransitGatewayAttachments?: TransitGatewayRouteAttachmentList;
18477 /**
18478 * The route type.
18479 */
18480 Type?: TransitGatewayRouteType;
18481 /**
18482 * The state of the route.
18483 */
18484 State?: TransitGatewayRouteState;
18485 }
18486 export interface TransitGatewayRouteAttachment {
18487 /**
18488 * The ID of the resource.
18489 */
18490 ResourceId?: String;
18491 /**
18492 * The ID of the attachment.
18493 */
18494 TransitGatewayAttachmentId?: String;
18495 /**
18496 * The resource type.
18497 */
18498 ResourceType?: TransitGatewayAttachmentResourceType;
18499 }
18500 export type TransitGatewayRouteAttachmentList = TransitGatewayRouteAttachment[];
18501 export type TransitGatewayRouteList = TransitGatewayRoute[];
18502 export type TransitGatewayRouteState = "pending"|"active"|"blackhole"|"deleting"|"deleted"|string;
18503 export interface TransitGatewayRouteTable {
18504 /**
18505 * The ID of the transit gateway route table.
18506 */
18507 TransitGatewayRouteTableId?: String;
18508 /**
18509 * The ID of the transit gateway.
18510 */
18511 TransitGatewayId?: String;
18512 /**
18513 * The state of the transit gateway route table.
18514 */
18515 State?: TransitGatewayRouteTableState;
18516 /**
18517 * Indicates whether this is the default association route table for the transit gateway.
18518 */
18519 DefaultAssociationRouteTable?: Boolean;
18520 /**
18521 * Indicates whether this is the default propagation route table for the transit gateway.
18522 */
18523 DefaultPropagationRouteTable?: Boolean;
18524 /**
18525 * The creation time.
18526 */
18527 CreationTime?: DateTime;
18528 /**
18529 * Any tags assigned to the route table.
18530 */
18531 Tags?: TagList;
18532 }
18533 export interface TransitGatewayRouteTableAssociation {
18534 /**
18535 * The ID of the attachment.
18536 */
18537 TransitGatewayAttachmentId?: String;
18538 /**
18539 * The ID of the resource.
18540 */
18541 ResourceId?: String;
18542 /**
18543 * The resource type.
18544 */
18545 ResourceType?: TransitGatewayAttachmentResourceType;
18546 /**
18547 * The state of the association.
18548 */
18549 State?: TransitGatewayAssociationState;
18550 }
18551 export type TransitGatewayRouteTableAssociationList = TransitGatewayRouteTableAssociation[];
18552 export type TransitGatewayRouteTableIdStringList = String[];
18553 export type TransitGatewayRouteTableList = TransitGatewayRouteTable[];
18554 export interface TransitGatewayRouteTablePropagation {
18555 /**
18556 * The ID of the attachment.
18557 */
18558 TransitGatewayAttachmentId?: String;
18559 /**
18560 * The ID of the resource.
18561 */
18562 ResourceId?: String;
18563 /**
18564 * The type of resource.
18565 */
18566 ResourceType?: TransitGatewayAttachmentResourceType;
18567 /**
18568 * The state of the resource.
18569 */
18570 State?: TransitGatewayPropagationState;
18571 }
18572 export type TransitGatewayRouteTablePropagationList = TransitGatewayRouteTablePropagation[];
18573 export type TransitGatewayRouteTableState = "pending"|"available"|"deleting"|"deleted"|string;
18574 export type TransitGatewayRouteType = "static"|"propagated"|string;
18575 export type TransitGatewayState = "pending"|"available"|"modifying"|"deleting"|"deleted"|string;
18576 export interface TransitGatewayVpcAttachment {
18577 /**
18578 * The ID of the attachment.
18579 */
18580 TransitGatewayAttachmentId?: String;
18581 /**
18582 * The ID of the transit gateway.
18583 */
18584 TransitGatewayId?: String;
18585 /**
18586 * The ID of the VPC.
18587 */
18588 VpcId?: String;
18589 /**
18590 * The ID of the AWS account that owns the VPC.
18591 */
18592 VpcOwnerId?: String;
18593 /**
18594 * The state of the VPC attachment.
18595 */
18596 State?: TransitGatewayAttachmentState;
18597 /**
18598 * The IDs of the subnets.
18599 */
18600 SubnetIds?: ValueStringList;
18601 /**
18602 * The creation time.
18603 */
18604 CreationTime?: DateTime;
18605 /**
18606 * The VPC attachment options.
18607 */
18608 Options?: TransitGatewayVpcAttachmentOptions;
18609 /**
18610 * The tags for the VPC attachment.
18611 */
18612 Tags?: TagList;
18613 }
18614 export type TransitGatewayVpcAttachmentList = TransitGatewayVpcAttachment[];
18615 export interface TransitGatewayVpcAttachmentOptions {
18616 /**
18617 * Indicates whether DNS support is enabled.
18618 */
18619 DnsSupport?: DnsSupportValue;
18620 /**
18621 * Indicates whether IPv6 support is enabled.
18622 */
18623 Ipv6Support?: Ipv6SupportValue;
18624 }
18625 export type TransportProtocol = "tcp"|"udp"|string;
18626 export type TunnelOptionsList = VpnTunnelOptionsSpecification[];
18627 export interface UnassignIpv6AddressesRequest {
18628 /**
18629 * The IPv6 addresses to unassign from the network interface.
18630 */
18631 Ipv6Addresses: Ipv6AddressList;
18632 /**
18633 * The ID of the network interface.
18634 */
18635 NetworkInterfaceId: String;
18636 }
18637 export interface UnassignIpv6AddressesResult {
18638 /**
18639 * The ID of the network interface.
18640 */
18641 NetworkInterfaceId?: String;
18642 /**
18643 * The IPv6 addresses that have been unassigned from the network interface.
18644 */
18645 UnassignedIpv6Addresses?: Ipv6AddressList;
18646 }
18647 export interface UnassignPrivateIpAddressesRequest {
18648 /**
18649 * The ID of the network interface.
18650 */
18651 NetworkInterfaceId: String;
18652 /**
18653 * The secondary private IP addresses to unassign from the network interface. You can specify this option multiple times to unassign more than one IP address.
18654 */
18655 PrivateIpAddresses: PrivateIpAddressStringList;
18656 }
18657 export interface UnmonitorInstancesRequest {
18658 /**
18659 * One or more instance IDs.
18660 */
18661 InstanceIds: InstanceIdStringList;
18662 /**
18663 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
18664 */
18665 DryRun?: Boolean;
18666 }
18667 export interface UnmonitorInstancesResult {
18668 /**
18669 * The monitoring information.
18670 */
18671 InstanceMonitorings?: InstanceMonitoringList;
18672 }
18673 export type UnsuccessfulInstanceCreditSpecificationErrorCode = "InvalidInstanceID.Malformed"|"InvalidInstanceID.NotFound"|"IncorrectInstanceState"|"InstanceCreditSpecification.NotSupported"|string;
18674 export interface UnsuccessfulInstanceCreditSpecificationItem {
18675 /**
18676 * The ID of the instance.
18677 */
18678 InstanceId?: String;
18679 /**
18680 * The applicable error for the T2 or T3 instance whose credit option for CPU usage was not modified.
18681 */
18682 Error?: UnsuccessfulInstanceCreditSpecificationItemError;
18683 }
18684 export interface UnsuccessfulInstanceCreditSpecificationItemError {
18685 /**
18686 * The error code.
18687 */
18688 Code?: UnsuccessfulInstanceCreditSpecificationErrorCode;
18689 /**
18690 * The applicable error message.
18691 */
18692 Message?: String;
18693 }
18694 export type UnsuccessfulInstanceCreditSpecificationSet = UnsuccessfulInstanceCreditSpecificationItem[];
18695 export interface UnsuccessfulItem {
18696 /**
18697 * Information about the error.
18698 */
18699 Error?: UnsuccessfulItemError;
18700 /**
18701 * The ID of the resource.
18702 */
18703 ResourceId?: String;
18704 }
18705 export interface UnsuccessfulItemError {
18706 /**
18707 * The error code.
18708 */
18709 Code?: String;
18710 /**
18711 * The error message accompanying the error code.
18712 */
18713 Message?: String;
18714 }
18715 export type UnsuccessfulItemList = UnsuccessfulItem[];
18716 export type UnsuccessfulItemSet = UnsuccessfulItem[];
18717 export interface UpdateSecurityGroupRuleDescriptionsEgressRequest {
18718 /**
18719 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
18720 */
18721 DryRun?: Boolean;
18722 /**
18723 * The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.
18724 */
18725 GroupId?: String;
18726 /**
18727 * [Default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request.
18728 */
18729 GroupName?: String;
18730 /**
18731 * The IP permissions for the security group rule.
18732 */
18733 IpPermissions: IpPermissionList;
18734 }
18735 export interface UpdateSecurityGroupRuleDescriptionsEgressResult {
18736 /**
18737 * Returns true if the request succeeds; otherwise, returns an error.
18738 */
18739 Return?: Boolean;
18740 }
18741 export interface UpdateSecurityGroupRuleDescriptionsIngressRequest {
18742 /**
18743 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
18744 */
18745 DryRun?: Boolean;
18746 /**
18747 * The ID of the security group. You must specify either the security group ID or the security group name in the request. For security groups in a nondefault VPC, you must specify the security group ID.
18748 */
18749 GroupId?: String;
18750 /**
18751 * [EC2-Classic, default VPC] The name of the security group. You must specify either the security group ID or the security group name in the request.
18752 */
18753 GroupName?: String;
18754 /**
18755 * The IP permissions for the security group rule.
18756 */
18757 IpPermissions: IpPermissionList;
18758 }
18759 export interface UpdateSecurityGroupRuleDescriptionsIngressResult {
18760 /**
18761 * Returns true if the request succeeds; otherwise, returns an error.
18762 */
18763 Return?: Boolean;
18764 }
18765 export interface UserBucket {
18766 /**
18767 * The name of the S3 bucket where the disk image is located.
18768 */
18769 S3Bucket?: String;
18770 /**
18771 * The file name of the disk image.
18772 */
18773 S3Key?: String;
18774 }
18775 export interface UserBucketDetails {
18776 /**
18777 * The S3 bucket from which the disk image was created.
18778 */
18779 S3Bucket?: String;
18780 /**
18781 * The file name of the disk image.
18782 */
18783 S3Key?: String;
18784 }
18785 export interface UserData {
18786 /**
18787 * The user data. If you are using an AWS SDK or command line tool, Base64-encoding is performed for you, and you can load the text from a file. Otherwise, you must provide Base64-encoded text.
18788 */
18789 Data?: String;
18790 }
18791 export type UserGroupStringList = String[];
18792 export interface UserIdGroupPair {
18793 /**
18794 * A description for the security group rule that references this user ID group pair. Constraints: Up to 255 characters in length. Allowed characters are a-z, A-Z, 0-9, spaces, and ._-:/()#,@[]+=;{}!$*
18795 */
18796 Description?: String;
18797 /**
18798 * The ID of the security group.
18799 */
18800 GroupId?: String;
18801 /**
18802 * The name of the security group. In a request, use this parameter for a security group in EC2-Classic or a default VPC only. For a security group in a nondefault VPC, use the security group ID. For a referenced security group in another VPC, this value is not returned if the referenced security group is deleted.
18803 */
18804 GroupName?: String;
18805 /**
18806 * The status of a VPC peering connection, if applicable.
18807 */
18808 PeeringStatus?: String;
18809 /**
18810 * The ID of an AWS account. For a referenced security group in another VPC, the account ID of the referenced security group is returned in the response. If the referenced security group is deleted, this value is not returned. [EC2-Classic] Required when adding or removing rules that reference a security group in another AWS account.
18811 */
18812 UserId?: String;
18813 /**
18814 * The ID of the VPC for the referenced security group, if applicable.
18815 */
18816 VpcId?: String;
18817 /**
18818 * The ID of the VPC peering connection, if applicable.
18819 */
18820 VpcPeeringConnectionId?: String;
18821 }
18822 export type UserIdGroupPairList = UserIdGroupPair[];
18823 export type UserIdGroupPairSet = UserIdGroupPair[];
18824 export type UserIdStringList = String[];
18825 export type ValueStringList = String[];
18826 export type VersionDescription = string;
18827 export type VersionStringList = String[];
18828 export interface VgwTelemetry {
18829 /**
18830 * The number of accepted routes.
18831 */
18832 AcceptedRouteCount?: Integer;
18833 /**
18834 * The date and time of the last change in status.
18835 */
18836 LastStatusChange?: DateTime;
18837 /**
18838 * The Internet-routable IP address of the virtual private gateway's outside interface.
18839 */
18840 OutsideIpAddress?: String;
18841 /**
18842 * The status of the VPN tunnel.
18843 */
18844 Status?: TelemetryStatus;
18845 /**
18846 * If an error occurs, a description of the error.
18847 */
18848 StatusMessage?: String;
18849 }
18850 export type VgwTelemetryList = VgwTelemetry[];
18851 export type VirtualizationType = "hvm"|"paravirtual"|string;
18852 export interface Volume {
18853 /**
18854 * Information about the volume attachments.
18855 */
18856 Attachments?: VolumeAttachmentList;
18857 /**
18858 * The Availability Zone for the volume.
18859 */
18860 AvailabilityZone?: String;
18861 /**
18862 * The time stamp when volume creation was initiated.
18863 */
18864 CreateTime?: DateTime;
18865 /**
18866 * Indicates whether the volume will be encrypted.
18867 */
18868 Encrypted?: Boolean;
18869 /**
18870 * The full ARN of the AWS Key Management Service (AWS KMS) customer master key (CMK) that was used to protect the volume encryption key for the volume.
18871 */
18872 KmsKeyId?: String;
18873 /**
18874 * The size of the volume, in GiBs.
18875 */
18876 Size?: Integer;
18877 /**
18878 * The snapshot from which the volume was created, if applicable.
18879 */
18880 SnapshotId?: String;
18881 /**
18882 * The volume state.
18883 */
18884 State?: VolumeState;
18885 /**
18886 * The ID of the volume.
18887 */
18888 VolumeId?: String;
18889 /**
18890 * The number of I/O operations per second (IOPS) that the volume supports. For Provisioned IOPS SSD volumes, this represents the number of IOPS that are provisioned for the volume. For General Purpose SSD volumes, this represents the baseline performance of the volume and the rate at which the volume accumulates I/O credits for bursting. For more information, see Amazon EBS Volume Types in the Amazon Elastic Compute Cloud User Guide. Constraints: Range is 100-16,000 IOPS for gp2 volumes and 100 to 64,000IOPS for io1 volumes, in most Regions. The maximum IOPS for io1 of 64,000 is guaranteed only on Nitro-based instances. Other instance families guarantee performance up to 32,000 IOPS. Condition: This parameter is required for requests to create io1 volumes; it is not used in requests to create gp2, st1, sc1, or standard volumes.
18891 */
18892 Iops?: Integer;
18893 /**
18894 * Any tags assigned to the volume.
18895 */
18896 Tags?: TagList;
18897 /**
18898 * The volume type. This can be gp2 for General Purpose SSD, io1 for Provisioned IOPS SSD, st1 for Throughput Optimized HDD, sc1 for Cold HDD, or standard for Magnetic volumes.
18899 */
18900 VolumeType?: VolumeType;
18901 }
18902 export interface VolumeAttachment {
18903 /**
18904 * The time stamp when the attachment initiated.
18905 */
18906 AttachTime?: DateTime;
18907 /**
18908 * The device name.
18909 */
18910 Device?: String;
18911 /**
18912 * The ID of the instance.
18913 */
18914 InstanceId?: String;
18915 /**
18916 * The attachment state of the volume.
18917 */
18918 State?: VolumeAttachmentState;
18919 /**
18920 * The ID of the volume.
18921 */
18922 VolumeId?: String;
18923 /**
18924 * Indicates whether the EBS volume is deleted on instance termination.
18925 */
18926 DeleteOnTermination?: Boolean;
18927 }
18928 export type VolumeAttachmentList = VolumeAttachment[];
18929 export type VolumeAttachmentState = "attaching"|"attached"|"detaching"|"detached"|"busy"|string;
18930 export type VolumeAttributeName = "autoEnableIO"|"productCodes"|string;
18931 export interface VolumeDetail {
18932 /**
18933 * The size of the volume, in GiB.
18934 */
18935 Size: Long;
18936 }
18937 export type VolumeIdStringList = String[];
18938 export type VolumeList = Volume[];
18939 export interface VolumeModification {
18940 /**
18941 * The ID of the volume.
18942 */
18943 VolumeId?: String;
18944 /**
18945 * The current modification state. The modification state is null for unmodified volumes.
18946 */
18947 ModificationState?: VolumeModificationState;
18948 /**
18949 * A status message about the modification progress or failure.
18950 */
18951 StatusMessage?: String;
18952 /**
18953 * The target size of the volume, in GiB.
18954 */
18955 TargetSize?: Integer;
18956 /**
18957 * The target IOPS rate of the volume.
18958 */
18959 TargetIops?: Integer;
18960 /**
18961 * The target EBS volume type of the volume.
18962 */
18963 TargetVolumeType?: VolumeType;
18964 /**
18965 * The original size of the volume.
18966 */
18967 OriginalSize?: Integer;
18968 /**
18969 * The original IOPS rate of the volume.
18970 */
18971 OriginalIops?: Integer;
18972 /**
18973 * The original EBS volume type of the volume.
18974 */
18975 OriginalVolumeType?: VolumeType;
18976 /**
18977 * The modification progress, from 0 to 100 percent complete.
18978 */
18979 Progress?: Long;
18980 /**
18981 * The modification start time.
18982 */
18983 StartTime?: DateTime;
18984 /**
18985 * The modification completion or failure time.
18986 */
18987 EndTime?: DateTime;
18988 }
18989 export type VolumeModificationList = VolumeModification[];
18990 export type VolumeModificationState = "modifying"|"optimizing"|"completed"|"failed"|string;
18991 export type VolumeState = "creating"|"available"|"in-use"|"deleting"|"deleted"|"error"|string;
18992 export interface VolumeStatusAction {
18993 /**
18994 * The code identifying the operation, for example, enable-volume-io.
18995 */
18996 Code?: String;
18997 /**
18998 * A description of the operation.
18999 */
19000 Description?: String;
19001 /**
19002 * The ID of the event associated with this operation.
19003 */
19004 EventId?: String;
19005 /**
19006 * The event type associated with this operation.
19007 */
19008 EventType?: String;
19009 }
19010 export type VolumeStatusActionsList = VolumeStatusAction[];
19011 export interface VolumeStatusDetails {
19012 /**
19013 * The name of the volume status.
19014 */
19015 Name?: VolumeStatusName;
19016 /**
19017 * The intended status of the volume status.
19018 */
19019 Status?: String;
19020 }
19021 export type VolumeStatusDetailsList = VolumeStatusDetails[];
19022 export interface VolumeStatusEvent {
19023 /**
19024 * A description of the event.
19025 */
19026 Description?: String;
19027 /**
19028 * The ID of this event.
19029 */
19030 EventId?: String;
19031 /**
19032 * The type of this event.
19033 */
19034 EventType?: String;
19035 /**
19036 * The latest end time of the event.
19037 */
19038 NotAfter?: DateTime;
19039 /**
19040 * The earliest start time of the event.
19041 */
19042 NotBefore?: DateTime;
19043 }
19044 export type VolumeStatusEventsList = VolumeStatusEvent[];
19045 export interface VolumeStatusInfo {
19046 /**
19047 * The details of the volume status.
19048 */
19049 Details?: VolumeStatusDetailsList;
19050 /**
19051 * The status of the volume.
19052 */
19053 Status?: VolumeStatusInfoStatus;
19054 }
19055 export type VolumeStatusInfoStatus = "ok"|"impaired"|"insufficient-data"|string;
19056 export interface VolumeStatusItem {
19057 /**
19058 * The details of the operation.
19059 */
19060 Actions?: VolumeStatusActionsList;
19061 /**
19062 * The Availability Zone of the volume.
19063 */
19064 AvailabilityZone?: String;
19065 /**
19066 * A list of events associated with the volume.
19067 */
19068 Events?: VolumeStatusEventsList;
19069 /**
19070 * The volume ID.
19071 */
19072 VolumeId?: String;
19073 /**
19074 * The volume status.
19075 */
19076 VolumeStatus?: VolumeStatusInfo;
19077 }
19078 export type VolumeStatusList = VolumeStatusItem[];
19079 export type VolumeStatusName = "io-enabled"|"io-performance"|string;
19080 export type VolumeType = "standard"|"io1"|"gp2"|"sc1"|"st1"|string;
19081 export interface Vpc {
19082 /**
19083 * The primary IPv4 CIDR block for the VPC.
19084 */
19085 CidrBlock?: String;
19086 /**
19087 * The ID of the set of DHCP options you've associated with the VPC (or default if the default options are associated with the VPC).
19088 */
19089 DhcpOptionsId?: String;
19090 /**
19091 * The current state of the VPC.
19092 */
19093 State?: VpcState;
19094 /**
19095 * The ID of the VPC.
19096 */
19097 VpcId?: String;
19098 /**
19099 * The ID of the AWS account that owns the VPC.
19100 */
19101 OwnerId?: String;
19102 /**
19103 * The allowed tenancy of instances launched into the VPC.
19104 */
19105 InstanceTenancy?: Tenancy;
19106 /**
19107 * Information about the IPv6 CIDR blocks associated with the VPC.
19108 */
19109 Ipv6CidrBlockAssociationSet?: VpcIpv6CidrBlockAssociationSet;
19110 /**
19111 * Information about the IPv4 CIDR blocks associated with the VPC.
19112 */
19113 CidrBlockAssociationSet?: VpcCidrBlockAssociationSet;
19114 /**
19115 * Indicates whether the VPC is the default VPC.
19116 */
19117 IsDefault?: Boolean;
19118 /**
19119 * Any tags assigned to the VPC.
19120 */
19121 Tags?: TagList;
19122 }
19123 export interface VpcAttachment {
19124 /**
19125 * The current state of the attachment.
19126 */
19127 State?: AttachmentStatus;
19128 /**
19129 * The ID of the VPC.
19130 */
19131 VpcId?: String;
19132 }
19133 export type VpcAttachmentList = VpcAttachment[];
19134 export type VpcAttributeName = "enableDnsSupport"|"enableDnsHostnames"|string;
19135 export interface VpcCidrBlockAssociation {
19136 /**
19137 * The association ID for the IPv4 CIDR block.
19138 */
19139 AssociationId?: String;
19140 /**
19141 * The IPv4 CIDR block.
19142 */
19143 CidrBlock?: String;
19144 /**
19145 * Information about the state of the CIDR block.
19146 */
19147 CidrBlockState?: VpcCidrBlockState;
19148 }
19149 export type VpcCidrBlockAssociationSet = VpcCidrBlockAssociation[];
19150 export interface VpcCidrBlockState {
19151 /**
19152 * The state of the CIDR block.
19153 */
19154 State?: VpcCidrBlockStateCode;
19155 /**
19156 * A message about the status of the CIDR block, if applicable.
19157 */
19158 StatusMessage?: String;
19159 }
19160 export type VpcCidrBlockStateCode = "associating"|"associated"|"disassociating"|"disassociated"|"failing"|"failed"|string;
19161 export interface VpcClassicLink {
19162 /**
19163 * Indicates whether the VPC is enabled for ClassicLink.
19164 */
19165 ClassicLinkEnabled?: Boolean;
19166 /**
19167 * Any tags assigned to the VPC.
19168 */
19169 Tags?: TagList;
19170 /**
19171 * The ID of the VPC.
19172 */
19173 VpcId?: String;
19174 }
19175 export type VpcClassicLinkIdList = String[];
19176 export type VpcClassicLinkList = VpcClassicLink[];
19177 export interface VpcEndpoint {
19178 /**
19179 * The ID of the VPC endpoint.
19180 */
19181 VpcEndpointId?: String;
19182 /**
19183 * The type of endpoint.
19184 */
19185 VpcEndpointType?: VpcEndpointType;
19186 /**
19187 * The ID of the VPC to which the endpoint is associated.
19188 */
19189 VpcId?: String;
19190 /**
19191 * The name of the service to which the endpoint is associated.
19192 */
19193 ServiceName?: String;
19194 /**
19195 * The state of the VPC endpoint.
19196 */
19197 State?: State;
19198 /**
19199 * The policy document associated with the endpoint, if applicable.
19200 */
19201 PolicyDocument?: String;
19202 /**
19203 * (Gateway endpoint) One or more route tables associated with the endpoint.
19204 */
19205 RouteTableIds?: ValueStringList;
19206 /**
19207 * (Interface endpoint) One or more subnets in which the endpoint is located.
19208 */
19209 SubnetIds?: ValueStringList;
19210 /**
19211 * (Interface endpoint) Information about the security groups associated with the network interface.
19212 */
19213 Groups?: GroupIdentifierSet;
19214 /**
19215 * (Interface endpoint) Indicates whether the VPC is associated with a private hosted zone.
19216 */
19217 PrivateDnsEnabled?: Boolean;
19218 /**
19219 * (Interface endpoint) One or more network interfaces for the endpoint.
19220 */
19221 NetworkInterfaceIds?: ValueStringList;
19222 /**
19223 * (Interface endpoint) The DNS entries for the endpoint.
19224 */
19225 DnsEntries?: DnsEntrySet;
19226 /**
19227 * The date and time the VPC endpoint was created.
19228 */
19229 CreationTimestamp?: DateTime;
19230 }
19231 export interface VpcEndpointConnection {
19232 /**
19233 * The ID of the service to which the endpoint is connected.
19234 */
19235 ServiceId?: String;
19236 /**
19237 * The ID of the VPC endpoint.
19238 */
19239 VpcEndpointId?: String;
19240 /**
19241 * The AWS account ID of the owner of the VPC endpoint.
19242 */
19243 VpcEndpointOwner?: String;
19244 /**
19245 * The state of the VPC endpoint.
19246 */
19247 VpcEndpointState?: State;
19248 /**
19249 * The date and time the VPC endpoint was created.
19250 */
19251 CreationTimestamp?: DateTime;
19252 }
19253 export type VpcEndpointConnectionSet = VpcEndpointConnection[];
19254 export type VpcEndpointSet = VpcEndpoint[];
19255 export type VpcEndpointType = "Interface"|"Gateway"|string;
19256 export type VpcIdStringList = String[];
19257 export interface VpcIpv6CidrBlockAssociation {
19258 /**
19259 * The association ID for the IPv6 CIDR block.
19260 */
19261 AssociationId?: String;
19262 /**
19263 * The IPv6 CIDR block.
19264 */
19265 Ipv6CidrBlock?: String;
19266 /**
19267 * Information about the state of the CIDR block.
19268 */
19269 Ipv6CidrBlockState?: VpcCidrBlockState;
19270 }
19271 export type VpcIpv6CidrBlockAssociationSet = VpcIpv6CidrBlockAssociation[];
19272 export type VpcList = Vpc[];
19273 export interface VpcPeeringConnection {
19274 /**
19275 * Information about the accepter VPC. CIDR block information is only returned when describing an active VPC peering connection.
19276 */
19277 AccepterVpcInfo?: VpcPeeringConnectionVpcInfo;
19278 /**
19279 * The time that an unaccepted VPC peering connection will expire.
19280 */
19281 ExpirationTime?: DateTime;
19282 /**
19283 * Information about the requester VPC. CIDR block information is only returned when describing an active VPC peering connection.
19284 */
19285 RequesterVpcInfo?: VpcPeeringConnectionVpcInfo;
19286 /**
19287 * The status of the VPC peering connection.
19288 */
19289 Status?: VpcPeeringConnectionStateReason;
19290 /**
19291 * Any tags assigned to the resource.
19292 */
19293 Tags?: TagList;
19294 /**
19295 * The ID of the VPC peering connection.
19296 */
19297 VpcPeeringConnectionId?: String;
19298 }
19299 export type VpcPeeringConnectionList = VpcPeeringConnection[];
19300 export interface VpcPeeringConnectionOptionsDescription {
19301 /**
19302 * Indicates whether a local VPC can resolve public DNS hostnames to private IP addresses when queried from instances in a peer VPC.
19303 */
19304 AllowDnsResolutionFromRemoteVpc?: Boolean;
19305 /**
19306 * Indicates whether a local ClassicLink connection can communicate with the peer VPC over the VPC peering connection.
19307 */
19308 AllowEgressFromLocalClassicLinkToRemoteVpc?: Boolean;
19309 /**
19310 * Indicates whether a local VPC can communicate with a ClassicLink connection in the peer VPC over the VPC peering connection.
19311 */
19312 AllowEgressFromLocalVpcToRemoteClassicLink?: Boolean;
19313 }
19314 export interface VpcPeeringConnectionStateReason {
19315 /**
19316 * The status of the VPC peering connection.
19317 */
19318 Code?: VpcPeeringConnectionStateReasonCode;
19319 /**
19320 * A message that provides more information about the status, if applicable.
19321 */
19322 Message?: String;
19323 }
19324 export type VpcPeeringConnectionStateReasonCode = "initiating-request"|"pending-acceptance"|"active"|"deleted"|"rejected"|"failed"|"expired"|"provisioning"|"deleting"|string;
19325 export interface VpcPeeringConnectionVpcInfo {
19326 /**
19327 * The IPv4 CIDR block for the VPC.
19328 */
19329 CidrBlock?: String;
19330 /**
19331 * The IPv6 CIDR block for the VPC.
19332 */
19333 Ipv6CidrBlockSet?: Ipv6CidrBlockSet;
19334 /**
19335 * Information about the IPv4 CIDR blocks for the VPC.
19336 */
19337 CidrBlockSet?: CidrBlockSet;
19338 /**
19339 * The AWS account ID of the VPC owner.
19340 */
19341 OwnerId?: String;
19342 /**
19343 * Information about the VPC peering connection options for the accepter or requester VPC.
19344 */
19345 PeeringOptions?: VpcPeeringConnectionOptionsDescription;
19346 /**
19347 * The ID of the VPC.
19348 */
19349 VpcId?: String;
19350 /**
19351 * The region in which the VPC is located.
19352 */
19353 Region?: String;
19354 }
19355 export type VpcState = "pending"|"available"|string;
19356 export type VpcTenancy = "default"|string;
19357 export interface VpnConnection {
19358 /**
19359 * The configuration information for the VPN connection's customer gateway (in the native XML format). This element is always present in the CreateVpnConnection response; however, it's present in the DescribeVpnConnections response only if the VPN connection is in the pending or available state.
19360 */
19361 CustomerGatewayConfiguration?: String;
19362 /**
19363 * The ID of the customer gateway at your end of the VPN connection.
19364 */
19365 CustomerGatewayId?: String;
19366 /**
19367 * The category of the VPN connection. A value of VPN indicates an AWS VPN connection. A value of VPN-Classic indicates an AWS Classic VPN connection.
19368 */
19369 Category?: String;
19370 /**
19371 * The current state of the VPN connection.
19372 */
19373 State?: VpnState;
19374 /**
19375 * The type of VPN connection.
19376 */
19377 Type?: GatewayType;
19378 /**
19379 * The ID of the VPN connection.
19380 */
19381 VpnConnectionId?: String;
19382 /**
19383 * The ID of the virtual private gateway at the AWS side of the VPN connection.
19384 */
19385 VpnGatewayId?: String;
19386 /**
19387 * The ID of the transit gateway associated with the VPN connection.
19388 */
19389 TransitGatewayId?: String;
19390 /**
19391 * The VPN connection options.
19392 */
19393 Options?: VpnConnectionOptions;
19394 /**
19395 * The static routes associated with the VPN connection.
19396 */
19397 Routes?: VpnStaticRouteList;
19398 /**
19399 * Any tags assigned to the VPN connection.
19400 */
19401 Tags?: TagList;
19402 /**
19403 * Information about the VPN tunnel.
19404 */
19405 VgwTelemetry?: VgwTelemetryList;
19406 }
19407 export type VpnConnectionIdStringList = String[];
19408 export type VpnConnectionList = VpnConnection[];
19409 export interface VpnConnectionOptions {
19410 /**
19411 * Indicates whether the VPN connection uses static routes only. Static routes must be used for devices that don't support BGP.
19412 */
19413 StaticRoutesOnly?: Boolean;
19414 }
19415 export interface VpnConnectionOptionsSpecification {
19416 /**
19417 * Indicate whether the VPN connection uses static routes only. If you are creating a VPN connection for a device that does not support BGP, you must specify true. Use CreateVpnConnectionRoute to create a static route. Default: false
19418 */
19419 StaticRoutesOnly?: Boolean;
19420 /**
19421 * The tunnel options for the VPN connection.
19422 */
19423 TunnelOptions?: TunnelOptionsList;
19424 }
19425 export type VpnEcmpSupportValue = "enable"|"disable"|string;
19426 export interface VpnGateway {
19427 /**
19428 * The Availability Zone where the virtual private gateway was created, if applicable. This field may be empty or not returned.
19429 */
19430 AvailabilityZone?: String;
19431 /**
19432 * The current state of the virtual private gateway.
19433 */
19434 State?: VpnState;
19435 /**
19436 * The type of VPN connection the virtual private gateway supports.
19437 */
19438 Type?: GatewayType;
19439 /**
19440 * Any VPCs attached to the virtual private gateway.
19441 */
19442 VpcAttachments?: VpcAttachmentList;
19443 /**
19444 * The ID of the virtual private gateway.
19445 */
19446 VpnGatewayId?: String;
19447 /**
19448 * The private Autonomous System Number (ASN) for the Amazon side of a BGP session.
19449 */
19450 AmazonSideAsn?: Long;
19451 /**
19452 * Any tags assigned to the virtual private gateway.
19453 */
19454 Tags?: TagList;
19455 }
19456 export type VpnGatewayIdStringList = String[];
19457 export type VpnGatewayList = VpnGateway[];
19458 export type VpnProtocol = "openvpn"|string;
19459 export type VpnState = "pending"|"available"|"deleting"|"deleted"|string;
19460 export interface VpnStaticRoute {
19461 /**
19462 * The CIDR block associated with the local subnet of the customer data center.
19463 */
19464 DestinationCidrBlock?: String;
19465 /**
19466 * Indicates how the routes were provided.
19467 */
19468 Source?: VpnStaticRouteSource;
19469 /**
19470 * The current state of the static route.
19471 */
19472 State?: VpnState;
19473 }
19474 export type VpnStaticRouteList = VpnStaticRoute[];
19475 export type VpnStaticRouteSource = "Static"|string;
19476 export interface VpnTunnelOptionsSpecification {
19477 /**
19478 * The range of inside IP addresses for the tunnel. Any specified CIDR blocks must be unique across all VPN connections that use the same virtual private gateway. Constraints: A size /30 CIDR block from the 169.254.0.0/16 range. The following CIDR blocks are reserved and cannot be used: 169.254.0.0/30 169.254.1.0/30 169.254.2.0/30 169.254.3.0/30 169.254.4.0/30 169.254.5.0/30 169.254.169.252/30
19479 */
19480 TunnelInsideCidr?: String;
19481 /**
19482 * The pre-shared key (PSK) to establish initial authentication between the virtual private gateway and customer gateway. Constraints: Allowed characters are alphanumeric characters and ._. Must be between 8 and 64 characters in length and cannot start with zero (0).
19483 */
19484 PreSharedKey?: String;
19485 }
19486 export interface WithdrawByoipCidrRequest {
19487 /**
19488 * The public IPv4 address range, in CIDR notation.
19489 */
19490 Cidr: String;
19491 /**
19492 * 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 DryRunOperation. Otherwise, it is UnauthorizedOperation.
19493 */
19494 DryRun?: Boolean;
19495 }
19496 export interface WithdrawByoipCidrResult {
19497 /**
19498 * Information about the address pool.
19499 */
19500 ByoipCidr?: ByoipCidr;
19501 }
19502 export type ZoneIdStringList = String[];
19503 export type ZoneNameStringList = String[];
19504 export type scope = "Availability Zone"|"Region"|string;
19505 /**
19506 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
19507 */
19508 export type apiVersion = "2013-06-15"|"2013-10-15"|"2014-02-01"|"2014-05-01"|"2014-06-15"|"2014-09-01"|"2014-10-01"|"2015-03-01"|"2015-04-15"|"2015-10-01"|"2016-04-01"|"2016-09-15"|"2016-11-15"|"latest"|string;
19509 export interface ClientApiVersions {
19510 /**
19511 * A string in YYYY-MM-DD format that represents the latest possible API version that can be used in this service. Specify 'latest' to use the latest possible version.
19512 */
19513 apiVersion?: apiVersion;
19514 }
19515 export type ClientConfiguration = ServiceConfigurationOptions & ClientApiVersions;
19516 /**
19517 * Contains interfaces for use with the EC2 client.
19518 */
19519 export import Types = EC2;
19520}
19521export = EC2;